Skip to main content

Python routines dealing with Neuropixels data.

Project description

routines


Formal Definition of a "routine" -> a python function with the following properties:

  • short memorable name
  • computes a commonly used Variable from a raw dataset directory.
  • when called, looks for the Variable in dir/routinesMemory where dir is the directory of the dataset. If not found, the routine saves the variable after having computed it.

Python version has to be >=3.7 ot there will be imports issues!

Useful link to create a python package from a git repository

Installation:

Using a conda environment is very much advised. Instructions here: manage conda environments

  • from a local repository (recommended if plans to work on it/regularly pull upgrades)
$ conda activate env_name
$ cd path/to/save_dir # any directory where your code will be accessible by your editor and safe. NOT downloads folder.
$ git clone https://github.com/Npix-routines/NeuroPyxels
$ cd NeuroPyxels
$ python setup.py develop # this will create an egg link to save_dir, which means that you do not need to reinstall the package each time you pull an udpate from github.

  • from the remote repository (recommended for easy passive install)
$ conda activate env_name
$ pip install git+https://github.com/Npix-routines/NeuroPyxels@master

  • Now test that the installation works. If it doesn't, figure out which packages are missing from the error log.
$ conda activate env_name
$ python
>>> import npix # NO ERROR OMG THIS PACKAGE IS SO AWESOME

Pull remote updates (after Maxime's updates :)):

$ conda activate env_name
$ cd path/to/save_dir/NeuroPyxels
$ git pull
# And that's it, thanks to the egg link no need to reinstall the package!

Push local updates:

# DO NOT DO THAT WITHOUT CHECKING WITH MAXIME FIRST
# ONLY ON DEDICATED BRANCH CREATED WITH THE GITHUB BROWSER INTERFACE

$ cd path/to/save_dir/NeuroPyxels
$ git checkout DEDICATED_BRANCH_NAME # ++++++ IMPORTANT
$ git add.
$ git commit -m "commit details - try to be specific"
$ git push origin DEDICATED_BRANCH_NAME # ++++++ IMPORTANT

# Then pull request to master branch using the online github green button! Do not forget this last step, to allow the others repo to sync.

Push local updates to PyPI (only Maxime)

First change the version in ./setup.py in a text editor

setup(name='npyx',
      version='1.0',... # change to 1.1 or whatev

Then delete the old distribution files before re-generating them for the new version using twine:

rm -r ./dist
rm -r ./build
rm -r ./npyx.egg-info
python setup.py sdist bdist_wheel # this will generate version 1.1 wheel without overwriting version 1.0 wheel in ./dist

Before pushing them to PyPI (older versions are saved online!)

$ twine upload dist/*
Uploading distributions to https://upload.pypi.org/legacy/
Enter your username: your-username
Enter your password: 
Uploading npyx-1.1-py3-none-any.whl
100%|████████████████████████████████████████████████████████| 156k/156k [00:01<00:00, 96.8kB/s]
Uploading npyx-1.1.tar.gz
100%|█████████████████████████████████████████████████████████| 150k/150k [00:01<00:00, 142kB/s]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

npyx-1.21.tar.gz (148.4 kB view details)

Uploaded Source

Built Distribution

npyx-1.21-py3-none-any.whl (152.6 kB view details)

Uploaded Python 3

File details

Details for the file npyx-1.21.tar.gz.

File metadata

  • Download URL: npyx-1.21.tar.gz
  • Upload date:
  • Size: 148.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for npyx-1.21.tar.gz
Algorithm Hash digest
SHA256 f138a99ad7c3008c63c1125a58fd69e79481883208c521dcddde0a3806e613df
MD5 3e34f002e34975a5bc9e3925aba6801a
BLAKE2b-256 457dfc0e14d6a7b499211912aac9673842766fbc8067c98f83efd440f1504133

See more details on using hashes here.

File details

Details for the file npyx-1.21-py3-none-any.whl.

File metadata

  • Download URL: npyx-1.21-py3-none-any.whl
  • Upload date:
  • Size: 152.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for npyx-1.21-py3-none-any.whl
Algorithm Hash digest
SHA256 7431a9722f168f1cf3fdb72f1af0c8fbfd560ae6ed967cd9f745a6cf395d5ef6
MD5 3c7041265f69cf7dc052fb7e2d3dac68
BLAKE2b-256 1a71547092e901b6fb845ed445ac7108855204b96dcc9f1c3d6add5506eafc21

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page