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

DelimitedFiles should now require compat entries #471

Open
KristofferC opened this issue Aug 23, 2022 · 3 comments
Open

DelimitedFiles should now require compat entries #471

KristofferC opened this issue Aug 23, 2022 · 3 comments

Comments

@KristofferC
Copy link
Member

In JuliaRegistries/General#66039, compat for DelimtiedFiles was added so that when people start using 1.9 (where DelimitedFiles is not an stdlib) the resolver should not start picking old versions without DelimitedFiles compat.

We should probably require packages to declare compat with DelimitedFIles to avoid this issue coming back. It is not super urgent though since we can always add new compat entries but would be good to get done.

The rule is basically that before 1.9 you need to have the same compat for DelimitedFiles as you do for Julia. After 1.9 you can have whatever you want.

@ericphanson
Copy link
Member

IIRC Registrator hasn't been in the business of compat bounds, but rather RegistryCI. Moreover, I would prefer checks like this to go to the latter bc RegistryCI itself has CI (unlike Registrator) and the version deployed to General is public/readable unlike Registrator (which can make debugging hard/confusing), and there's a broader set of folks who can deploy RegistryCI (General committers vs only @nkottary AFAIK).

@KristofferC KristofferC transferred this issue from JuliaRegistries/Registrator.jl Aug 23, 2022
@KristofferC
Copy link
Member Author

Yes, RegistratorCI is clearly where this should be opened. I moved it.

@ericphanson
Copy link
Member

ericphanson commented Nov 9, 2022

Taking another look at this:

  1. Guideline:
    if !is_jll_name(name) && !is_julia_stdlib(name)
  2. Utils function:
    is_julia_stdlib(name) = name in julia_stdlib_list()
    function julia_stdlib_list()
    stdlib_list = readdir(Pkg.Types.stdlib_dir())
    # Before Julia v1.6 Artifacts.jl isn't a standard library, but
    # we want to include it because JLL packages depend on the empty
    # placeholder https://github.com/JuliaPackaging/Artifacts.jl
    # in older versions for compatibility.
    if VERSION < v"1.6.0"
    push!(stdlib_list, "Artifacts")
    end
    return stdlib_list
    end
  3. General's workflow: https://github.com/JuliaRegistries/General/blob/a71c6fbf0766c12f54ea1cf23a3e7dc7277f380a/.github/workflows/automerge.yml#L22

It looks like once 1.9 is out, General's AutoMerge workflow will switch to 1.9, and presumably those Pkg internals will no longer have DelimitedFiles as a stdlib, so we will start requiring compat then.

Does that sound reasonable? Do we want to edit it so we rm DelimitedFiles from that list early so we start requiring it already?

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

2 participants