Skip to content
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

Consider renaming version.py to autover.py? #25

Open
ceball opened this issue Mar 8, 2018 · 7 comments
Open

Consider renaming version.py to autover.py? #25

ceball opened this issue Mar 8, 2018 · 7 comments

Comments

@ceball
Copy link
Member

ceball commented Mar 8, 2018

I think autover.py instead of version.py might provide clearer identification and would be less confusing.

Apart from e.g. packaging's version.py or distutils' version.py, there's something like half a million files on github named version.py: https://github.com/search?utf8=%E2%9C%93&q=filename%3Aversion.py&type= (if I searched right).

@jlstevens
Copy link
Contributor

I think I agree but the problem is that it was version.py in param previously which has implications for backwards compatibility. Unless that file should still exist and just reflects autover.py?

I am very happy to carry out this renaming as soon as a decision is made. I already tried this change briefly but went back to version.py partly to resolve a merge conflict at the time and partially because I think @jbednar was in favor of version.py. I can rename the file as soon as we decide whether or not we should!

@jbednar
Copy link
Contributor

jbednar commented Mar 8, 2018

I think it should be version.py in Param, for backwards compatibility, but autover.py otherwise.

@jbednar
Copy link
Contributor

jbednar commented Mar 8, 2018

Or we could have it be autover.py, but set version=autover in param/__init__.py to make it available where old packages expect it while making it clearly visible as autover.py.

@jlstevens
Copy link
Contributor

That last suggestions sounds fine to me. @ceball ?

@ceball
Copy link
Member Author

ceball commented Mar 9, 2018

I think it should be version.py in Param, for backwards compatibility

Is autover backwards compatible with param's version.py? I.e. if someone's using param's version.py and then they get a new release of param (in which version.py has changed from how it was to the new autover), will things

  1. keep working as before? or
  2. keep working, but change in some way (e.g. change their __version__ format, or maybe lack some features such as comparison that were available before)? or
  3. stop working, failing with an error? or
  4. stop working, with no error?

Originally I thought 4 was true.

However, trying to catch up, it now looks to me like I was wrong, and maybe 2 is true? Is that the case? I.e. for someone who's using param's original version.py and updates to a new param release, things will keep working (without them having to change their workflow), but they'll now get a different version format (and maybe some features have gone)?

@jlstevens
Copy link
Contributor

@ceball This was discussed here

In short, there will be a warning for old-style usage of Version prompting people who used it as param.Version to check it works right (or to upgrade to the new workflow).

@jlstevens
Copy link
Contributor

I think it is option 2:

keep working, but change in some way (e.g. change their version format, or maybe lack some features such as comparison that were available before)? or

But with a warning when a release tuple is specified, not an error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants