-
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
Require [compat]
for stdlib dependencies
#516
Conversation
This may be to aggressive, but I do think that we need compat entries at least for every stdlib. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SGTM.
Note that the JLL requirement will only apply to non-JLL packages. In other words:
Suppose that Foo.jl depends on Bar.jl and Hello_jll.jl. Foo.jl must have a compat entry for Bar.jl (this was already the case before this PR). Foo.jl must have a compat entry for Hello_jll.jl (this is new, introduced in this PR).Suppose that Hello_jll.jl depends on World_jll.jl. Hello_jll.jl does NOT need a compat entry for World_jll.jl. This is one of the "special JLL exceptions" that we apply to JLL packages that come from Yggdrasil.
cc: @staticfloat @giordano (to take a quick look at the JLL-related changes) |
This change makes sense to me, but when deployed, this should be accompanied by a discourse post announcing the change and the rationale. (Including what authors should do, e.g. how should they set compat bounds on stdlibs) |
@ericphanson how about the following annoucement PSA: Compat requirements in the General registry are changing.Up until now standard libraries (and JLL's) have been excluded from the mandatory In Julia v1.11 (and to an lesser extend v1.10) we are moving towards upgradeable standard libaries, In effect standard libraries are becoming normal Julia packages, with the only difference that a version of Now this means that version numbers of standard libraries and Julia are no longer coupled and one So a Project.toml like:
Would become:
|
In your example |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this doesn't enforce compat bounds in jlls, as said above, then it looks good to me. For enforcing compat bounds also in jlls, which I'd like to, I'd need help with JuliaPackaging/BinaryBuilderBase.jl#314, I had troubles with installation of stdlib jlls in the build environment
That sounds great to me, but I agree with Dilum we should mention more JLLs too, not just stdlibs, since we're changing both here. (We mentioned they were exempt but not that they are no longer exempt). Also as a tiny grammar nit,
is kinda an incomplete sentence; maybe:
|
@vchuravy and/or @staticfloat - can you help @giordano out with JuliaPackaging/BinaryBuilderBase.jl#314? |
After a conversation with @DilumAluthge I would say let's back out the JLL change for now, that seems like a bigger change and the stdlib change needs to happen now. |
[compat]
for stdlib dependencies
Let's call this breaking. I've bumped the major version number to |
bors try |
tryBuild failed: |
@vchuravy We need to fix several of the integration tests. |
bors try |
tryBuild succeeded! The publicly hosted instance of bors-ng is deprecated and will go away soon. If you want to self-host your own instance, instructions are here. If you want to switch to GitHub's built-in merge queue, visit their help page.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
bors merge |
Build succeeded! The publicly hosted instance of bors-ng is deprecated and will go away soon. If you want to self-host your own instance, instructions are here. If you want to switch to GitHub's built-in merge queue, visit their help page.
|
This will be registered in JuliaRegistries/General#94135. |
This will be deployed by the combination of JuliaRegistries/General#94141 and JuliaRegistries/General#94142 |
I reran StdlibRegistryCompatUpdater for DelimitedFiles and Statistics JuliaRegistries/General#94159 |
Fixes #515, by no longer treating stdlibs as special.
(Note: previously, this PR also added the requirement for JLL dependencies. That was removed from this PR.)