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

Separate bun from npm_and_yarn as an Independent Ecosystem #11559

Merged
merged 12 commits into from
Feb 12, 2025

Conversation

kbukum1
Copy link
Contributor

@kbukum1 kbukum1 commented Feb 12, 2025

What are you trying to accomplish?

This PR separates bun from the npm_and_yarn ecosystem and establishes it as an independent ecosystem within Dependabot.

  • What?

    • Introduces a dedicated dependabot-bun package.
    • Moves all bun-related logic from npm_and_yarn to a new structure under bun folder.
    • Updates dependencies to ensure dependabot-bun is built separately.
  • Why?

    • We aim to maintain a one-to-one mapping between ecosystems and package managers instead of grouping multiple package managers under a single ecosystem.
    • This improves modularity, precision, and maintainability, making it easier to develop and manage updates for each package manager independently.

Anything you want to highlight for special attention from reviewers?

  • This change ensures that dependabot-npm_and_yarn remains intact while bun is extracted.
  • Future-proofing for further separation of npm, pnpm, and yarn is considered but not implemented yet.

How will you know you've accomplished your goal?

  • dependabot-bun builds successfully as a standalone gem.
  • Tests pass for Bun without affecting npm_and_yarn.
  • The new Bun structure follows the existing Dependabot ecosystem architecture.

Checklist

  • I have run the complete test suite to ensure all tests and linters pass.
  • I have thoroughly tested my code changes, including additional tests for new functionality.
  • I have written clear and descriptive commit messages.
  • I have provided a detailed description of the changes in the pull request, including the problem it addresses and implementation details.
  • I have ensured that the code is well-documented and easy to understand.

bun/lib/dependabot/bun.rb Dismissed Show dismissed Hide dismissed
bun/lib/dependabot/bun/file_updater/package_json_preparer.rb Dismissed Show dismissed Hide dismissed
bun/lib/dependabot/bun/registry_parser.rb Fixed Show fixed Hide fixed
bun/lib/dependabot/bun/requirement.rb Dismissed Show dismissed Hide dismissed
bun/lib/dependabot/bun/update_checker/registry_finder.rb Dismissed Show dismissed Hide dismissed
bun/lib/dependabot/bun/update_checker/registry_finder.rb Dismissed Show dismissed Hide dismissed
bun/lib/dependabot/bun/update_checker/registry_finder.rb Dismissed Show dismissed Hide dismissed
bun/lib/dependabot/bun/version.rb Dismissed Show dismissed Hide dismissed
@markhallen
Copy link
Contributor

We successfully ran:

./bin/docker-dev-shell bun --rebuild, and

./bin/dry-run.rb bun dsp-testing/dependabot-bun-public --updater-options=enable_bun_ecosystem --enable-beta-ecosystems

Dry run output
 => bump @types/bun from 1.1.16 to 1.2.2

  ± bun.lock
  ~~~
  --- /tmp/original20250212-673-tax0if        2025-02-12 10:20:52.844631126 +0000
  +++ /tmp/updated20250212-673-whgf1u 2025-02-12 10:20:52.844631126 +0000
  @@ -18,7 +18,7 @@
       },
     },
     "packages": {
  -    "@types/bun": ["@types/[email protected]", "", { "dependencies": { "bun-types": "1.1.43" } }, "sha512-E+ue6NMcn4FXC5bDRE1W/BXUVs01h5Mt02qH8/8HGCox9akuh8KNOFdwvaQS9TDgT2RmUyJYFRRqA60WtTnm2g=="],
  +    "@types/bun": ["@types/[email protected]", "", { "dependencies": { "bun-types": "1.2.2" } }, "sha512-tr74gdku+AEDN5ergNiBnplr7hpDp3V1h7fqI2GcR/rsUaM39jpSeKH0TFibRvU0KwniRx5POgaYnaXbk0hU+w=="],
   
       "@types/node": ["@types/[email protected]", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-scnD59RpYD91xngrQQLGkE+6UrHUPzeKZWhhjBSa3HSkwjbQc38+q3RoIVEwxQGRw3M+j5hpNAM+lgV3cVormg=="],
   
  @@ -176,7 +176,7 @@
   
       "vary": ["[email protected]", "", {}, "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="],
   
  -    "@types/bun/bun-types": ["[email protected]", "", { "dependencies": { "@types/node": "~20.12.8", "@types/ws": "~8.5.10" } }, "sha512-W0wCtVH+bwFp7p3Zgs03CqxEDmXxEvmmUM/FBKgWIv9T8gyeotvIjIbHzuDScc2DphhRNtr7hJLCR5PspYL5qw=="],
  +    "@types/bun/bun-types": ["[email protected]", "", { "dependencies": { "@types/node": "*", "@types/ws": "~8.5.10" } }, "sha512-RCbMH5elr9gjgDGDhkTTugA21XtJAy/9jkKe/G3WR2q17VPGhcquf9Sir6uay9iW+7P/BV0CAHA1XlHXMAVKHg=="],
   
       "send/encodeurl": ["[email protected]", "", {}, "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w=="],
   
  ~~~
  3 insertions (+), 3 deletions (-)
🌍 Total requests made: '32'

@markhallen markhallen marked this pull request as ready for review February 12, 2025 10:49
@markhallen markhallen requested a review from a team as a code owner February 12, 2025 10:49
markhallen
markhallen previously approved these changes Feb 12, 2025
@markhallen markhallen force-pushed the kamil/seperate_bun_from_npm_and_yarn branch from 8eb0a5c to 3ecefa3 Compare February 12, 2025 15:31
markhallen
markhallen previously approved these changes Feb 12, 2025
robaiken
robaiken previously approved these changes Feb 12, 2025
abdulapopoola
abdulapopoola previously approved these changes Feb 12, 2025
@kbukum1 kbukum1 dismissed stale reviews from abdulapopoola and robaiken via 82c9e54 February 12, 2025 20:18
@kbukum1 kbukum1 merged commit 07c26c1 into main Feb 12, 2025
125 of 132 checks passed
@kbukum1 kbukum1 deleted the kamil/seperate_bun_from_npm_and_yarn branch February 12, 2025 21:12
@kbukum1 kbukum1 self-assigned this Feb 14, 2025
@markhallen markhallen mentioned this pull request Feb 18, 2025
5 tasks
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

Successfully merging this pull request may close these issues.

4 participants