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

Don't include the patch when declaring the Vello version. #81

Closed
StarArawn opened this issue Aug 18, 2024 · 1 comment
Closed

Don't include the patch when declaring the Vello version. #81

StarArawn opened this issue Aug 18, 2024 · 1 comment

Comments

@StarArawn
Copy link

It makes it harder to patch as the latest vello version is on their main branch but the latest patch version is on a branch called latest. The main branch still declares v0.2.0. To patch vello I now need to fork either vello or bevy_vello.

By specifying a patch version it also means that users wont automatically get fixes upstream in bevy vello instead they'll need to wait for a bevy_vello patch as well.

@DJMcNab
Copy link
Member

DJMcNab commented Aug 18, 2024

Bevy Vello has removed the code to work around the issue fixed in Vello 0.2.1, and so allowing a dependency on Vello 0.2.0 is semantically incorrect.

Your second paragraph is rooted in a misunderstanding of how cargo implements semantic versioning. If a new Vello release were to be made, any project using Bevy Vello would still pick this up. The default form of a dependency is a compatible lower-bound, not a forcing fix.

You are running into rust-lang/cargo#5640. The workaround I'd suggest for your case is use a patched version of bevy_vello pointing at the patch you wish to use.

We should consider following the pattern in Vello which Bevy uses, of "eagerly" bumping the version number to something incompatible, to avoid the expectation that this kind of transitive patching is directly supported. This is discussed in bevyengine/bevy#6451

@DJMcNab DJMcNab closed this as not planned Won't fix, can't repro, duplicate, stale Aug 18, 2024
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