-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
bun: workspace support #24459
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
https://github.com/The-Code-Monkey/bun-demo-monorepo @rarkins this repo is a dummy repo for the bun mono repo support. I have setup renovate github bot on it too. |
Thanks, but unfortunately Renovate does not detect any dependencies to update according to the onboarding PR. If you replace ranges with fixed versions in the sub-package package.json then it should do it. |
Ah ok, I have updated renovate to pin deps and will merge that PR once it does so. hope that helps. |
Well, it will pin them to the latest version, so still won't have any updates to make after that, but if we want a day or two after that.. |
@rarkins react has an open pr on the demo repo. Just so you are aware, I guess you can test now? |
Reproduction forked to https://github.com/renovate-reproductions/24459 |
Not sure if you still need some live repositories to investigate, but here's an example of one : https://github.com/Hebilicious/vue-query-nuxt/blob/main/package.json Note that I'm using a |
I've created the most simple repository for reproducing this: https://github.com/simonknittel/renovate-bun-workspaces You'll see a |
Missing support for Bun workspaces (see renovatebot/renovate#24459).
Used the same repro from @simonknittel but only added internal dependency from the root package. In this case, Renovate doesn't create any PR and dashboard detects dependencies like this:
|
Latest reproduction forked to https://github.com/renovate-reproductions/24459b |
Is there a workaround? Is it possible to force Renovate through the configuration to use bun instead of npm? |
No |
This comment was marked as spam.
This comment was marked as spam.
Bun now supports a text-based lockfile starting as of version 1.39.0 |
@sebastianbuechler are you sure that PR adds any workspace specific logic? |
I think you misunderstood. I'm not claiming that it adds any workspace-specific logic, but it can be relevant for this feature as it's the implementation of the support for text-based lockfile mentioned previously by @Punie. This seems relevant as Renovate does not seem to be able to handle the binary bun.lockb file as mentioned by @simonknittel which would be the basis for workspace support. |
Is there anything currently blocking this issue from being addressed? I'd be happy to help. |
I've written most of the logic for this and pushed into this WIP branch: https://github.com/renovatebot/renovate/compare/feat/24459-bun-workspaces-wip?expand=1 @nicksrandall please feel free to take over and submit a PR based on this work Remaining to be done:
I've tested only against the reproduction here: https://github.com/renovate-reproductions/24459b/pulls?q=sort%3Aupdated-desc+is%3Apr+is%3Aopen |
Describe the proposed change(s).
Use the
workspaces
field inpackage.json
to detect workspace package.json filesThe goal would be that a reproduction like renovate-reproductions/24459b#3 would show all three package files as "bun" and none as "npm".
Likely all work is contained to https://github.com/renovatebot/renovate/tree/main/lib/modules/manager/bun
Today Renovate's bun manager:
What needs to be done is:
lockFiles
correctly points to the top level lock fileThis alone may be enough for it to work.
The text was updated successfully, but these errors were encountered: