Comments (7)
That's a good idea, and it's an issue that I've come across with amap and cellfinder. Until now I've avoided it because they're not yet at a stable version. However, this project could reach stability, and still undergo lots of changes to the atlases.
Do we want to start trying to support old versions of the API/atlas? This could be a headache avoided with a message asking people to upgrade.
from brainglobe-atlasapi.
I think for now, since things will be changing a lot and rapidly we can just ask people to us the updated version. Once development slows down we can start supporting different versions?
from brainglobe-atlasapi.
Youp, I also agree that priority is to automatically detect if it is outdate and trigger redownloading. I was not thinking about supporting old versions of the atlases, just to somehow map in the brainatlas-api
version the version of the atlases it is working with. This way matching the correct (old) version of the atlas to be used is not that different from updating to the most recent one
from brainglobe-atlasapi.
In this direction, probably it make sense to put the scripts to generate the atlases back in a separate folder of this repo, so that they are versioned together?
from brainglobe-atlasapi.
Could each atlas just have unique metadata entry, so we know what version of what atlas we are using (like Allen_10um_2020-05-27a
)?
We can prompt people to upgrade to a new version of the API (and therefore atlases) with something like this in __init__.py
__name__ = "brainatlas-api"
import luddite
from packaging import version
most_recent_version = luddite.get_version_pypi(__name__)
if version.parse(__version__) < version.parse(most_recent_version):
print(
f"This version of {__name__} ({__version__}) is not the most recent "
f"version. Please update to v{most_recent_version} by running: "
f"'pip install {__name__} --upgrade'"
)
from brainglobe-atlasapi.
In this direction, probably it make sense to put the scripts to generate the atlases back in a separate folder of this repo, so that they are versioned together?
Maybe, but this could stop being useful as soon as anyone else makes an atlas that we incorporate.
from brainglobe-atlasapi.
I think we are happy with how things are now? Should we close?
from brainglobe-atlasapi.
Related Issues (20)
- [BUG] the link to documentation in your github description is broken HOT 1
- [Feature] Are there plans for developing an online version of BrainGlobe-atlasapi? HOT 3
- [BUG] Hemisphere map not correctly set for mpin_zfish_1um_v1.0 HOT 2
- [Feature] Add Ambystoma mexicanum (axolotl) atlas
- Decide what to do with `atlas_generation/main_script` HOT 1
- deal with local and remote atlas versions in validate_atlases.py HOT 9
- validate_atlases.py additional_references error HOT 5
- Add updated version of the kim atlas HOT 1
- [Feature] flexibly generate atlases with different resolutions
- perens_atlas alignment trouble with new version [BUG] HOT 4
- perens_lsfm_mouse_20um_v1.1 is oriented incorrectly HOT 1
- Use pooch to download data
- User is informed (twice) that the atlas is not the latest when they're updating it
- The warning that an atlas is not the latest is missing a space
- Standardise the axial resolution of the allen spinal cord atlas HOT 1
- Save atlases to `.brainglobe/atlases`
- Atlases should be returned by `brainglobe list` in alphabetical order
- Enforce standardised orientation
- Atlas resolution as an attribute, not a name.
- Move atlas generation code out of the `brainglobe-atlasapi` package
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from brainglobe-atlasapi.