-
Notifications
You must be signed in to change notification settings - Fork 30
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 Xpress_jll for binaries #220
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #220 +/- ##
==========================================
- Coverage 68.13% 67.91% -0.22%
==========================================
Files 6 6
Lines 3295 3301 +6
==========================================
- Hits 2245 2242 -3
- Misses 1050 1059 +9 ☔ View full report in Codecov by Sentry. |
Making progress with Gurobi too: jump-dev/Gurobi.jl#545 |
I'm talking to FICO privately about this. |
So I wonder about import Xpress_jll
ENV["XPRESS_JL_LIBRARY"] = Xpress_jll.libxprs
using Xpress Then we don't automatically install the binaries for people who already have one, and we can clearly document the license conditions that come with Xpress_jll. |
This broke some of our code. |
On the current commit? I guess I need to refine the check for "is this Xpress.jl's CI." |
There will be a conflict with #251, so we should merge that one first. |
I think this PR would enjoy some comments on the readme about:
|
2396980
to
2e40dd5
Compare
So new new problem. The community license for 8.13.4 has expired |
Can you add the latest community lic to the 8.13 jll? |
No, we can't modify the JLLs. I think it's fairly reasonable from FICO's point of view: they want people using older versions to upgrade. And if they're using the community license for more than one year...then pay for support. For "our" license, I've just added the most recent, and we can manually update the secret. |
I am not sure this is exactly on purpose or just lazyness from FICO perspective. |
I think it's purposeful on FICO's behalf. And we won't be modifying their artifacts, or providing a separate mechanism for users to obtain licenses. Our options are:
This PR currently does (2), but I also tried (1). I'm ambivalent, but (2) is simpler for now. It'll also force me to keep Xpress_jll updated. |
I think we can ask FICO to check. If a separate artifact for licenses is really not doable, then I think we could go for 2 and document in the readme how a user can do it... |
We document how to use Xpress_jll here: I am not going to document how people can get a community license to use 8.x.y by grabbing one from a newer JLL. We can do it in the GitHub action, but it won't be documented. We can, at most, document what is done for Python: https://anaconda.org/fico-xpress/xpress |
This looks good.
Forcing people to use always the latest version is a source of non-reproducibility. The python thing bad with such lic problem. But we can keep complexity low and just warn the user that community lic expires and they might be fine grabbing a newer one and using with an old binary. |
Oh, I'm well aware, and I agree. But FICO are saying that they have released a community license where people get to use vX.Y for a period of 12 months. That seems like a reasonable position, even if it means that someone cannot go back and reproduce old code. (They of course can, provided they have a license.) |
Co-authored-by: Joaquim Dias Garcia <[email protected]>
I still think the lic thing is a lazyness/"keep it simple" procedure than any particular enforcement. However, lets leave this for the future. This PR is great as is. |
Alternative to #218
If we like this, and once the kinks are sorted, I'll move https://github.com/odow/Xpress_jll.jl to JuMP.