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

3.12.0 release tracking #9137

Closed
26 tasks done
emillon opened this issue Nov 10, 2023 · 13 comments
Closed
26 tasks done

3.12.0 release tracking #9137

emillon opened this issue Nov 10, 2023 · 13 comments
Assignees
Labels
chore Something that just needs to be done.
Milestone

Comments

@emillon
Copy link
Collaborator

emillon commented Nov 10, 2023

known blockers

alpha1 (2023-11-10)

alpha2 (2023-11-16)

alpha3 (2023-11-22)

release

post-release

@emillon emillon self-assigned this Nov 10, 2023
@emillon emillon added this to the 3.12.0 milestone Nov 10, 2023
@rgrinberg rgrinberg added the chore Something that just needs to be done. label Nov 14, 2023
@Alizter
Copy link
Collaborator

Alizter commented Nov 16, 2023

I don't know if #9071 is worth adding to the list since it was broken in 3.11.

@emillon
Copy link
Collaborator Author

emillon commented Nov 17, 2023

No, if that's not a regression it should not block the release.

@Alizter
Copy link
Collaborator

Alizter commented Nov 17, 2023

@emillon It appears to be a regression we missed in the last release however.

@emillon
Copy link
Collaborator Author

emillon commented Nov 17, 2023

Sorry, I don't want to add more reasons to delay the release. If a fix is ready, no problem with including it, though.

@Alizter
Copy link
Collaborator

Alizter commented Nov 17, 2023

@emillon I'm not suggesting that it is blocking, just wanted to make sure you were aware of the issue that's all.

@Alizter
Copy link
Collaborator

Alizter commented Nov 17, 2023

@emillon The dune lang version needs to be bumped to 3.12.

@emillon
Copy link
Collaborator Author

emillon commented Nov 20, 2023

@emillon The dune lang version needs to be bumped to 3.12.

Why is that? If nothing changes when (lang dune 3.11) is changed into (lang dune 3.12) I don't think there's a need to add this version.

@Alizter
Copy link
Collaborator

Alizter commented Nov 20, 2023

How else can users limit the Dune that their project works with? There may be reasons other than stanzas to havee the Dune version increased, such as the new odoc rules.

@emillon
Copy link
Collaborator Author

emillon commented Nov 20, 2023

In that case they have to declare that as a piece of metadata in the opam file. Adding an explicit bound on dune in (package) should work. Actually I would not advice changing a (lang dune) version for something that's not versioned against the language,

@emillon
Copy link
Collaborator Author

emillon commented Nov 20, 2023

I reckon it's a bit unusual. I tought there was a precedent but I can't find it so probably it didn't happen. But I don't think there's a concrete issue with not bumping the lang version if the lang is the same.

@Alizter
Copy link
Collaborator

Alizter commented Nov 20, 2023

Yes, I was under the false impression that we had to specify each version like we do for using which is of course incorrect. If we bump to 3.13 in the future there will be no issue.

Just to make sure we are on the same page, here is why I was surprised: Imagine you are a new user and you install dune 3.12. You have read online that you need to pick a dune-project version, and this is typically recommended as your current version of dune. If they write (lang dune 3.12) and it is not supported in this version, it might cause some head scratching.

@emillon
Copy link
Collaborator Author

emillon commented Nov 20, 2023

That's an interesting point, yes. That's why I don't think it's useful to recommend using the latest version (personally I advice starting at 3.0 and following error messages). But dune init is going to do the right thing and the error message is going to say the right thing so I think we can keep it that way for that release.

@emillon
Copy link
Collaborator Author

emillon commented Nov 21, 2023

Actually it's not going to work. The reason is that when we release dune 3.13, it will know about lang dune 3.12 because we assume that the set of language versions does not have holes in it. So if someone happens to use (lang dune 3.12), dune (3.13 and up) will generate "dune" >= "3.12.0" which is the incorrect bound.
Put differently, the golden rule is that all versions of dune need to agree on what 3.12 is, and if we don't add it in dune 3.12, it will be "automatically" added by the next version, and our versioning system does not support this.

@emillon emillon closed this as completed Jan 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Something that just needs to be done.
Projects
None yet
Development

No branches or pull requests

3 participants