-
Notifications
You must be signed in to change notification settings - Fork 45
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
Use compatible release syntax to set bounds on required dependencies #453
Comments
If it would be helpful I'm happy to contribute a PR either to |
Hi @matthewfeickert , Yes, I agree with you that this would be I lack the context to know which versions of those packages MadMiner was designed to interact with. Due the small test-suite, I can think of the following options:
Opinions on the approach? |
👍
I lack the context as well, so my recommendations should be properly down weighted given that, but I would suggest option A. Here's my thoughts why:
|
Hey @matthewfeickert , I just ran into the I currently do not have the bandwidth to go over them in a comprehensive manner, so I may create a small PR implementing some lower-bound and upper-bound constraints on the list of unbounded dependencies. Do you have any suggestion for the other dependencies? If so, please let me know so I can add those to the PR. |
Ah bummer. :(
Sure. I recently changed my tune a bit on this given some convincing from Henry and Hynek Schlawack (c.f. scikit-hep/pyhf#1382), so I think that I'd suggest just setting lower bounds still, but setting up some tests that are tightly testing the lowest bounds you support and be ready to update them as needed. I don't have much experience here with predicitng what will and won't play nice with things like Delphes (maybe @kratsg does given https://gitlab.cern.ch/scipp/mario-mapyde), but I'll make some comments on your PR. 👍 |
In the same vein as Issue #452, almost none of the required dependencies have upper bounds
https://github.com/diana-hep/madminer/blob/7fc053b23beca88429c0120b2b7d7b6c049944a9/setup.py#L36-L46
https://github.com/diana-hep/madminer/blob/7fc053b23beca88429c0120b2b7d7b6c049944a9/setup.py#L117
This can very easily cause old releases to break in the future, and in the case of
uproot
I would be shocked if there aren't brokenmadminer
releases out there now given theuproot3
/uproot4
transition. In my experience, using compatible release syntax is the easiest way to both support a range of releases while still setting lower and uppper bounds (c.f. this PR for an example).This also ensures that when there are API breaking changes in future major releases you have the ability to select them to come in instead of having all of your CI break.
The text was updated successfully, but these errors were encountered: