feat: unflag Ruby gem support and add e2e bundler tests#41
Merged
mikolalysenko merged 4 commits intomainfrom Mar 20, 2026
Merged
feat: unflag Ruby gem support and add e2e bundler tests#41mikolalysenko merged 4 commits intomainfrom
mikolalysenko merged 4 commits intomainfrom
Conversation
Remove the `gem` feature flag so Ruby gem support is always compiled in, matching npm and PyPI which are already default-on. This ensures gem support ships in every release binary built with `cargo build --release`. - Remove `gem = []` from both Cargo.toml feature sections - Remove all `#[cfg(feature = "gem")]` gates from crawler module, Ecosystem enum, PURL functions, and ecosystem dispatch - Rewrite e2e_gem.rs with full bundler lifecycle tests targeting activestorage@5.2.0 (CVE-2022-21831) with 3-file hash verification - Add Ruby 3.2 setup step in CI for e2e_gem suite - Update READMEs to reflect gem as default, not feature-flagged Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
- Move clippy into a dedicated `clippy` job so it runs independently from tests and is separately visible in PR checks - Remove `components: clippy` from the test job (no longer needed) - Fix 2 pre-existing test failures in package_json::update::tests: assertions checked for "socket patch apply" (space) but the SOCKET_PATCH_COMMAND writes "socket-patch apply" (hyphen) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
GitHub org policy requires all actions to be pinned to full-length commit SHAs. Pin ruby/setup-ruby@v1 to its current SHA. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Instead of hardcoded before/after hashes (which were incorrect placeholders), read expected hashes from the manifest after `get` and record original hashes dynamically after install. This matches the pattern used by the pypi e2e tests. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
gemfeature flag so Ruby gem support is always compiled into every release binary (matching npm/PyPI behavior)#[cfg(feature = "gem")]gates across crawler module,Ecosystemenum, PURL functions, and ecosystem dispatche2e_gem.rswith full bundler lifecycle tests targetingactivestorage@5.2.0(CVE-2022-21831, 3-file hash verification)e2e_gemsuiteTest plan
cargo clippy --workspace -- -D warningspasses (gem code always compiled)cargo test --workspacepasses (gem tests no longer need--features gem)cargo test -p socket-patch-cli --test e2e_gemscan tests pass (no network needed)cargo test -p socket-patch-cli --test e2e_gem -- --ignoredfull lifecycle with bundler + APIcargo build --releaseincludes gem support without--features🤖 Generated with Claude Code