-
Notifications
You must be signed in to change notification settings - Fork 8
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
bevy patch
- automatically generate Bevy dependency overrides
#79
Comments
notably this is often required when doing work with early release-candidates, or crates that haven't published their transitive dependencies to crates.io, etc. |
One question is if you run Maybe it can comment out previous patches instead of overwriting? But anyways, everyone uses version control so overwriting is probably fine. |
I don't necessarily think it needs to modify Cargo.toml, especially in its first form. It just needs to dump the generated list to console. The full list is awkward to access and write out otherwise. Even dumping |
Good point. Even in the final form, it could dump the text by default and include a |
also slight preference for something like |
You can pretty easily find a list of all 1st-party Bevy crates in a workspace by running: cargo metadata --format-version 1 | jq '.packages[] | select(.name == "bevy_internal") | .dependencies[] | .name' |
nice. cooked up a nushell version based on that (mostly for myself soon when 0.15 drops) cargo metadata --format-version 1 | from json | get packages | where name == bevy_internal | first | get dependencies.name | each {|it| $'($it) = { git = "<git>", rev = "<rev>" }' } | str join "\n" bevy_a11y = { git = "<git>", rev = "<rev>" }
bevy_animation = { git = "<git>", rev = "<rev>" }
bevy_app = { git = "<git>", rev = "<rev>" }
... |
Note that the above two commands do not include |
Thanks to @ChristopherBiscardi for the original suggestion on Discord.
If you depend on a fork of Bevy and want to patch 3rd-party plugins to use said fork, you need to use dependency overrides. Due to how they work, you have to do one override for each of Bevy's subcrates, which amounts to a lot of patching.
Chris suggested that the Bevy CLI should be able to automatically generate these overrides with a given Git repository.
The text was updated successfully, but these errors were encountered: