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

APE 18: What does it really mean for other runtime dependencies? #80

Open
pllim opened this issue Nov 4, 2022 · 11 comments
Open

APE 18: What does it really mean for other runtime dependencies? #80

pllim opened this issue Nov 4, 2022 · 11 comments

Comments

@pllim
Copy link
Member

pllim commented Nov 4, 2022

This sentence in APE 18:

Versions of other runtime dependencies released 24 months prior to a non-bugfix release.

I guess I cannot understand what "prior to a non-bugfix release" mean. I need examples.

As of writing this, astropy has this in its setup.cfg and 24 months ago was Nov 2020:

  • pyerfa>=2.0 -- This was released in May 2021. 24 months ago includes 1.7.1.1. So, why not 1.7?
  • PyYAML>=3.13 -- It is 6.0 now. 3.13 was released in July 2018. Why didn't we bump to 5.4 (released Jan 2021)?
  • packaging>=19.0 -- It is 21.3 now. 19.0 was released in Jan 2019. Why didn't we bump to 20.5 (released Nov 2020)?

Do the optional dependencies count as "runtime" dependencies or we only bump as needed?

xref astropy/astropy-tools#177 and astropy/astropy#13930

@Cadair
Copy link
Member

Cadair commented Nov 21, 2022

I guess I cannot understand what "prior to a non-bugfix release" mean.

It means the versions don't change with bugfix releases, so you determine version support based on the expected release date of a major version.

pyerfa

I assume this is because it's a dependency we maintain and we needed to bump it outside the regular cycle.

PyYAML and packaging

Update them!

Do the optional dependencies count as "runtime" dependencies or we only bump as needed?

I would say yes they count.


I don't feel that the actual APE text needs to be much more prescriptive, I think this is just a core package process issue where all these deps should get a bump before feature freeze.

@pllim
Copy link
Member Author

pllim commented Nov 21, 2022

I would say yes they count

That is a lot of packages to check. 👀

@bsipocz
Copy link
Member

bsipocz commented Nov 21, 2022

pyerfa

I assume this is because it's a dependency we maintain and we needed to bump it outside the regular cycle.

It shouldn't matter who maintains the dependency. If it's a dependency, and there is a guarantee pledged that 2 years are supported, then there should not be bumps outside the cycle.

@Cadair
Copy link
Member

Cadair commented Nov 22, 2022

then there should not be bumps outside the cycle

"... without good reason" I think there is always exceptions (cost of maintaining backwards compatibility as a single example).

Also I don't know if that's the reason pyerfa was bumped, I was just guessing why it might be ahead.

@Cadair
Copy link
Member

Cadair commented Nov 22, 2022

I would say yes they count

That is a lot of packages to check. eyes

That's what we get for having too many dependencies ;) We should probably automate it!!

@pllim
Copy link
Member Author

pllim commented Nov 22, 2022

We should probably automate it

I started astropy/astropy-tools#177 but it is not obvious to me how major version bump should be handled.

@Cadair
Copy link
Member

Cadair commented Nov 22, 2022

how major version bump should be handled

I am not sure I understand, the wording of the APE is pick the version released in a given window of time (arguably ignoring bug fixes).

@pllim
Copy link
Member Author

pllim commented Nov 22, 2022

But not all packages follow semver, so I have to code it up on a case-by-case basis?

@Cadair
Copy link
Member

Cadair commented Nov 23, 2022

You could code it up not ignoring bug fixes and that would also be fine (certainly a lot better than not having it at all).

@pllim
Copy link
Member Author

pllim commented Dec 2, 2022

I'll have to ponder this more when/if I have time... Feel free to take what I have and run with it, or propose your own check, if you get to it before I do.

@pllim
Copy link
Member Author

pllim commented May 15, 2023

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