brainglobe 0.2.0__tar.gz → 1.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {brainglobe-0.2.0 → brainglobe-1.5.0}/.github/workflows/test_and_deploy.yml +21 -5
- brainglobe-1.5.0/CITATION.cff +30 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/MANIFEST.in +1 -0
- brainglobe-1.5.0/PKG-INFO +92 -0
- brainglobe-1.5.0/README.md +46 -0
- brainglobe-1.5.0/brainglobe/__init__.py +7 -0
- brainglobe-1.5.0/brainglobe.egg-info/PKG-INFO +92 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/brainglobe.egg-info/SOURCES.txt +2 -4
- brainglobe-1.5.0/brainglobe.egg-info/requires.txt +22 -0
- brainglobe-1.5.0/pyproject.toml +112 -0
- brainglobe-0.2.0/PKG-INFO +0 -109
- brainglobe-0.2.0/README.md +0 -90
- brainglobe-0.2.0/brainglobe/__init__.py +0 -25
- brainglobe-0.2.0/brainglobe/_conda_handles.py +0 -16
- brainglobe-0.2.0/brainglobe.egg-info/PKG-INFO +0 -109
- brainglobe-0.2.0/brainglobe.egg-info/requires.txt +0 -24
- brainglobe-0.2.0/pyproject.toml +0 -93
- brainglobe-0.2.0/tests/test_unit/test_tool_exposure.py +0 -57
- brainglobe-0.2.0/tox.ini +0 -15
- {brainglobe-0.2.0 → brainglobe-1.5.0}/.gitignore +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/LICENSE +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/brainglobe.egg-info/dependency_links.txt +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/brainglobe.egg-info/top_level.txt +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/setup.cfg +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/tests/__init__.py +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/tests/test_integration/__init__.py +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/tests/test_unit/__init__.py +0 -0
- {brainglobe-0.2.0 → brainglobe-1.5.0}/tests/test_unit/test__version__.py +0 -0
|
@@ -9,6 +9,9 @@ on:
|
|
|
9
9
|
- 'v**'
|
|
10
10
|
# Run on all pull-requests
|
|
11
11
|
pull_request:
|
|
12
|
+
schedule:
|
|
13
|
+
# Runs at 6:10am UTC on Monday
|
|
14
|
+
- cron: '10 6 * * 1'
|
|
12
15
|
# Allow workflow dispatch from GitHub
|
|
13
16
|
workflow_dispatch:
|
|
14
17
|
|
|
@@ -38,20 +41,32 @@ jobs:
|
|
|
38
41
|
strategy:
|
|
39
42
|
matrix:
|
|
40
43
|
# Run all supported Python versions on linux
|
|
41
|
-
python-version: ["3.
|
|
44
|
+
python-version: ["3.11", "3.12", "3.13"]
|
|
42
45
|
os: [ubuntu-latest]
|
|
43
46
|
# Include one windows and macos run
|
|
44
47
|
include:
|
|
45
48
|
- os: macos-latest
|
|
46
|
-
python-version: "3.
|
|
49
|
+
python-version: "3.13"
|
|
47
50
|
- os: windows-latest
|
|
48
|
-
python-version: "3.
|
|
51
|
+
python-version: "3.13"
|
|
49
52
|
|
|
50
53
|
steps:
|
|
51
54
|
# Run tests
|
|
55
|
+
- name: install HDF5 libs on ARM Mac
|
|
56
|
+
if: matrix.os == 'macos-latest'
|
|
57
|
+
run: brew install hdf5
|
|
52
58
|
- uses: neuroinformatics-unit/actions/test@v2
|
|
53
59
|
with:
|
|
54
60
|
python-version: ${{ matrix.python-version }}
|
|
61
|
+
secret-codecov-token: ${{ secrets.CODECOV_TOKEN }}
|
|
62
|
+
# Run tests on napari main if this is a scheduled run
|
|
63
|
+
- name: Run tests on napari main
|
|
64
|
+
if: github.event_name == 'schedule'
|
|
65
|
+
uses: neuroinformatics-unit/actions/test@v2
|
|
66
|
+
with:
|
|
67
|
+
python-version: ${{ matrix.python-version }}
|
|
68
|
+
secret-codecov-token: ${{ secrets.CODECOV_TOKEN }}
|
|
69
|
+
tox-args: '-e napari-dev'
|
|
55
70
|
|
|
56
71
|
build_sdist_wheels:
|
|
57
72
|
name: Build source distribution
|
|
@@ -65,13 +80,14 @@ jobs:
|
|
|
65
80
|
upload_all:
|
|
66
81
|
name: Publish build distributions
|
|
67
82
|
needs: [build_sdist_wheels]
|
|
83
|
+
if: github.event_name == 'push' && github.ref_type == 'tag'
|
|
68
84
|
runs-on: ubuntu-latest
|
|
69
85
|
steps:
|
|
70
|
-
- uses: actions/download-artifact@
|
|
86
|
+
- uses: actions/download-artifact@v4
|
|
71
87
|
with:
|
|
72
88
|
name: artifact
|
|
73
89
|
path: dist
|
|
74
|
-
- uses: pypa/gh-action-pypi-publish@v1
|
|
90
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
75
91
|
with:
|
|
76
92
|
user: __token__
|
|
77
93
|
password: ${{ secrets.TWINE_API_KEY }}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# This CITATION.cff file was generated with cffinit.
|
|
2
|
+
# Visit https://bit.ly/cffinit to generate yours today!
|
|
3
|
+
|
|
4
|
+
cff-version: 1.2.0
|
|
5
|
+
title: BrainGlobe
|
|
6
|
+
message: >-
|
|
7
|
+
You can use the brainglobe.cite() function to generate
|
|
8
|
+
citations for the BrainGlobe tools you use in your
|
|
9
|
+
research.
|
|
10
|
+
type: software
|
|
11
|
+
authors:
|
|
12
|
+
- given-names: BrainGlobe
|
|
13
|
+
family-names: Developers
|
|
14
|
+
affiliation: 'Sainsbury Wellcome Centre, University College London'
|
|
15
|
+
email: hello@brainglobe.info
|
|
16
|
+
- given-names: Wiliam Michael
|
|
17
|
+
family-names: Graham
|
|
18
|
+
email: william.graham@ucl.ac.uk
|
|
19
|
+
affiliation: 'Advanced Research Computing, University College London'
|
|
20
|
+
orcid: 'https://orcid.org/0000-0003-0058-263X'
|
|
21
|
+
repository-code: 'https://github.com/brainglobe/brainglobe-meta'
|
|
22
|
+
url: 'https://brainglobe.info/'
|
|
23
|
+
abstract: >-
|
|
24
|
+
The BrainGlobe Initiative exists to facilitate the
|
|
25
|
+
development of interoperable Python-based tools for
|
|
26
|
+
computational neuroanatomy.
|
|
27
|
+
license: BSD-3-Clause
|
|
28
|
+
citation-sentence: >-
|
|
29
|
+
'This project makes use of the BrainGlobe tool-suite, https://brainglobe.info/'
|
|
30
|
+
year: 2024
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: brainglobe
|
|
3
|
+
Version: 1.5.0
|
|
4
|
+
Summary: Python-based tools for computational neuroanatomy.
|
|
5
|
+
Author-email: BrainGlobe Developers <hello@brainglobe.info>
|
|
6
|
+
License: BSD-3-Clause
|
|
7
|
+
Project-URL: homepage, https://brainglobe.info
|
|
8
|
+
Project-URL: bug_tracker, https://github.com/brainglobe/brainglobe-meta/issues
|
|
9
|
+
Project-URL: documentation, https://docs.brainglobe.info
|
|
10
|
+
Project-URL: source_code, https://github.com/brainglobe/brainglobe-meta
|
|
11
|
+
Project-URL: user_support, https://forum.image.sc/tag/brainglobe
|
|
12
|
+
Project-URL: twitter, https://twitter.com/brain_globe
|
|
13
|
+
Classifier: Development Status :: 2 - Pre-Alpha
|
|
14
|
+
Classifier: Programming Language :: Python
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
19
|
+
Classifier: Operating System :: OS Independent
|
|
20
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
21
|
+
Requires-Python: >=3.11.0
|
|
22
|
+
Description-Content-Type: text/markdown
|
|
23
|
+
License-File: LICENSE
|
|
24
|
+
Requires-Dist: brainglobe-atlasapi<3,>=2.2.0
|
|
25
|
+
Requires-Dist: brainglobe-heatmap<1,>=0.5.5
|
|
26
|
+
Requires-Dist: brainglobe-napari-io<1,>=0.3.4
|
|
27
|
+
Requires-Dist: brainglobe-segmentation<2,>=1.3.1
|
|
28
|
+
Requires-Dist: brainglobe-space<2,>=1.0.3
|
|
29
|
+
Requires-Dist: brainglobe-utils<1,>=0.11.0
|
|
30
|
+
Requires-Dist: brainreg[napari]<2,>=1.0.11
|
|
31
|
+
Requires-Dist: brainrender-napari<1,>=0.0.7
|
|
32
|
+
Requires-Dist: brainrender<3,>=2.1.17
|
|
33
|
+
Requires-Dist: cellfinder[napari]<2,>=1.9.0
|
|
34
|
+
Requires-Dist: napari[all]>=0.6.1
|
|
35
|
+
Provides-Extra: dev
|
|
36
|
+
Requires-Dist: pytest; extra == "dev"
|
|
37
|
+
Requires-Dist: pytest-cov; extra == "dev"
|
|
38
|
+
Requires-Dist: coverage; extra == "dev"
|
|
39
|
+
Requires-Dist: tox; extra == "dev"
|
|
40
|
+
Requires-Dist: black; extra == "dev"
|
|
41
|
+
Requires-Dist: mypy; extra == "dev"
|
|
42
|
+
Requires-Dist: pre-commit; extra == "dev"
|
|
43
|
+
Requires-Dist: ruff; extra == "dev"
|
|
44
|
+
Requires-Dist: setuptools_scm; extra == "dev"
|
|
45
|
+
Dynamic: license-file
|
|
46
|
+
|
|
47
|
+
[](https://badge.fury.io/py/brainglobe)
|
|
48
|
+
[](https://brainglobe.info)
|
|
49
|
+
|
|
50
|
+
[](https://brainglobe.info)
|
|
51
|
+
|
|
52
|
+
# BrainGlobe
|
|
53
|
+
|
|
54
|
+
This package provides all [BrainGlobe](https://brainglobe.info) tools in one place, installable [in a single command](#installing-and-updating).
|
|
55
|
+
Installing this package will provide you with the complete suite of BrainGlobe tools, without needing to worry about dependency resolution.
|
|
56
|
+
A complete list of the tools provided by this package [is provided on our website](https://brainglobe.info/documentation/index.html#individual-tool-documentation), and you can also read more about these tools there too.
|
|
57
|
+
|
|
58
|
+
If you are interested in running some of our analysis workflows, you might want to head over to [`brainglobe-workflows`](https://github.com/brainglobe/brainglobe-workflows) and install the analysis pipelines offered by that package too.
|
|
59
|
+
|
|
60
|
+
## Installing and Updating
|
|
61
|
+
|
|
62
|
+
See the [installation instructions over on the BrainGlobe website](https://brainglobe.info/documentation/index.html#installing-brainglobe) for full information.
|
|
63
|
+
But the TLDR is;
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
pip install brainglobe
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
and to update,
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
pip install brainglobe --update
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Seeking help or contributing
|
|
76
|
+
We are always happy to help users of our tools, and welcome any contributions. If you would like to get in contact with us for any reason, please see the [contact page of our website](https://brainglobe.info/contact.html).
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
# The Brainglobe Initiative
|
|
81
|
+
|
|
82
|
+
The BrainGlobe Initiative exists to facilitate the development of interoperable Python-based tools for computational neuroanatomy.
|
|
83
|
+
|
|
84
|
+
We have three aims:
|
|
85
|
+
|
|
86
|
+
- Develop specialist software for specific analysis and visualisation needs, such as [cellfinder](https://github.com/brainglobe/cellfinder) and [brainrender](https://github.com/brainglobe/brainrender).
|
|
87
|
+
- Develop core tools to facilitate others to build interoperable tools in Python, e.g. the [BrainGlobe Atlas API](https://github.com/brainglobe/bg-atlasapi).
|
|
88
|
+
- Build a community of neuroscientists and developers to share knowledge, build software and engage with the scientific, and open-source community (e.g. by organising hackathons).
|
|
89
|
+
|
|
90
|
+
## [Funding](https://brainglobe.info/funders.html#funders) Information
|
|
91
|
+
|
|
92
|
+
The BrainGlobe project is only possible due to grant funding and the generous support of host institutions, whose information [can be found on this website](https://brainglobe.info/funders.html#funders).
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
[](https://badge.fury.io/py/brainglobe)
|
|
2
|
+
[](https://brainglobe.info)
|
|
3
|
+
|
|
4
|
+
[](https://brainglobe.info)
|
|
5
|
+
|
|
6
|
+
# BrainGlobe
|
|
7
|
+
|
|
8
|
+
This package provides all [BrainGlobe](https://brainglobe.info) tools in one place, installable [in a single command](#installing-and-updating).
|
|
9
|
+
Installing this package will provide you with the complete suite of BrainGlobe tools, without needing to worry about dependency resolution.
|
|
10
|
+
A complete list of the tools provided by this package [is provided on our website](https://brainglobe.info/documentation/index.html#individual-tool-documentation), and you can also read more about these tools there too.
|
|
11
|
+
|
|
12
|
+
If you are interested in running some of our analysis workflows, you might want to head over to [`brainglobe-workflows`](https://github.com/brainglobe/brainglobe-workflows) and install the analysis pipelines offered by that package too.
|
|
13
|
+
|
|
14
|
+
## Installing and Updating
|
|
15
|
+
|
|
16
|
+
See the [installation instructions over on the BrainGlobe website](https://brainglobe.info/documentation/index.html#installing-brainglobe) for full information.
|
|
17
|
+
But the TLDR is;
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
pip install brainglobe
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
and to update,
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
pip install brainglobe --update
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Seeking help or contributing
|
|
30
|
+
We are always happy to help users of our tools, and welcome any contributions. If you would like to get in contact with us for any reason, please see the [contact page of our website](https://brainglobe.info/contact.html).
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
# The Brainglobe Initiative
|
|
35
|
+
|
|
36
|
+
The BrainGlobe Initiative exists to facilitate the development of interoperable Python-based tools for computational neuroanatomy.
|
|
37
|
+
|
|
38
|
+
We have three aims:
|
|
39
|
+
|
|
40
|
+
- Develop specialist software for specific analysis and visualisation needs, such as [cellfinder](https://github.com/brainglobe/cellfinder) and [brainrender](https://github.com/brainglobe/brainrender).
|
|
41
|
+
- Develop core tools to facilitate others to build interoperable tools in Python, e.g. the [BrainGlobe Atlas API](https://github.com/brainglobe/bg-atlasapi).
|
|
42
|
+
- Build a community of neuroscientists and developers to share knowledge, build software and engage with the scientific, and open-source community (e.g. by organising hackathons).
|
|
43
|
+
|
|
44
|
+
## [Funding](https://brainglobe.info/funders.html#funders) Information
|
|
45
|
+
|
|
46
|
+
The BrainGlobe project is only possible due to grant funding and the generous support of host institutions, whose information [can be found on this website](https://brainglobe.info/funders.html#funders).
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: brainglobe
|
|
3
|
+
Version: 1.5.0
|
|
4
|
+
Summary: Python-based tools for computational neuroanatomy.
|
|
5
|
+
Author-email: BrainGlobe Developers <hello@brainglobe.info>
|
|
6
|
+
License: BSD-3-Clause
|
|
7
|
+
Project-URL: homepage, https://brainglobe.info
|
|
8
|
+
Project-URL: bug_tracker, https://github.com/brainglobe/brainglobe-meta/issues
|
|
9
|
+
Project-URL: documentation, https://docs.brainglobe.info
|
|
10
|
+
Project-URL: source_code, https://github.com/brainglobe/brainglobe-meta
|
|
11
|
+
Project-URL: user_support, https://forum.image.sc/tag/brainglobe
|
|
12
|
+
Project-URL: twitter, https://twitter.com/brain_globe
|
|
13
|
+
Classifier: Development Status :: 2 - Pre-Alpha
|
|
14
|
+
Classifier: Programming Language :: Python
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
19
|
+
Classifier: Operating System :: OS Independent
|
|
20
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
21
|
+
Requires-Python: >=3.11.0
|
|
22
|
+
Description-Content-Type: text/markdown
|
|
23
|
+
License-File: LICENSE
|
|
24
|
+
Requires-Dist: brainglobe-atlasapi<3,>=2.2.0
|
|
25
|
+
Requires-Dist: brainglobe-heatmap<1,>=0.5.5
|
|
26
|
+
Requires-Dist: brainglobe-napari-io<1,>=0.3.4
|
|
27
|
+
Requires-Dist: brainglobe-segmentation<2,>=1.3.1
|
|
28
|
+
Requires-Dist: brainglobe-space<2,>=1.0.3
|
|
29
|
+
Requires-Dist: brainglobe-utils<1,>=0.11.0
|
|
30
|
+
Requires-Dist: brainreg[napari]<2,>=1.0.11
|
|
31
|
+
Requires-Dist: brainrender-napari<1,>=0.0.7
|
|
32
|
+
Requires-Dist: brainrender<3,>=2.1.17
|
|
33
|
+
Requires-Dist: cellfinder[napari]<2,>=1.9.0
|
|
34
|
+
Requires-Dist: napari[all]>=0.6.1
|
|
35
|
+
Provides-Extra: dev
|
|
36
|
+
Requires-Dist: pytest; extra == "dev"
|
|
37
|
+
Requires-Dist: pytest-cov; extra == "dev"
|
|
38
|
+
Requires-Dist: coverage; extra == "dev"
|
|
39
|
+
Requires-Dist: tox; extra == "dev"
|
|
40
|
+
Requires-Dist: black; extra == "dev"
|
|
41
|
+
Requires-Dist: mypy; extra == "dev"
|
|
42
|
+
Requires-Dist: pre-commit; extra == "dev"
|
|
43
|
+
Requires-Dist: ruff; extra == "dev"
|
|
44
|
+
Requires-Dist: setuptools_scm; extra == "dev"
|
|
45
|
+
Dynamic: license-file
|
|
46
|
+
|
|
47
|
+
[](https://badge.fury.io/py/brainglobe)
|
|
48
|
+
[](https://brainglobe.info)
|
|
49
|
+
|
|
50
|
+
[](https://brainglobe.info)
|
|
51
|
+
|
|
52
|
+
# BrainGlobe
|
|
53
|
+
|
|
54
|
+
This package provides all [BrainGlobe](https://brainglobe.info) tools in one place, installable [in a single command](#installing-and-updating).
|
|
55
|
+
Installing this package will provide you with the complete suite of BrainGlobe tools, without needing to worry about dependency resolution.
|
|
56
|
+
A complete list of the tools provided by this package [is provided on our website](https://brainglobe.info/documentation/index.html#individual-tool-documentation), and you can also read more about these tools there too.
|
|
57
|
+
|
|
58
|
+
If you are interested in running some of our analysis workflows, you might want to head over to [`brainglobe-workflows`](https://github.com/brainglobe/brainglobe-workflows) and install the analysis pipelines offered by that package too.
|
|
59
|
+
|
|
60
|
+
## Installing and Updating
|
|
61
|
+
|
|
62
|
+
See the [installation instructions over on the BrainGlobe website](https://brainglobe.info/documentation/index.html#installing-brainglobe) for full information.
|
|
63
|
+
But the TLDR is;
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
pip install brainglobe
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
and to update,
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
pip install brainglobe --update
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Seeking help or contributing
|
|
76
|
+
We are always happy to help users of our tools, and welcome any contributions. If you would like to get in contact with us for any reason, please see the [contact page of our website](https://brainglobe.info/contact.html).
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
# The Brainglobe Initiative
|
|
81
|
+
|
|
82
|
+
The BrainGlobe Initiative exists to facilitate the development of interoperable Python-based tools for computational neuroanatomy.
|
|
83
|
+
|
|
84
|
+
We have three aims:
|
|
85
|
+
|
|
86
|
+
- Develop specialist software for specific analysis and visualisation needs, such as [cellfinder](https://github.com/brainglobe/cellfinder) and [brainrender](https://github.com/brainglobe/brainrender).
|
|
87
|
+
- Develop core tools to facilitate others to build interoperable tools in Python, e.g. the [BrainGlobe Atlas API](https://github.com/brainglobe/bg-atlasapi).
|
|
88
|
+
- Build a community of neuroscientists and developers to share knowledge, build software and engage with the scientific, and open-source community (e.g. by organising hackathons).
|
|
89
|
+
|
|
90
|
+
## [Funding](https://brainglobe.info/funders.html#funders) Information
|
|
91
|
+
|
|
92
|
+
The BrainGlobe project is only possible due to grant funding and the generous support of host institutions, whose information [can be found on this website](https://brainglobe.info/funders.html#funders).
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
.gitignore
|
|
2
|
+
CITATION.cff
|
|
2
3
|
LICENSE
|
|
3
4
|
MANIFEST.in
|
|
4
5
|
README.md
|
|
5
6
|
pyproject.toml
|
|
6
|
-
tox.ini
|
|
7
7
|
.github/workflows/test_and_deploy.yml
|
|
8
8
|
brainglobe/__init__.py
|
|
9
|
-
brainglobe/_conda_handles.py
|
|
10
9
|
brainglobe.egg-info/PKG-INFO
|
|
11
10
|
brainglobe.egg-info/SOURCES.txt
|
|
12
11
|
brainglobe.egg-info/dependency_links.txt
|
|
@@ -15,5 +14,4 @@ brainglobe.egg-info/top_level.txt
|
|
|
15
14
|
tests/__init__.py
|
|
16
15
|
tests/test_integration/__init__.py
|
|
17
16
|
tests/test_unit/__init__.py
|
|
18
|
-
tests/test_unit/test__version__.py
|
|
19
|
-
tests/test_unit/test_tool_exposure.py
|
|
17
|
+
tests/test_unit/test__version__.py
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
brainglobe-atlasapi<3,>=2.2.0
|
|
2
|
+
brainglobe-heatmap<1,>=0.5.5
|
|
3
|
+
brainglobe-napari-io<1,>=0.3.4
|
|
4
|
+
brainglobe-segmentation<2,>=1.3.1
|
|
5
|
+
brainglobe-space<2,>=1.0.3
|
|
6
|
+
brainglobe-utils<1,>=0.11.0
|
|
7
|
+
brainreg[napari]<2,>=1.0.11
|
|
8
|
+
brainrender-napari<1,>=0.0.7
|
|
9
|
+
brainrender<3,>=2.1.17
|
|
10
|
+
cellfinder[napari]<2,>=1.9.0
|
|
11
|
+
napari[all]>=0.6.1
|
|
12
|
+
|
|
13
|
+
[dev]
|
|
14
|
+
pytest
|
|
15
|
+
pytest-cov
|
|
16
|
+
coverage
|
|
17
|
+
tox
|
|
18
|
+
black
|
|
19
|
+
mypy
|
|
20
|
+
pre-commit
|
|
21
|
+
ruff
|
|
22
|
+
setuptools_scm
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "brainglobe"
|
|
3
|
+
authors = [{ name = "BrainGlobe Developers", email = "hello@brainglobe.info" }]
|
|
4
|
+
description = "Python-based tools for computational neuroanatomy."
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
requires-python = ">=3.11.0"
|
|
7
|
+
dynamic = ["version"]
|
|
8
|
+
|
|
9
|
+
license = { text = "BSD-3-Clause" }
|
|
10
|
+
|
|
11
|
+
classifiers = [
|
|
12
|
+
"Development Status :: 2 - Pre-Alpha",
|
|
13
|
+
"Programming Language :: Python",
|
|
14
|
+
"Programming Language :: Python :: 3",
|
|
15
|
+
"Programming Language :: Python :: 3.11",
|
|
16
|
+
"Programming Language :: Python :: 3.12",
|
|
17
|
+
"Programming Language :: Python :: 3.13",
|
|
18
|
+
"Operating System :: OS Independent",
|
|
19
|
+
"License :: OSI Approved :: BSD License",
|
|
20
|
+
]
|
|
21
|
+
|
|
22
|
+
dependencies = [
|
|
23
|
+
"brainglobe-atlasapi>=2.2.0,<3",
|
|
24
|
+
"brainglobe-heatmap>=0.5.5,<1",
|
|
25
|
+
"brainglobe-napari-io>=0.3.4,<1",
|
|
26
|
+
"brainglobe-segmentation>=1.3.1,<2",
|
|
27
|
+
"brainglobe-space>=1.0.3,<2",
|
|
28
|
+
"brainglobe-utils>=0.11.0,<1",
|
|
29
|
+
"brainreg[napari]>=1.0.11,<2",
|
|
30
|
+
"brainrender-napari>=0.0.7,<1",
|
|
31
|
+
"brainrender>=2.1.17,<3",
|
|
32
|
+
"cellfinder[napari]>=1.9.0,<2",
|
|
33
|
+
"napari[all]>=0.6.1",
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
[project.optional-dependencies]
|
|
37
|
+
dev = [
|
|
38
|
+
"pytest",
|
|
39
|
+
"pytest-cov",
|
|
40
|
+
"coverage",
|
|
41
|
+
"tox",
|
|
42
|
+
"black",
|
|
43
|
+
"mypy",
|
|
44
|
+
"pre-commit",
|
|
45
|
+
"ruff",
|
|
46
|
+
"setuptools_scm",
|
|
47
|
+
]
|
|
48
|
+
|
|
49
|
+
[project.urls]
|
|
50
|
+
homepage = "https://brainglobe.info"
|
|
51
|
+
bug_tracker = "https://github.com/brainglobe/brainglobe-meta/issues"
|
|
52
|
+
documentation = "https://docs.brainglobe.info"
|
|
53
|
+
source_code = "https://github.com/brainglobe/brainglobe-meta"
|
|
54
|
+
user_support = "https://forum.image.sc/tag/brainglobe"
|
|
55
|
+
twitter = "https://twitter.com/brain_globe"
|
|
56
|
+
|
|
57
|
+
[build-system]
|
|
58
|
+
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2"]
|
|
59
|
+
build-backend = "setuptools.build_meta"
|
|
60
|
+
|
|
61
|
+
[tool.setuptools]
|
|
62
|
+
include-package-data = true
|
|
63
|
+
|
|
64
|
+
[tool.setuptools.packages.find]
|
|
65
|
+
include = ["brainglobe*"]
|
|
66
|
+
exclude = ["tests*"]
|
|
67
|
+
|
|
68
|
+
[tool.pytest.ini_options]
|
|
69
|
+
addopts = "--cov=brainglobe"
|
|
70
|
+
|
|
71
|
+
[tool.black]
|
|
72
|
+
target-version = ['py311', 'py312', 'py313']
|
|
73
|
+
skip-string-normalization = false
|
|
74
|
+
line-length = 79
|
|
75
|
+
|
|
76
|
+
[tool.setuptools_scm]
|
|
77
|
+
|
|
78
|
+
[tool.check-manifest]
|
|
79
|
+
ignore = [
|
|
80
|
+
".yaml",
|
|
81
|
+
"tox.ini",
|
|
82
|
+
"tests/",
|
|
83
|
+
"tests/test_unit/",
|
|
84
|
+
"tests/test_integration/",
|
|
85
|
+
]
|
|
86
|
+
|
|
87
|
+
[tool.ruff]
|
|
88
|
+
line-length = 79
|
|
89
|
+
exclude = ["__init__.py", "build", ".eggs"]
|
|
90
|
+
select = ["I", "E", "F"]
|
|
91
|
+
fix = true
|
|
92
|
+
|
|
93
|
+
[tool.tox]
|
|
94
|
+
legacy_tox_ini = """
|
|
95
|
+
[tox]
|
|
96
|
+
envlist = py{311,312,313}, napari-dev
|
|
97
|
+
isolated_build = True
|
|
98
|
+
|
|
99
|
+
[gh-actions]
|
|
100
|
+
python =
|
|
101
|
+
3.11: py311
|
|
102
|
+
3.12: py312
|
|
103
|
+
3.13: py313
|
|
104
|
+
|
|
105
|
+
[testenv]
|
|
106
|
+
extras =
|
|
107
|
+
dev
|
|
108
|
+
commands =
|
|
109
|
+
pytest -v --color=yes --cov=brainglobe --cov-report=xml
|
|
110
|
+
deps =
|
|
111
|
+
napari-dev: git+https://github.com/napari/napari
|
|
112
|
+
"""
|
brainglobe-0.2.0/PKG-INFO
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: brainglobe
|
|
3
|
-
Version: 0.2.0
|
|
4
|
-
Summary: Python-based tools for computational neuroanatomy.
|
|
5
|
-
Author-email: BrainGlobe <code@adamltyson.com>
|
|
6
|
-
License: BSD-3-Clause
|
|
7
|
-
Classifier: Development Status :: 2 - Pre-Alpha
|
|
8
|
-
Classifier: Programming Language :: Python
|
|
9
|
-
Classifier: Programming Language :: Python :: 3
|
|
10
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
13
|
-
Classifier: Operating System :: OS Independent
|
|
14
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
15
|
-
Requires-Python: >=3.8.0
|
|
16
|
-
Description-Content-Type: text/markdown
|
|
17
|
-
Provides-Extra: dev
|
|
18
|
-
License-File: LICENSE
|
|
19
|
-
|
|
20
|
-
[](https://badge.fury.io/py/brainglobe)
|
|
21
|
-
[](https://brainglobe.info)
|
|
22
|
-
[](https://twitter.com/brain_globe)
|
|
23
|
-
|
|
24
|
-
# brainglobe
|
|
25
|
-
|
|
26
|
-
The BrainGlobe Initiative exists to facilitate the development of interoperable
|
|
27
|
-
Python-based tools for computational neuroanatomy.
|
|
28
|
-
|
|
29
|
-
We have three aims:
|
|
30
|
-
|
|
31
|
-
- Develop specialist software for specific analysis and visualisation needs,
|
|
32
|
-
such as [cellfinder](https://github.com/brainglobe/cellfinder) and
|
|
33
|
-
[brainrender](https://github.com/brainglobe/brainrender).
|
|
34
|
-
|
|
35
|
-
- Develop core tools to facilitate others to build interoperable tools in Python, e.g. the
|
|
36
|
-
[BrainGlobe Atlas API](https://github.com/brainglobe/bg-atlasapi).
|
|
37
|
-
|
|
38
|
-
- Build a community of neuroscientists and developers to share knowledge, build software and engage
|
|
39
|
-
with the scientific, and open-source community (e.g. by organising hackathons).
|
|
40
|
-
|
|
41
|
-
### [**Funding**](https://brainglobe.info/funders.html#funders) Information
|
|
42
|
-
|
|
43
|
-
The BrainGlobe project is only possible due to grant funding and the generous support of host institutions, whose information [can be found on this website](https://brainglobe.info/funders.html#funders).
|
|
44
|
-
|
|
45
|
-
---
|
|
46
|
-
|
|
47
|
-
## BrainGlobe tools
|
|
48
|
-
|
|
49
|
-
This package provides all BrainGlobe tools in one place, requested [through a single command](#installation).
|
|
50
|
-
|
|
51
|
-
You can read more about the individual tools on the [documentation website](https://brainglobe.info/documentation/index.html).
|
|
52
|
-
Currently included packages, and whether they come with the `pip` and `conda-forge` installs are listed below:
|
|
53
|
-
| Package | `pip` | `conda` | `from brainglobe import` | Documentation |
|
|
54
|
-
| :------------------: | :------: | :------: | :----------------------: | :-----------------------------------------------------------------------: |
|
|
55
|
-
| BrainGlobe Atlas API | ☑ | ☑ | `bg_atlasapi` | [Site](https://brainglobe.info/documentation/bg-atlasapi/index.html) |
|
|
56
|
-
| `bg-space` | ☑ | ☑ | `bg-space` | [Site](https://brainglobe.info/documentation/bg-space/index.html) |
|
|
57
|
-
| `brainreg` | ☑ | ☑ | `brainreg` | [Site](https://brainglobe.info/documentation/brainreg/index.html) |
|
|
58
|
-
| `brainreg-segment` | ☑ | ☑ | `brainreg_segment` | [Site](https://brainglobe.info/documentation/brainreg-segment/index.html) |
|
|
59
|
-
| `brainrender` | | | | [Site](https://brainglobe.info/documentation/brainrender/index.html) |
|
|
60
|
-
| `cellfinder` | ☑ | Pending | `cellfinder_core` | [Site](https://brainglobe.info/documentation/cellfinder/index.html) |
|
|
61
|
-
| `morphapi` | ☑ | Pending | `morphapi` | [Site](https://brainglobe.info/documentation/morphapi/index.html) |
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## Installation
|
|
66
|
-
|
|
67
|
-
We recommend users install into a fresh virtual environment using `pip`; since this will resolve all complex dependencies (like `tensorflow`) automatically, across all operating systems and (compatible) Python versions.
|
|
68
|
-
|
|
69
|
-
### **Recommended**: via `pip`
|
|
70
|
-
The `brainglobe` package can be installed from [PyPI](https://pypi.org/project/brainglobe/) into a Python environment by running
|
|
71
|
-
```sh
|
|
72
|
-
pip install brainglobe
|
|
73
|
-
```
|
|
74
|
-
This will fetch and install all `brainglobe` packages and tools into your current environment.
|
|
75
|
-
Alternatively, you can download the source from [PyPI here](https://pypi.org/project/brainglobe/#files).
|
|
76
|
-
|
|
77
|
-
### **Alternatives**: via `conda`
|
|
78
|
-
We are currently in the process of making BrainGlobe's tools available from `conda-forge` as an alternative to `PyPI`.
|
|
79
|
-
However certain tools are currently not available on `conda-forge`, specifically:
|
|
80
|
-
- `brainrender` (in progress)
|
|
81
|
-
- `morphapi` (in progress)
|
|
82
|
-
- `cellfinder` ([see below](#cellfinder-and-conda-forge))
|
|
83
|
-
|
|
84
|
-
In your desired virtual environment, run
|
|
85
|
-
```sh
|
|
86
|
-
conda install -c conda-forge brainglobe
|
|
87
|
-
```
|
|
88
|
-
to install the compatible BrainGlobe tools.
|
|
89
|
-
This will install all BrainGlobe tools that are compatible with your platform and which are currently available via `conda-forge`.
|
|
90
|
-
|
|
91
|
-
#### **`cellfinder` and `conda-forge`**
|
|
92
|
-
|
|
93
|
-
Choosing to install via `conda` will provide the (source code for the) `cellfinder` tool.
|
|
94
|
-
However due to an ongoing issue with `tensorflow`'s availability on `conda-forge`, the install _will not_ provide `tensorflow` itself.
|
|
95
|
-
This is because `tensorflow` versions newer than `1.14.0` are not provided via `conda` channels, and `cellfinder-core` (one of the brainglobe tools) requires a version between `2.5.0` and `2.11.1`.
|
|
96
|
-
See [this issue on GitHub for more details](https://github.com/conda-forge/cellfinder-core-feedstock/issues/13).
|
|
97
|
-
Users that want to run `cellfinder` will need to manually install a compatible version of `tensorflow` into their environment, before running the `conda install` command above.
|
|
98
|
-
- Windows users will _have_ to manually install their own version of `tensorflow` if they want to use the `conda-forge` install and the `cellfinder` tools.
|
|
99
|
-
- `conda-forge` _may_ be able to resolve the dependencies automatically for Linux and MacOS users, however we do not guarantee this. In such a case, a manual install of `tensorflow` will be required first.
|
|
100
|
-
|
|
101
|
-
If using the `conda-forge` install; attempting to `import` any of `cellfinder`, `cellfinder-napari`, or `cellfinder-core` in your Python scripts may throw an error if the issues above cannot be resolved on your platform.
|
|
102
|
-
Similarly, attempting to use `cellfinder`'s CLI functionality will also raise an error.
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## Contributing
|
|
107
|
-
|
|
108
|
-
**Contributors to BrainGlobe are absolutely encouraged**, whether to fix a bug, develop a new feature, or add a new atlas.
|
|
109
|
-
If you would like to contribute, please take a look at our [developer documentation](https://brainglobe.info/developers/index.html).
|
brainglobe-0.2.0/README.md
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
[](https://badge.fury.io/py/brainglobe)
|
|
2
|
-
[](https://brainglobe.info)
|
|
3
|
-
[](https://twitter.com/brain_globe)
|
|
4
|
-
|
|
5
|
-
# brainglobe
|
|
6
|
-
|
|
7
|
-
The BrainGlobe Initiative exists to facilitate the development of interoperable
|
|
8
|
-
Python-based tools for computational neuroanatomy.
|
|
9
|
-
|
|
10
|
-
We have three aims:
|
|
11
|
-
|
|
12
|
-
- Develop specialist software for specific analysis and visualisation needs,
|
|
13
|
-
such as [cellfinder](https://github.com/brainglobe/cellfinder) and
|
|
14
|
-
[brainrender](https://github.com/brainglobe/brainrender).
|
|
15
|
-
|
|
16
|
-
- Develop core tools to facilitate others to build interoperable tools in Python, e.g. the
|
|
17
|
-
[BrainGlobe Atlas API](https://github.com/brainglobe/bg-atlasapi).
|
|
18
|
-
|
|
19
|
-
- Build a community of neuroscientists and developers to share knowledge, build software and engage
|
|
20
|
-
with the scientific, and open-source community (e.g. by organising hackathons).
|
|
21
|
-
|
|
22
|
-
### [**Funding**](https://brainglobe.info/funders.html#funders) Information
|
|
23
|
-
|
|
24
|
-
The BrainGlobe project is only possible due to grant funding and the generous support of host institutions, whose information [can be found on this website](https://brainglobe.info/funders.html#funders).
|
|
25
|
-
|
|
26
|
-
---
|
|
27
|
-
|
|
28
|
-
## BrainGlobe tools
|
|
29
|
-
|
|
30
|
-
This package provides all BrainGlobe tools in one place, requested [through a single command](#installation).
|
|
31
|
-
|
|
32
|
-
You can read more about the individual tools on the [documentation website](https://brainglobe.info/documentation/index.html).
|
|
33
|
-
Currently included packages, and whether they come with the `pip` and `conda-forge` installs are listed below:
|
|
34
|
-
| Package | `pip` | `conda` | `from brainglobe import` | Documentation |
|
|
35
|
-
| :------------------: | :------: | :------: | :----------------------: | :-----------------------------------------------------------------------: |
|
|
36
|
-
| BrainGlobe Atlas API | ☑ | ☑ | `bg_atlasapi` | [Site](https://brainglobe.info/documentation/bg-atlasapi/index.html) |
|
|
37
|
-
| `bg-space` | ☑ | ☑ | `bg-space` | [Site](https://brainglobe.info/documentation/bg-space/index.html) |
|
|
38
|
-
| `brainreg` | ☑ | ☑ | `brainreg` | [Site](https://brainglobe.info/documentation/brainreg/index.html) |
|
|
39
|
-
| `brainreg-segment` | ☑ | ☑ | `brainreg_segment` | [Site](https://brainglobe.info/documentation/brainreg-segment/index.html) |
|
|
40
|
-
| `brainrender` | | | | [Site](https://brainglobe.info/documentation/brainrender/index.html) |
|
|
41
|
-
| `cellfinder` | ☑ | Pending | `cellfinder_core` | [Site](https://brainglobe.info/documentation/cellfinder/index.html) |
|
|
42
|
-
| `morphapi` | ☑ | Pending | `morphapi` | [Site](https://brainglobe.info/documentation/morphapi/index.html) |
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## Installation
|
|
47
|
-
|
|
48
|
-
We recommend users install into a fresh virtual environment using `pip`; since this will resolve all complex dependencies (like `tensorflow`) automatically, across all operating systems and (compatible) Python versions.
|
|
49
|
-
|
|
50
|
-
### **Recommended**: via `pip`
|
|
51
|
-
The `brainglobe` package can be installed from [PyPI](https://pypi.org/project/brainglobe/) into a Python environment by running
|
|
52
|
-
```sh
|
|
53
|
-
pip install brainglobe
|
|
54
|
-
```
|
|
55
|
-
This will fetch and install all `brainglobe` packages and tools into your current environment.
|
|
56
|
-
Alternatively, you can download the source from [PyPI here](https://pypi.org/project/brainglobe/#files).
|
|
57
|
-
|
|
58
|
-
### **Alternatives**: via `conda`
|
|
59
|
-
We are currently in the process of making BrainGlobe's tools available from `conda-forge` as an alternative to `PyPI`.
|
|
60
|
-
However certain tools are currently not available on `conda-forge`, specifically:
|
|
61
|
-
- `brainrender` (in progress)
|
|
62
|
-
- `morphapi` (in progress)
|
|
63
|
-
- `cellfinder` ([see below](#cellfinder-and-conda-forge))
|
|
64
|
-
|
|
65
|
-
In your desired virtual environment, run
|
|
66
|
-
```sh
|
|
67
|
-
conda install -c conda-forge brainglobe
|
|
68
|
-
```
|
|
69
|
-
to install the compatible BrainGlobe tools.
|
|
70
|
-
This will install all BrainGlobe tools that are compatible with your platform and which are currently available via `conda-forge`.
|
|
71
|
-
|
|
72
|
-
#### **`cellfinder` and `conda-forge`**
|
|
73
|
-
|
|
74
|
-
Choosing to install via `conda` will provide the (source code for the) `cellfinder` tool.
|
|
75
|
-
However due to an ongoing issue with `tensorflow`'s availability on `conda-forge`, the install _will not_ provide `tensorflow` itself.
|
|
76
|
-
This is because `tensorflow` versions newer than `1.14.0` are not provided via `conda` channels, and `cellfinder-core` (one of the brainglobe tools) requires a version between `2.5.0` and `2.11.1`.
|
|
77
|
-
See [this issue on GitHub for more details](https://github.com/conda-forge/cellfinder-core-feedstock/issues/13).
|
|
78
|
-
Users that want to run `cellfinder` will need to manually install a compatible version of `tensorflow` into their environment, before running the `conda install` command above.
|
|
79
|
-
- Windows users will _have_ to manually install their own version of `tensorflow` if they want to use the `conda-forge` install and the `cellfinder` tools.
|
|
80
|
-
- `conda-forge` _may_ be able to resolve the dependencies automatically for Linux and MacOS users, however we do not guarantee this. In such a case, a manual install of `tensorflow` will be required first.
|
|
81
|
-
|
|
82
|
-
If using the `conda-forge` install; attempting to `import` any of `cellfinder`, `cellfinder-napari`, or `cellfinder-core` in your Python scripts may throw an error if the issues above cannot be resolved on your platform.
|
|
83
|
-
Similarly, attempting to use `cellfinder`'s CLI functionality will also raise an error.
|
|
84
|
-
|
|
85
|
-
---
|
|
86
|
-
|
|
87
|
-
## Contributing
|
|
88
|
-
|
|
89
|
-
**Contributors to BrainGlobe are absolutely encouraged**, whether to fix a bug, develop a new feature, or add a new atlas.
|
|
90
|
-
If you would like to contribute, please take a look at our [developer documentation](https://brainglobe.info/developers/index.html).
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
from importlib.metadata import PackageNotFoundError, version
|
|
2
|
-
|
|
3
|
-
from ._conda_handles import _CELLFINDER_INSTALLED, _MORPHAPI_INSTALLED
|
|
4
|
-
|
|
5
|
-
try:
|
|
6
|
-
__version__ = version("brainglobe")
|
|
7
|
-
except PackageNotFoundError:
|
|
8
|
-
# package is not installed
|
|
9
|
-
pass
|
|
10
|
-
|
|
11
|
-
# Expose tools under the brainglobe namespace
|
|
12
|
-
import bg_atlasapi
|
|
13
|
-
import bg_space
|
|
14
|
-
import brainreg
|
|
15
|
-
import brainreg_segment
|
|
16
|
-
|
|
17
|
-
# Expose tools that may not be present
|
|
18
|
-
# if a conda install was performed
|
|
19
|
-
if _MORPHAPI_INSTALLED:
|
|
20
|
-
# Import morphapi
|
|
21
|
-
import morphapi
|
|
22
|
-
|
|
23
|
-
# cellfinder and associated packages
|
|
24
|
-
if _CELLFINDER_INSTALLED:
|
|
25
|
-
import cellfinder_core
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
from importlib.metadata import PackageNotFoundError, version
|
|
2
|
-
from warnings import warn
|
|
3
|
-
|
|
4
|
-
_CELLFINDER_INSTALLED = True
|
|
5
|
-
try:
|
|
6
|
-
version("cellfinder_core")
|
|
7
|
-
except PackageNotFoundError as e:
|
|
8
|
-
_CELLFINDER_INSTALLED = False
|
|
9
|
-
warn(f"BrainGlobe: cellfinder-core unavailable. Caught {str(e)}")
|
|
10
|
-
|
|
11
|
-
_MORPHAPI_INSTALLED = True
|
|
12
|
-
try:
|
|
13
|
-
version("morphapi")
|
|
14
|
-
except PackageNotFoundError as e:
|
|
15
|
-
_MORPHAPI_INSTALLED = False
|
|
16
|
-
warn(f"BrainGlobe: morphapi unavailable. Caught {str(e)}")
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: brainglobe
|
|
3
|
-
Version: 0.2.0
|
|
4
|
-
Summary: Python-based tools for computational neuroanatomy.
|
|
5
|
-
Author-email: BrainGlobe <code@adamltyson.com>
|
|
6
|
-
License: BSD-3-Clause
|
|
7
|
-
Classifier: Development Status :: 2 - Pre-Alpha
|
|
8
|
-
Classifier: Programming Language :: Python
|
|
9
|
-
Classifier: Programming Language :: Python :: 3
|
|
10
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
13
|
-
Classifier: Operating System :: OS Independent
|
|
14
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
15
|
-
Requires-Python: >=3.8.0
|
|
16
|
-
Description-Content-Type: text/markdown
|
|
17
|
-
Provides-Extra: dev
|
|
18
|
-
License-File: LICENSE
|
|
19
|
-
|
|
20
|
-
[](https://badge.fury.io/py/brainglobe)
|
|
21
|
-
[](https://brainglobe.info)
|
|
22
|
-
[](https://twitter.com/brain_globe)
|
|
23
|
-
|
|
24
|
-
# brainglobe
|
|
25
|
-
|
|
26
|
-
The BrainGlobe Initiative exists to facilitate the development of interoperable
|
|
27
|
-
Python-based tools for computational neuroanatomy.
|
|
28
|
-
|
|
29
|
-
We have three aims:
|
|
30
|
-
|
|
31
|
-
- Develop specialist software for specific analysis and visualisation needs,
|
|
32
|
-
such as [cellfinder](https://github.com/brainglobe/cellfinder) and
|
|
33
|
-
[brainrender](https://github.com/brainglobe/brainrender).
|
|
34
|
-
|
|
35
|
-
- Develop core tools to facilitate others to build interoperable tools in Python, e.g. the
|
|
36
|
-
[BrainGlobe Atlas API](https://github.com/brainglobe/bg-atlasapi).
|
|
37
|
-
|
|
38
|
-
- Build a community of neuroscientists and developers to share knowledge, build software and engage
|
|
39
|
-
with the scientific, and open-source community (e.g. by organising hackathons).
|
|
40
|
-
|
|
41
|
-
### [**Funding**](https://brainglobe.info/funders.html#funders) Information
|
|
42
|
-
|
|
43
|
-
The BrainGlobe project is only possible due to grant funding and the generous support of host institutions, whose information [can be found on this website](https://brainglobe.info/funders.html#funders).
|
|
44
|
-
|
|
45
|
-
---
|
|
46
|
-
|
|
47
|
-
## BrainGlobe tools
|
|
48
|
-
|
|
49
|
-
This package provides all BrainGlobe tools in one place, requested [through a single command](#installation).
|
|
50
|
-
|
|
51
|
-
You can read more about the individual tools on the [documentation website](https://brainglobe.info/documentation/index.html).
|
|
52
|
-
Currently included packages, and whether they come with the `pip` and `conda-forge` installs are listed below:
|
|
53
|
-
| Package | `pip` | `conda` | `from brainglobe import` | Documentation |
|
|
54
|
-
| :------------------: | :------: | :------: | :----------------------: | :-----------------------------------------------------------------------: |
|
|
55
|
-
| BrainGlobe Atlas API | ☑ | ☑ | `bg_atlasapi` | [Site](https://brainglobe.info/documentation/bg-atlasapi/index.html) |
|
|
56
|
-
| `bg-space` | ☑ | ☑ | `bg-space` | [Site](https://brainglobe.info/documentation/bg-space/index.html) |
|
|
57
|
-
| `brainreg` | ☑ | ☑ | `brainreg` | [Site](https://brainglobe.info/documentation/brainreg/index.html) |
|
|
58
|
-
| `brainreg-segment` | ☑ | ☑ | `brainreg_segment` | [Site](https://brainglobe.info/documentation/brainreg-segment/index.html) |
|
|
59
|
-
| `brainrender` | | | | [Site](https://brainglobe.info/documentation/brainrender/index.html) |
|
|
60
|
-
| `cellfinder` | ☑ | Pending | `cellfinder_core` | [Site](https://brainglobe.info/documentation/cellfinder/index.html) |
|
|
61
|
-
| `morphapi` | ☑ | Pending | `morphapi` | [Site](https://brainglobe.info/documentation/morphapi/index.html) |
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## Installation
|
|
66
|
-
|
|
67
|
-
We recommend users install into a fresh virtual environment using `pip`; since this will resolve all complex dependencies (like `tensorflow`) automatically, across all operating systems and (compatible) Python versions.
|
|
68
|
-
|
|
69
|
-
### **Recommended**: via `pip`
|
|
70
|
-
The `brainglobe` package can be installed from [PyPI](https://pypi.org/project/brainglobe/) into a Python environment by running
|
|
71
|
-
```sh
|
|
72
|
-
pip install brainglobe
|
|
73
|
-
```
|
|
74
|
-
This will fetch and install all `brainglobe` packages and tools into your current environment.
|
|
75
|
-
Alternatively, you can download the source from [PyPI here](https://pypi.org/project/brainglobe/#files).
|
|
76
|
-
|
|
77
|
-
### **Alternatives**: via `conda`
|
|
78
|
-
We are currently in the process of making BrainGlobe's tools available from `conda-forge` as an alternative to `PyPI`.
|
|
79
|
-
However certain tools are currently not available on `conda-forge`, specifically:
|
|
80
|
-
- `brainrender` (in progress)
|
|
81
|
-
- `morphapi` (in progress)
|
|
82
|
-
- `cellfinder` ([see below](#cellfinder-and-conda-forge))
|
|
83
|
-
|
|
84
|
-
In your desired virtual environment, run
|
|
85
|
-
```sh
|
|
86
|
-
conda install -c conda-forge brainglobe
|
|
87
|
-
```
|
|
88
|
-
to install the compatible BrainGlobe tools.
|
|
89
|
-
This will install all BrainGlobe tools that are compatible with your platform and which are currently available via `conda-forge`.
|
|
90
|
-
|
|
91
|
-
#### **`cellfinder` and `conda-forge`**
|
|
92
|
-
|
|
93
|
-
Choosing to install via `conda` will provide the (source code for the) `cellfinder` tool.
|
|
94
|
-
However due to an ongoing issue with `tensorflow`'s availability on `conda-forge`, the install _will not_ provide `tensorflow` itself.
|
|
95
|
-
This is because `tensorflow` versions newer than `1.14.0` are not provided via `conda` channels, and `cellfinder-core` (one of the brainglobe tools) requires a version between `2.5.0` and `2.11.1`.
|
|
96
|
-
See [this issue on GitHub for more details](https://github.com/conda-forge/cellfinder-core-feedstock/issues/13).
|
|
97
|
-
Users that want to run `cellfinder` will need to manually install a compatible version of `tensorflow` into their environment, before running the `conda install` command above.
|
|
98
|
-
- Windows users will _have_ to manually install their own version of `tensorflow` if they want to use the `conda-forge` install and the `cellfinder` tools.
|
|
99
|
-
- `conda-forge` _may_ be able to resolve the dependencies automatically for Linux and MacOS users, however we do not guarantee this. In such a case, a manual install of `tensorflow` will be required first.
|
|
100
|
-
|
|
101
|
-
If using the `conda-forge` install; attempting to `import` any of `cellfinder`, `cellfinder-napari`, or `cellfinder-core` in your Python scripts may throw an error if the issues above cannot be resolved on your platform.
|
|
102
|
-
Similarly, attempting to use `cellfinder`'s CLI functionality will also raise an error.
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## Contributing
|
|
107
|
-
|
|
108
|
-
**Contributors to BrainGlobe are absolutely encouraged**, whether to fix a bug, develop a new feature, or add a new atlas.
|
|
109
|
-
If you would like to contribute, please take a look at our [developer documentation](https://brainglobe.info/developers/index.html).
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
napari[all]
|
|
2
|
-
bg-space>=0.5.0
|
|
3
|
-
brainglobe-utils
|
|
4
|
-
bg-atlasapi>=1.0.0
|
|
5
|
-
brainreg
|
|
6
|
-
imio
|
|
7
|
-
cellfinder-core>=0.3
|
|
8
|
-
morphapi>=0.1.3.0
|
|
9
|
-
brainglobe-napari-io
|
|
10
|
-
brainreg-segment>=0.0.2
|
|
11
|
-
cellfinder-napari
|
|
12
|
-
brainreg-napari
|
|
13
|
-
cellfinder
|
|
14
|
-
|
|
15
|
-
[dev]
|
|
16
|
-
pytest
|
|
17
|
-
pytest-cov
|
|
18
|
-
coverage
|
|
19
|
-
tox
|
|
20
|
-
black
|
|
21
|
-
mypy
|
|
22
|
-
pre-commit
|
|
23
|
-
ruff
|
|
24
|
-
setuptools_scm
|
brainglobe-0.2.0/pyproject.toml
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
[project]
|
|
2
|
-
name = "brainglobe"
|
|
3
|
-
authors = [{ name = "BrainGlobe", email = "code@adamltyson.com" }]
|
|
4
|
-
description = "Python-based tools for computational neuroanatomy."
|
|
5
|
-
readme = "README.md"
|
|
6
|
-
requires-python = ">=3.8.0"
|
|
7
|
-
dynamic = ["version"]
|
|
8
|
-
|
|
9
|
-
license = { text = "BSD-3-Clause" }
|
|
10
|
-
|
|
11
|
-
classifiers = [
|
|
12
|
-
"Development Status :: 2 - Pre-Alpha",
|
|
13
|
-
"Programming Language :: Python",
|
|
14
|
-
"Programming Language :: Python :: 3",
|
|
15
|
-
"Programming Language :: Python :: 3.8",
|
|
16
|
-
"Programming Language :: Python :: 3.9",
|
|
17
|
-
"Programming Language :: Python :: 3.10",
|
|
18
|
-
"Operating System :: OS Independent",
|
|
19
|
-
"License :: OSI Approved :: BSD License",
|
|
20
|
-
]
|
|
21
|
-
|
|
22
|
-
dependencies = [
|
|
23
|
-
"napari[all]",
|
|
24
|
-
"bg-space>=0.5.0",
|
|
25
|
-
"brainglobe-utils",
|
|
26
|
-
"bg-atlasapi>=1.0.0",
|
|
27
|
-
"brainreg",
|
|
28
|
-
# brainglobe-napari [WIP],
|
|
29
|
-
"imio",
|
|
30
|
-
"cellfinder-core>=0.3",
|
|
31
|
-
"morphapi>=0.1.3.0",
|
|
32
|
-
"brainglobe-napari-io",
|
|
33
|
-
# bg-atlasgen [LOCAL ONLY],
|
|
34
|
-
"brainreg-segment>=0.0.2",
|
|
35
|
-
"cellfinder-napari",
|
|
36
|
-
"brainreg-napari",
|
|
37
|
-
"cellfinder",
|
|
38
|
-
]
|
|
39
|
-
|
|
40
|
-
[project.optional-dependencies]
|
|
41
|
-
dev = [
|
|
42
|
-
"pytest",
|
|
43
|
-
"pytest-cov",
|
|
44
|
-
"coverage",
|
|
45
|
-
"tox",
|
|
46
|
-
"black",
|
|
47
|
-
"mypy",
|
|
48
|
-
"pre-commit",
|
|
49
|
-
"ruff",
|
|
50
|
-
"setuptools_scm",
|
|
51
|
-
]
|
|
52
|
-
|
|
53
|
-
[build-system]
|
|
54
|
-
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2"]
|
|
55
|
-
build-backend = "setuptools.build_meta"
|
|
56
|
-
|
|
57
|
-
[tool.setuptools]
|
|
58
|
-
include-package-data = true
|
|
59
|
-
|
|
60
|
-
[tool.setuptools.packages.find]
|
|
61
|
-
include = ["brainglobe*"]
|
|
62
|
-
exclude = ["tests*"]
|
|
63
|
-
|
|
64
|
-
[tool.pytest.ini_options]
|
|
65
|
-
addopts = "--cov=brainglobe"
|
|
66
|
-
|
|
67
|
-
[tool.black]
|
|
68
|
-
target-version = ['py38', 'py39', 'py310']
|
|
69
|
-
skip-string-normalization = false
|
|
70
|
-
line-length = 79
|
|
71
|
-
|
|
72
|
-
[tool.setuptools_scm]
|
|
73
|
-
|
|
74
|
-
[tool.check-manifest]
|
|
75
|
-
ignore = [
|
|
76
|
-
".yaml",
|
|
77
|
-
"tox.ini",
|
|
78
|
-
"tests/",
|
|
79
|
-
"tests/test_unit/",
|
|
80
|
-
"tests/test_integration/",
|
|
81
|
-
]
|
|
82
|
-
|
|
83
|
-
[tool.ruff]
|
|
84
|
-
line-length = 79
|
|
85
|
-
exclude = ["__init__.py", "build", ".eggs"]
|
|
86
|
-
select = ["I", "E", "F"]
|
|
87
|
-
fix = true
|
|
88
|
-
|
|
89
|
-
[tool.cibuildwheel]
|
|
90
|
-
build = "cp38-* cp39-* cp310-*"
|
|
91
|
-
|
|
92
|
-
[tool.cibuildwheel.macos]
|
|
93
|
-
archs = ["x86_64", "arm64"]
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import inspect
|
|
2
|
-
|
|
3
|
-
import pytest
|
|
4
|
-
from importlib_metadata import PackageNotFoundError
|
|
5
|
-
|
|
6
|
-
import brainglobe as bg
|
|
7
|
-
|
|
8
|
-
# Tools that will be exposed in the brainglobe module/namespace
|
|
9
|
-
EXPOSED_TOOLS = [
|
|
10
|
-
"bg_atlasapi",
|
|
11
|
-
"bg_space",
|
|
12
|
-
"brainreg",
|
|
13
|
-
"brainreg_segment",
|
|
14
|
-
"cellfinder_core",
|
|
15
|
-
]
|
|
16
|
-
OPTIONAL_TOOLS = ["morphapi", "cellfinder"]
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
def test_tool_exposure() -> None:
|
|
20
|
-
"""Assert that each of the user-facing tool sub-modules can be imported."""
|
|
21
|
-
|
|
22
|
-
for exposed_tool in EXPOSED_TOOLS:
|
|
23
|
-
assert hasattr(
|
|
24
|
-
bg, exposed_tool
|
|
25
|
-
), f"brainglobe has no (exposed) tool {exposed_tool}"
|
|
26
|
-
assert inspect.ismodule(
|
|
27
|
-
getattr(bg, exposed_tool)
|
|
28
|
-
), f"brainglobe.{exposed_tool} is not a submodule"
|
|
29
|
-
|
|
30
|
-
# Determine if optional dependencies were installed,
|
|
31
|
-
# and exposed if necessary
|
|
32
|
-
|
|
33
|
-
# morphapi - should be exposed if installed
|
|
34
|
-
if bg._MORPHAPI_INSTALLED:
|
|
35
|
-
assert hasattr(
|
|
36
|
-
bg, "morphapi"
|
|
37
|
-
), "morphapi is installed but not exposed."
|
|
38
|
-
assert inspect.ismodule(
|
|
39
|
-
bg.morphapi
|
|
40
|
-
), "brainglobe.morphapi is not a module"
|
|
41
|
-
else:
|
|
42
|
-
assert not hasattr(bg, "morphapi")
|
|
43
|
-
|
|
44
|
-
# cellfinder - should not be exposed if installed
|
|
45
|
-
# cellfinder_core - should be exposed if installed
|
|
46
|
-
if bg._CELLFINDER_INSTALLED:
|
|
47
|
-
assert not hasattr(
|
|
48
|
-
bg, "cellfinder"
|
|
49
|
-
), "brainglobe.cellfinder is exposed"
|
|
50
|
-
assert hasattr(
|
|
51
|
-
bg, "cellfinder_core"
|
|
52
|
-
), "brainglobe.cellfinder_core is not exposed"
|
|
53
|
-
else:
|
|
54
|
-
# cellfinder_core should be aliased to a function
|
|
55
|
-
# that throws an error when invoked
|
|
56
|
-
with pytest.raises(PackageNotFoundError):
|
|
57
|
-
bg.cellfinder_core()
|
brainglobe-0.2.0/tox.ini
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|