-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Versioning atlases #10
Comments
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. |
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? |
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 |
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? |
Could each atlas just have unique metadata entry, so we know what version of what atlas we are using (like We can prompt people to upgrade to a new version of the API (and therefore atlases) with something like this in __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'"
) |
Maybe, but this could stop being useful as soon as anyone else makes an atlas that we incorporate. |
I think we are happy with how things are now? Should we close? |
I think we should also have a way of nicely integrating versioning of this package together with versioning that I hope GIN can provide on the packages deployed there. If we introduce new features in the API they could require the latest version of an atlas to be redownloaded for the user that has an outdated one. Viceversa, maybe sometimes we should ensure that outdated API versions ask for legacy versions of the atlases.
@adamltyson @FedeClaudi any thought on this? Does this make sense?
The text was updated successfully, but these errors were encountered: