René's URL Explorer Experiment


Title: feat(scan): unified auto-update engine — --sync, --prune, --dry-run (v3.0) by mikolalysenko · Pull Request #79 · SocketDev/socket-patch · GitHub

Open Graph Title: feat(scan): unified auto-update engine — --sync, --prune, --dry-run (v3.0) by mikolalysenko · Pull Request #79 · SocketDev/socket-patch

X Title: feat(scan): unified auto-update engine — --sync, --prune, --dry-run (v3.0) by mikolalysenko · Pull Request #79 · SocketDev/socket-patch

Description: Summary Makes socket-patch scan the single-command auto-update engine for bots / cron jobs / CI workflows. MAJOR bump 2.1.4 → 3.0.0 driven by new flags + the per-patch "updated" action vocabulary. socket-patch scan --json --sync --yes | jq '{ applied: [.apply.patches[] | select(.action == "added" or .action == "updated") | .purl], pruned: .gc.prunedManifestEntries, bytes_freed: .gc.bytesFreed }' # Pipe into peter-evans/create-pull-request to open a PR with the changes. What this PR adds Discovery + apply (existing): --apply flag opts JSON mode into the full discover → select → apply pipeline. Top-level updates array always lists PURLs whose UUID would change vs the local manifest. Per-patch action vocabulary: "added", "updated" (with oldUuid), "skipped", "failed". decide_patch_action / detect_updates pure helpers + 12 unit tests. Opt-in GC (new in v3.0): --prune opts into garbage collection: removes manifest entries for uninstalled packages, sweeps orphan blob/diff/package-archive files. Off by default to preserve manifest state across temporary uninstalls. --sync is sugar for --apply --prune — the canonical single-flag bot invocation. --dry-run / -d previews --apply / --prune / --sync actions without mutating disk. Emits apply.patches[*] populated via decide_patch_action and gc.prunable* / gc.orphan* via the cleanup helpers' built-in dry-run mode. detect_prunable, GcSummary, run_apply_gc, preview_apply_gc helpers + 5 unit tests. repair / gc remain first-class: The gc visible alias on repair stays. Both appear in socket-patch --help. Use repair / gc for cleanup-without-apply; use scan --sync for the combined workflow. 3 contract tests guard the visible_alias from regressing. e2e tests + CI: New tests/e2e_scan.rs with 11 #[ignore] scenarios against the real Socket API (mirrors tests/e2e_npm.rs). Covers added/updated/skipped, default-no-prune, --prune flag, orphan blob cleanup, --sync full lifecycle, --dry-run non-mutation, GC field omission contract. CI matrix gains e2e_scan slots on ubuntu + macos. Workspace v3.0.0: Cargo.toml bumped 2.1.4 → 3.0.0; scripts/version-sync.sh 3.0.0 propagated to all 16 npm wrappers + pypi. Drive-by Windows path-traversal fix in socket-patch-core (PR #67 had a latent gap exposed when CI re-enabled). CI tightened: macOS added to test matrix, test-release job added, explicit cargo build step before tests. Breaking changes (MAJOR) scan --apply per-patch JSON: "action": "added" may now be "action": "updated" with an oldUuid field when the PURL already had a different UUID. Scripts that hard-coded action == "added" break. repair/gc is no longer needed for the combined workflow — bots should switch to scan --sync. Both repair and gc still work for cleanup-only invocations. How a bot uses this socket-patch scan --json --sync --yes > scan-result.json Exit code: 0 on full success, 1 if any apply.patches[*].action == "failed" (top-level status becomes "partial_failure"). A bot can pipe the JSON through jq and into peter-evans/create-pull-request (or its equivalent) with a summary of what changed. Tests (all green) cargo build --workspace --all-features ✓ cargo clippy --workspace --all-features -- -D warnings ✓ cargo test --workspace --all-features ✓ 416 lib tests in core 100 lib tests in CLI (severity_order, detect_updates, detect_prunable, decide_patch_action) 30 in cli_parse_scan (parser snapshot + subprocess JSON-shape) 18 in cli_parse_repair (parser + visible-alias contract) 11 in tests/e2e_scan.rs (#[ignore], run with --ignored) Test plan cargo build/clippy/test --workspace --all-features Smoke: socket-patch --help shows repair [aliases: gc] Smoke: socket-patch scan --help documents --apply, --prune, --sync, -d/--dry-run CI: e2e_scan matrix passes on ubuntu + macos (real Socket API) Reviewer to confirm v3.0 semver bump is appropriate Assisted-by: Claude Code:claude-opus-4-7

Open Graph Description: Summary Makes socket-patch scan the single-command auto-update engine for bots / cron jobs / CI workflows. MAJOR bump 2.1.4 → 3.0.0 driven by new flags + the per-patch "updated" action vo...

X Description: Summary Makes socket-patch scan the single-command auto-update engine for bots / cron jobs / CI workflows. MAJOR bump 2.1.4 → 3.0.0 driven by new flags + the per-patch "updated" a...

Opengraph URL: https://github.com/SocketDev/socket-patch/pull/79

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:fe0cd1d8-5092-3506-1193-ebae2a23e6b2
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idE16E:1F0B:BE10BF:FF0CC8:6A4EE974
html-safe-nonce876e956966da853dad86ef6b76d73e637a51286efd4274b8125e08a0dcdcae3f
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFMTZFOjFGMEI6QkUxMEJGOkZGMENDODo2QTRFRTk3NCIsInZpc2l0b3JfaWQiOiI2Nzk4MTY4NTcyNTU0MDQ1ODEyIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac27a7ed1b8e669ae154c559bfc5a12c61b4cc169a092185abd4f291244b8286ae
hovercard-subject-tagpull_request:3719334637
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/SocketDev/socket-patch/pull/79/files
twitter:imagehttps://avatars.githubusercontent.com/u/231686?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/231686?s=400&v=4
og:image:altSummary Makes socket-patch scan the single-command auto-update engine for bots / cron jobs / CI workflows. MAJOR bump 2.1.4 → 3.0.0 driven by new flags + the per-patch "updated" action vo...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Noned12176b31601daf8d3de9a378cbbcf7dac6f33d990d1faedcb9c9b9ff3cbb1ed
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/SocketDev/socket-patch git https://github.com/SocketDev/socket-patch.git
octolytics-dimension-user_id69326764
octolytics-dimension-user_loginSocketDev
octolytics-dimension-repository_id1093661456
octolytics-dimension-repository_nwoSocketDev/socket-patch
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1093661456
octolytics-dimension-repository_network_root_nwoSocketDev/socket-patch
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release9420180b23897f48b04b8d47ee8b1a9341197b64
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/SocketDev/socket-patch/pull/79/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FSocketDev%2Fsocket-patch%2Fpull%2F79%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FSocketDev%2Fsocket-patch%2Fpull%2F79%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=SocketDev%2Fsocket-patch
Reloadhttps://github.com/SocketDev/socket-patch/pull/79/files
Reloadhttps://github.com/SocketDev/socket-patch/pull/79/files
Reloadhttps://github.com/SocketDev/socket-patch/pull/79/files
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
SocketDev https://github.com/SocketDev
socket-patchhttps://github.com/SocketDev/socket-patch
Notifications https://github.com/login?return_to=%2FSocketDev%2Fsocket-patch
Fork 0 https://github.com/login?return_to=%2FSocketDev%2Fsocket-patch
Star 3 https://github.com/login?return_to=%2FSocketDev%2Fsocket-patch
Code https://github.com/SocketDev/socket-patch
Issues 1 https://github.com/SocketDev/socket-patch/issues
Pull requests 1 https://github.com/SocketDev/socket-patch/pulls
Actions https://github.com/SocketDev/socket-patch/actions
Models https://github.com/SocketDev/socket-patch/models
Security and quality 0 https://github.com/SocketDev/socket-patch/security
Insights https://github.com/SocketDev/socket-patch/pulse
Code https://github.com/SocketDev/socket-patch
Issues https://github.com/SocketDev/socket-patch/issues
Pull requests https://github.com/SocketDev/socket-patch/pulls
Actions https://github.com/SocketDev/socket-patch/actions
Models https://github.com/SocketDev/socket-patch/models
Security and quality https://github.com/SocketDev/socket-patch/security
Insights https://github.com/SocketDev/socket-patch/pulse
Sign up for GitHub https://github.com/signup?return_to=%2FSocketDev%2Fsocket-patch%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2FSocketDev%2Fsocket-patch%2Fissues%2Fnew%2Fchoose
Mikola Lysenko (mikolalysenko)https://github.com/mikolalysenko
mainhttps://github.com/SocketDev/socket-patch/tree/main
feat/scan-apply-jsonhttps://github.com/SocketDev/socket-patch/tree/feat/scan-apply-json
Conversation 2 https://github.com/SocketDev/socket-patch/pull/79
Commits 42 https://github.com/SocketDev/socket-patch/pull/79/commits
Checks 42 https://github.com/SocketDev/socket-patch/pull/79/checks
Files changed https://github.com/SocketDev/socket-patch/pull/79/files
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
feat(scan): unified auto-update engine — --sync, --prune, --dry-run (v3.0) https://github.com/SocketDev/socket-patch/pull/79/files#top
Show all changes 42 commits https://github.com/SocketDev/socket-patch/pull/79/files
d8cd74e feat(scan): add --apply + structured updates for auto-update bot work… mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/d8cd74ef081a422aa9595f2c06b7728d013a577a
9b02f02 feat(scan)!: garbage-collect on scan + hide gc subcommand (v3.0) mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/9b02f02f16a89f2b881da07d0e14ec9db29057b2
9acc3f3 test(scan): add e2e_scan test suite + CI matrix entry mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/9acc3f34bd3c2fcc8688b49f75f787c2ecda81d8
a15573c docs(scan): document v3.0 GC behavior + repair deprecation mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/a15573c026c317b8df0d094b452910ee38c84d74
0d36e2b fix(scan): auto-select in JSON --apply when multiple free patches exist mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/0d36e2b52aaa15367732ac564cfc8fc048e89b5f
b2869ad fix(scan): run apply-mode GC even when no packages have patches mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/b2869ad2035c5fff831bc69cf9e1006a77b370c4
745a968 feat(scan): pivot GC to opt-in via --prune + add --sync and --dry-run mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/745a96836d6ab25429606ad84545483d9c6e73a6
8351f99 revert(repair): restore gc as a documented subcommand mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/8351f9947ceaefc1178b086966b402c4c77f859b
a900519 test(scan): update parser + e2e tests for opt-in GC mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/a900519164f4755661629ba533ec634e34da055a
2cca02e docs(scan): document --prune/--sync/--dry-run + un-deprecate gc mikolalysenko May 20, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/2cca02edbb5605f8a26d49612bff7f0d03076d33
db8ebd2 chore(hardening): pin toolchain, deps, actions, and install bootstrap mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/db8ebd2c5df23a664949d02b0f09cd678c6e09e9
704bea5 feat(cli)!: non-mutating apply + unified JSON envelope (v3.0) mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/704bea5ae4988d1b68523f7b87d1b5f817ae5bcc
c4ddf1b test: comprehensive in-process + subprocess test suite mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/c4ddf1bb29137fdef20536f30d9e43cd24234361
5f71a94 ci: add coverage job, language version pins, and e2e-docker matrix mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/5f71a949366ee57323d1a04eaaae679c9a50ee3c
0bcd28c test(docker-e2e): infrastructure + npm full install→apply chain mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/0bcd28c51cce9f31ef8398f8630857c3166f70a5
cfa28e5 test(e2e): full install→apply chain for pypi in Docker (+ global) mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/cfa28e53237daa41f999c8bc792819507eaf97d4
dd0853c test(e2e): full install→apply chain for gem in Docker (+ global) mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/dd0853cc4402849cb323361d765f59c511f8a290
81f0558 test(e2e): full install→apply chain for cargo in Docker mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/81f0558b12c80c0be45d7af0b40232ec4b04c282
88883df test(e2e): full install→apply chain for golang in Docker mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/88883df0a6e0577c407740cad9c910248b5e348b
3f5f62d test(e2e): full install→apply chain for maven in Docker mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/3f5f62da2ddb061b014616bf266aa3e275dc325d
52f1c39 test(e2e): full install→apply chain for composer in Docker mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/52f1c39a25248da51a59d9fff188661f7f6fd588
3fdfb53 test(e2e): full install→apply chain for nuget in Docker mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/3fdfb53456c16c35676881b20eda43928b3a872e
ba05410 test(e2e): add npm global install variant in Docker mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/ba05410aef68e511685279567463f32497b8a0dc
f98e89e test(e2e): add composer/maven/nuget Dockerfiles mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/f98e89e769c6275cd012b5fa500886ee6261812c
8015834 ci(coverage): include docker-e2e in the coverage map mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/8015834440faedb185b0a6bdbd669ddc7399f157
25aa3b8 ci: remove cargo cache from docker-image-building jobs mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/25aa3b81c8af7ae0ad4d2f04fd0e4b7c00bd2204
643c47c ci: provide explicit toolchain input to dtolnay/rust-toolchain mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/643c47c15523700f87164269e7477158bcaf739a
54bfb0a ci: drop dtolnay/rust-toolchain in favor of inline rustup mikolalysenko May 21, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/54bfb0a63910f5aea9ba9deaa3e95fd9cd863205
c04f68c refactor(cli): unify CLI args + env-var bindings across every subcommand mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/c04f68cb41b2fd64a7dc381a3592d502786aece8
704936a docs(changelog): add CHANGELOG.md + CI guard blocking publish without… mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/704936a469dee625e70c4ebb2319d6c56d0e850f
a2e193b ci(test): unbreak test/coverage/e2e-docker matrix on feat/scan-apply-… mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/a2e193bc26e6cce1e4dc3ddf95fdd693abb00ec1
8666684 ci(coverage-docker): pin to ubuntu-22.04 for glibc compatibility mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/86666842c392c42d72f7f2d9231275332900a396
b1f5bb3 test(npm): connect via 127.0.0.1 in infrastructure smoke (Windows fix) mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/b1f5bb3759079452f67c2a3d0dc4992af7dcf0ee
8f7df98 test(pypi): skip in_process_pypi_apply on Windows (Unix venv layout) mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/8f7df98f62c73d1213bec1036c6fe64978e70afc
c1a154f test(pypi): make in_process_pypi_apply helpers platform-aware (Windows) mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/c1a154f15ead411ae346be7e0f2691cb4971fc2d
6d52330 test(rollback): use Windows venv layout when cfg!(windows) mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/6d523302ed1d13450a6184b8b546849b31dd2c75
db0f5fc feat(json): enrich added/updated patch records with description, seve… mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/db0f5fc39f3d64c4f84c41674268666c101c87c6
ed04403 test(e2e): walk the v3.0 envelope for `list --json` output mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/ed04403cc7ea1ea5971bcfe5d64450d4573b7547
833e80e ci(e2e_gem): bump pinned ruby from 3.2.11 to 3.2.10 mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/833e80efe70265ee5e5e1ce9bc6b41ab801892a9
d96f110 refactor(cli): drop -d/-m short aliases; loosen version pins mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/d96f11096df147ec8f57d8eb2205b3bfc1eeb70a
8333162 feat(apply): preserve mode + ownership across patches mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/833316291cd3ffa0283d40f435cafd30535b6c94
c624c32 ci(e2e_gem): revert ruby-version to exact 3.2.10 mikolalysenko May 22, 2026 https://github.com/SocketDev/socket-patch/pull/79/commits/c624c32fc340c75e68e2f340cad99f96fc2aef68
Clear filters https://github.com/SocketDev/socket-patch/pull/79/files
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
ci.yml https://github.com/SocketDev/socket-patch/pull/79/files#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03f
pin-check.yml https://github.com/SocketDev/socket-patch/pull/79/files#diff-54c8237649539fff1143ea70723468ee468a9ce3f583c13010b4f41ae8f517eb
release.yml https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
CHANGELOG.md https://github.com/SocketDev/socket-patch/pull/79/files#diff-06572a96a58dc510037d5efa622f9bec8519bc1beab13c9f251e97e657a9d4ed
Cargo.lock https://github.com/SocketDev/socket-patch/pull/79/files#diff-13ee4b2252c9e516a0547f2891aa2105c3ca71c6d7a1e682c69be97998dfc87e
Cargo.toml https://github.com/SocketDev/socket-patch/pull/79/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542
README.md https://github.com/SocketDev/socket-patch/pull/79/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
CLI_CONTRACT.md https://github.com/SocketDev/socket-patch/pull/79/files#diff-f4377a7f0221c73c8e1c3a219f5dbd8ee64094eb7786841ecea88ccd22daf130
Cargo.toml https://github.com/SocketDev/socket-patch/pull/79/files#diff-d975fab3956058ba8cc187ef25733f371f85ac13917e77e0bfa4c40c73ba5f7b
args.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-08d6a874e759ddf99e7b180428e440a94146a1e79933ef5024c867ef0551ba08
apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-613e6131c3d7005ade62351d4f879e7c817bafdc2f6d6fdd87e2b259bebfb9bf
get.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-ab141f0dfc26b35a483b70780ec703f5f1047866eaf1d3ccf9182fc5cdea164f
list.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-808f74b0c8422b914537c7fbdc380059d5bf4a4a60fe317d2d850a43a6448a8f
remove.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-37716ed3bf0ced8c6011d60b918d7bf9ab7b8a118ce8245507dfe9332e54b27c
repair.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-cc48894cd3c0ab1d1fbdaae98591be3e7ab527d344e47eeafb2f7c0783391c35
rollback.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-49bed4b7989d1153ce40e98f6686a0343d4aef1e9a8f241abfb0d6e006cda233
scan.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-1883639b2a07e6683c0c3a298c8a3883c627db76c610a78bfe7c235d6d5dc916
setup.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-b7839b8c6a3cb91aa9d682cba53ffde01f7462ecdb06b7da1fe7b216172416a3
ecosystem_dispatch.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-b4621fd545be96d70879527496ba97342c59039dfb7683fbf42fdd3396dce794
json_envelope.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-68353e126471798e14b168b1dfeb941398f9b2e6988b0ddda75b61c0e43e3dd4
lib.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-d4989724ce35f9d98a4444f57ad1c5aa8e4d19c2e55380b6cb39cf1e3139ffc8
main.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-df6d5aa728e15b07a84996ad4e4dc5ddc46be7d2a186da53c67257c729fe33e7
api_client_errors_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-0b00e008a8947941699791f32b25c9ef0b066f71105e9efeef48ea17367c1530
apply_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-f277b2c9711c6706df21580ee1f0cb8951a30c6dfdeee1478d13a76b4f3d0264
apply_network.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-39cb4c38bebd32d51c05889dcc8568bd155315c2ed445b6ffe978fc524e95659
cli_env_deprecation.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-38fd9eb79b62a9aa5b22b2a5c7a9da14bd06bc3964131727733069a894d7c073
cli_global_args.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-e88cb338fd770f44ed8b4622a2090e5198b28a9c259cb4d2fa9bc3075b3c79b9
cli_parse_apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-62f501ed807ac45422118697ee825821e24d6d0717739d3b98ca24a4849b8983
cli_parse_get.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-7796373957fac18901e1220f110b93b956981ba0e265a1765531dab868c4c17b
cli_parse_list.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-f4a4c970d20eb304c28cf6b43dda6cd69f77c3ec5899cb1a862487fb1a026e63
cli_parse_remove.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-044e91597378550728a908129405a1c77da59e2da52da040bf50e65200018db6
cli_parse_repair.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-79b172dd73c7f193e00045c3d2504e4aa4f7b15d87c0b2a30319c56a9f0bb05b
cli_parse_rollback.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-c2c93f8859273c59c0ae99425d5ca5f670d97d2384d49335c431f198544ab493
cli_parse_scan.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-81e57ea8e647d6a77d9cfe62c098429ec2e8a829bd153f1c44758a13b6f1de66
cli_parse_setup.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-f31e445d27c4789742541e92cb258ed85d79d70131d5eace50ec51118eb8d632
docker_e2e_cargo.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-49d82e7d70ff0b03179924d272faeeaa71da6f180c55e6e700925a1bf3a92c94
docker_e2e_composer.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-93ba38898ab1de6b5865cd311efceb60c504828a6eb7295491ca7aa8b6856006
docker_e2e_gem.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-98a2fe79341a76b5c65e634c3fa93baeeb956cf937b779da1c5e3ccc0e70cbe1
docker_e2e_golang.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-1862334545b90e8bb0f4d16bf8ec6ce7d58b550ccb55c4bb1974b8edda752c82
docker_e2e_maven.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-222c533dc1de15e24e309758340525ac167dd51eb9d5fb8c624556a3815c5a75
docker_e2e_npm.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-a109145dab9df91dc28651a17ace4cf99f19777b7c1d3c22b6cf35f0e459b023
docker_e2e_nuget.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-a72ac7673b7047f9d148229c5616810a093471ba45d588461a4c88795dde0c89
docker_e2e_pypi.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-818804a86a7f3afa0f30450b516a0ceb4c9f1b623ad1c5dc8f044c61933ad2f0
e2e_gem.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-2e732b68d2aa12b294245e84b4497b1058af5c28fbc69e9888a64768cf59ee50
e2e_npm.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-dbeb3517a42e10933ec3b8ff1ced7696323360e54a9a20e61e45822faa353e59
e2e_pypi.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-3b36c957542a0a8cfe206119aef2c51aefc46b002ec72c7f285cb2c91ddce65a
e2e_scan.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-5df65d7ab10772f2fa6e46f140b304d063ff6a0ee18e30a5712b6c178eff81d7
ecosystem_dispatch_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-f002076c4005fb5d7c25eb37c31b72ccfaa6ff42288f1f917d945502a5c6e66f
get_edge_cases_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-81332e76b6389ca6a14d88d300fe9b6917b866e276474e229e41c6fea411ff7d
get_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-041a96e4c50df7791cada0a01fd6d27894a20446978bced9b98bdb24cea9ed14
global_packages_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-9529a430330a3b7c999522dd71bf2d2a9e34a61a0c77e812d9c7afdb7c84144f
in_process_alternate_installers.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-3afdca356e095391cd93beb560b43593f23930029903221c5f91984aff879044
in_process_cargo_apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-1eabbfaaaec0dd79899aa282dca20b18055b15ae1f578498bed8281c0d7beac5
in_process_edge_cases.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-8effe9dc4cc40704712d62e17aa67e79e809a1d9926b607f676f72e437e29d30
in_process_gem_apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-c6a3192b6444159f29b0362a60743bb8f008f65572c0f571cfd537fab7622631
in_process_get.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-5b00d32bdf7cb1ab59338110897a66052c731e28d9cf25faa6e6e1a5bdb65033
in_process_pypi_apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-dd96ee7eae11e048bdd4c7709167b350c4e283515ee8e45b6308a54dc5b06284
in_process_python_envs.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-8ee100e1c3a933480dcbb7e4041300936b2543a30343dc05abcb5f6774683204
in_process_remote_ecosystems_apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-4c5bba315d1a797e14ba7ca3eb51e1e1648b67464dd0afce3a84f67d964b35e4
in_process_remove_repair_lifecycle.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-b0b6649d535956fd73980e26db76e2581b70a1cd1a2ca40f28631b1ac6efad03
in_process_rollback_all_ecosystems.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-78ed2f874b73cdf659a422dab05273140225bce7d3a62f64efa42857398fdb6c
in_process_scan.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-2506bf381b347f284c8933f5bbce7af8abe9bb43f1663275ea75e0de9743f1ef
interactive_prompts_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-65d5b3447fff957592a1df7d77d879c844a948c574c6fb24b9123d076caa094c
output_modes_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-006c4e492addc4128c03ba5c0f6c3eaebfe5ec637b7f96c16a977d3678b26576
remove_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-5ce151b5bf734eab776241c3febe2885b30e984dbd81f9e81a351a32b6182be1
repair_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-b158c4b27a860f7cc6022200818c5c5bbb610f4efee2193ed684a8b32ac88f39
rollback_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-92e50accfbfd0a627aa86e3a4b569ed6a8957daab1a85323f0b1a33f84510d2e
scan_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-0a08f9f7d5200e1039587b7116b7eccdf3e3b59599e76a67518d6f3b3b8c71b8
scan_sync_e2e.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-4f4f668bee1ee0b455149cb134ba478b0f82626c395aed600ce9bd371da2aea9
setup_invariants.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-8328057aa6fe2f38faff7f868d1714ee94bb0c56237713cca2a6c37e7f1c2215
Cargo.toml https://github.com/SocketDev/socket-patch/pull/79/files#diff-a81507369039f3a413794988076d51498643b101e44f83ae022d7a92eef32e70
client.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-652ed2c2a64b0ce6c9a28de4700183473d9a456a105a06c6e0e1ab5251dfad0c
maven_crawler.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-6f8bf895d8a7baeaf1913ea7fdb408274063fb7427a9d448cf5aa16a4993f706
apply.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-fb7cb956a53ea36114f8f20652934dd030bd001b5df3f530da11b60dd09062ac
cleanup_blobs.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-f8b140336400afbbbfac403cd4363062637f075f677ac1273e492813030fb9e8
enumerate.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-01f5b2b1bd18c17b6947b55be878dbea12b2939b63386dd65c8e8202766c1bca
env_compat.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-e366efa33f3748ea3fca1beb7cacbd9c30a2980d8cec040326f2d966d68f0e1a
global_packages.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-8d396d2fcbd3565550935722a7f63acfec39f38ac2afa06afef23bafb4ad2c9d
mod.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-adc0fa42bf59c145678dc70e62a62a3d0b7c12dba9e5cc5ce224b56c1126a121
telemetry.rs https://github.com/SocketDev/socket-patch/pull/79/files#diff-ae93ad10cb6df2b6812e021c9170bf85fea1cad3e0940d1b47caccbe9508b22b
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-1cb760691855572d34e7acfcae3d2172362fd24e606e5e784978ffcff457a7e1
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-ac009a30804ac5f44392fcf5231119ad3a58624c5463692c65cd465ee40c2f5d
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-76389b180e98fd8f5e31f70290b67ef108fcc4c4ac84bca381d71ac74ac4be19
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-79f4e13ee7ab412e53f752c31aac58da49cb034803be463d28c74de56670d190
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-655249be2f586d496ebdd23535c62c7325387beb1a39a1ec021523855ebcf7e8
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-2465f3728e9b114f7c6b80d2455fcac326310ceb23b581af558797cd22ee727f
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-6d87f6bd5c32bb62f0ab65128ba99f9921a876801ec4342692a49f5981b9c11b
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-710591946c27d0929e6dec64eee13761a229cd1b0fb0f35dd1d67c13c0bf9b1d
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-177ea479df8127557283cedacf119ce30fa5ae7e1f4aeb3ab102d54805c24b41
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-226284efd0c8ac1aa7f0556f81d82694e5a46c0bded0a7170d84c8b483a8db91
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-272487506ef9d5ae857ac7b3ada3682842189fbd9dc7aa067d7e4cbef0a6c482
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-d73cfc02ed8c9388fb0fb39804e4d32352eb3aded451e0582cafe8d5dd26dd52
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-eea985f60a1ce1cd924a3e25b0480ff76eeec6379635ed2658b683f118e50a2a
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-ddab3fbc93620a892e37c50741c1a3d4b761a0a704a23cd96e270850838da86b
package-lock.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-ebf62622d1f239139c0069ddde05a5742c1ce6b5ea7c4e1cc242c65f9a671a76
package.json https://github.com/SocketDev/socket-patch/pull/79/files#diff-e303b4a25fd05c60a664eb6ea4180208292d4caea8c2622e07f236544e66e03a
pyproject.toml https://github.com/SocketDev/socket-patch/pull/79/files#diff-84bfdd7a683a531ddbc66313fc90931e202a4d9af7cabf629688119db43b6d58
rust-toolchain.toml https://github.com/SocketDev/socket-patch/pull/79/files#diff-2b1bde2cf3a858b7bf7424cb8bcbf01f35b94dc80b925d9432cbab3319ca9b4e
install.sh https://github.com/SocketDev/socket-patch/pull/79/files#diff-e076e43cb817ecc8b3c2ed18cd58baa50544ecc66293ed6e61129c43ca6a09cc
version-sync.sh https://github.com/SocketDev/socket-patch/pull/79/files#diff-58c52ca7d83387543e226766224d6bd29fb883004bdf2218f4e500d4fc84c86a
Dockerfile.base https://github.com/SocketDev/socket-patch/pull/79/files#diff-4f2002e0b66e5f81183a460347ba485e396f9dd98f32f0b1ac706bbcbfc96809
Dockerfile.cargo https://github.com/SocketDev/socket-patch/pull/79/files#diff-2b89be55626c01f5638c341db4e87e1a42185347a1f2553f0372cd21f5d542bb
Dockerfile.composer https://github.com/SocketDev/socket-patch/pull/79/files#diff-6a2ace0c092abdc2dc32193d5c7e933ae13f025201b9d3888010a2b3b4e16b2a
Dockerfile.gem https://github.com/SocketDev/socket-patch/pull/79/files#diff-abde70764431c8d1073cd90841835187c692a9cf43a5bd2ec4c74eb506e1ad45
Dockerfile.golang https://github.com/SocketDev/socket-patch/pull/79/files#diff-aef304842a67d5ad30f64b692d24b810ca8017529dcc0163cfa7b70f01460f1d
Dockerfile.maven https://github.com/SocketDev/socket-patch/pull/79/files#diff-0eec422bd7dcf3925be804958ca6531d7e1fd4c9b46f8377879152bfd142f8db
Dockerfile.npm https://github.com/SocketDev/socket-patch/pull/79/files#diff-3d3bd7199ae5b0d2111530154c8a83c94e457bb6c6c7bf5c14bb87c888b6b012
Dockerfile.nuget https://github.com/SocketDev/socket-patch/pull/79/files#diff-fd167ecde035086e2a23ae6d9a3459db77e82f0196935dae6d418abd1ff36532
Dockerfile.pypi https://github.com/SocketDev/socket-patch/pull/79/files#diff-28bb919948e94f6f96509415c50fa4e271063cc5109c45a188526336dc790d6e
README.md https://github.com/SocketDev/socket-patch/pull/79/files#diff-ab07866f6431945aab2745bc62a52b89f799d71143b678a137ccc28f3b282353
README.md https://github.com/SocketDev/socket-patch/pull/79/files#diff-68215d8589af23e5e5232c6631c226d06719f73f0b15d3267f78307958002f48
.github/workflows/ci.ymlhttps://github.com/SocketDev/socket-patch/pull/79/files#diff-b803fcb7f17ed9235f1e5cb1fcd2f5d3b2838429d4368ae4c57ce4436577f03f
View file https://github.com/SocketDev/socket-patch/blob/c624c32fc340c75e68e2f340cad99f96fc2aef68/.github/workflows/ci.yml
Open in desktop https://desktop.github.com
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
.github/workflows/pin-check.ymlhttps://github.com/SocketDev/socket-patch/pull/79/files#diff-54c8237649539fff1143ea70723468ee468a9ce3f583c13010b4f41ae8f517eb
View file https://github.com/SocketDev/socket-patch/blob/c624c32fc340c75e68e2f340cad99f96fc2aef68/.github/workflows/pin-check.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/SocketDev/socket-patch/pull/79/{{ revealButtonHref }}
.github/workflows/release.ymlhttps://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
View file https://github.com/SocketDev/socket-patch/blob/c624c32fc340c75e68e2f340cad99f96fc2aef68/.github/workflows/release.yml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/SocketDev/socket-patch/pull/79/{{ revealButtonHref }}
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
https://github.com/SocketDev/socket-patch/pull/79/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34
CHANGELOG.mdhttps://github.com/SocketDev/socket-patch/pull/79/files#diff-06572a96a58dc510037d5efa622f9bec8519bc1beab13c9f251e97e657a9d4ed
View file https://github.com/SocketDev/socket-patch/blob/c624c32fc340c75e68e2f340cad99f96fc2aef68/CHANGELOG.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/SocketDev/socket-patch/pull/79/{{ revealButtonHref }}
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
Please reload this pagehttps://github.com/SocketDev/socket-patch/pull/79/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.