| route-pattern | /:user_id/:repository/pull/:id/commits/:range(.:format) |
| route-controller | pull_requests |
| route-action | commits |
| fetch-nonce | v2:584c9ad4-9ef6-9973-1507-9f19de7a55e9 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | DE98:1EB46D:35ED0F1:4783DDB:6A655317 |
| html-safe-nonce | b0610b0314e31b3477559ed865d2ba1ed5ee6f6968ea2421f40dec75aa1ea018 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJERTk4OjFFQjQ2RDozNUVEMEYxOjQ3ODNEREI6NkE2NTUzMTciLCJ2aXNpdG9yX2lkIjoiMjE4NTM2MzI1MTI5MTA1MDc3NSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 293ebc46a603b365aecc102c6c5a553353484187c440483271df26fe0da4a214 |
| hovercard-subject-tag | pull_request:3729846358 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | ///pull_requests/show/commits |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| twitter:image | https://avatars.githubusercontent.com/u/231686?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/231686?s=400&v=4 |
| og:image:alt | Summary
Hardens socket-patch apply against the six failure classes surfaced by a recent audit. Each commit is self-contained, builds clean, and ships with tests.
#
Commit
Defends against
1
f... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 52c76df668885aaff23b50bdca1fa1ea44ac9c1553e888ebc70ff1e4daa4625b |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/SocketDev/socket-patch git https://github.com/SocketDev/socket-patch.git |
| octolytics-dimension-user_id | 69326764 |
| octolytics-dimension-user_login | SocketDev |
| octolytics-dimension-repository_id | 1093661456 |
| octolytics-dimension-repository_nwo | SocketDev/socket-patch |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1093661456 |
| octolytics-dimension-repository_network_root_nwo | SocketDev/socket-patch |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 309153364422b3c499922d1a2a6404910a58ed8e |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| Skip to content | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#start-of-content |
|
| https://github.com/ |
|
Sign in
| https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FSocketDev%2Fsocket-patch%2Fpull%2F80%2Fcommits%2Fe8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| GitHub CopilotWrite better code with AI | https://github.com/features/copilot |
| GitHub Copilot appDirect agents from issue to merge | https://github.com/features/ai/github-app |
| MCP RegistryNewIntegrate external tools | https://github.com/mcp |
| ActionsAutomate any workflow | https://github.com/features/actions |
| CodespacesInstant dev environments | https://github.com/features/codespaces |
| IssuesPlan and track work | https://github.com/features/issues |
| Code ReviewManage code changes | https://github.com/features/code-review |
| Code QualityEnforce quality at merge | https://github.com/features/code-quality |
| GitHub Advanced SecurityFind and fix vulnerabilities | https://github.com/security/advanced-security |
| Code securitySecure your code as you build | https://github.com/security/advanced-security/code-security |
| Secret protectionStop leaks before they start | https://github.com/security/advanced-security/secret-protection |
| Why GitHub | https://github.com/why-github |
| Documentation | https://docs.github.com |
| Blog | https://github.blog |
| Changelog | https://github.blog/changelog |
| Marketplace | https://github.com/marketplace |
| View all features | https://github.com/features |
| Enterprises | https://github.com/enterprise |
| Small and medium teams | https://github.com/team |
| Startups | https://github.com/enterprise/startups |
| Nonprofits | https://github.com/solutions/industry/nonprofits |
| App Modernization | https://github.com/solutions/use-case/app-modernization |
| DevSecOps | https://github.com/solutions/use-case/devsecops |
| DevOps | https://github.com/solutions/use-case/devops |
| CI/CD | https://github.com/solutions/use-case/ci-cd |
| View all use cases | https://github.com/solutions/use-case |
| Healthcare | https://github.com/solutions/industry/healthcare |
| Financial services | https://github.com/solutions/industry/financial-services |
| Manufacturing | https://github.com/solutions/industry/manufacturing |
| Government | https://github.com/solutions/industry/government |
| View all industries | https://github.com/solutions/industry |
| View all solutions | https://github.com/solutions |
| AI | https://github.com/resources/articles?topic=ai |
| Software Development | https://github.com/resources/articles?topic=software-development |
| DevOps | https://github.com/resources/articles?topic=devops |
| Security | https://github.com/resources/articles?topic=security |
| View all topics | https://github.com/resources/articles |
| Customer stories | https://github.com/customer-stories |
| Events & webinars | https://github.com/resources/events |
| Ebooks & reports | https://github.com/resources/whitepapers |
| Business insights | https://github.com/solutions/executive-insights |
| GitHub Skills | https://skills.github.com |
| Documentation | https://docs.github.com |
| Customer support | https://support.github.com |
| Community forum | https://github.com/orgs/community/discussions |
| Trust center | https://github.com/trust-center |
| Partners | https://github.com/partners |
| View all resources | https://github.com/resources |
| GitHub SponsorsFund open source developers | https://github.com/open-source/sponsors |
| Security Lab | https://securitylab.github.com |
| Maintainer Community | https://maintainers.github.com |
| Accelerator | https://github.com/open-source/accelerator |
| GitHub Stars | https://stars.github.com |
| Archive Program | https://archiveprogram.github.com |
| Topics | https://github.com/topics |
| Trending | https://github.com/trending |
| Collections | https://github.com/collections |
| Enterprise platformAI-powered developer platform | https://github.com/enterprise |
| GitHub Advanced SecurityEnterprise-grade security features | https://github.com/security/advanced-security |
| Copilot for BusinessEnterprise-grade AI features | https://github.com/features/copilot/copilot-business |
| Premium SupportEnterprise-grade 24/7 support | https://github.com/enterprise/premium-support |
| Pricing | https://github.com/pricing |
| Search syntax tips | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
| documentation | https://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%2F80%2Fcommits%2Fe8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
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%2Fcommits&source=header-repo&source_repo=SocketDev%2Fsocket-patch |
| Reload | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| Reload | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| Reload | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| Please reload this page | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
SocketDev
| https://github.com/SocketDev |
| socket-patch | https://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
4
| 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
3
| 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 service | https://docs.github.com/terms |
| privacy statement | https://docs.github.com/privacy |
| Sign in | https://github.com/login?return_to=%2FSocketDev%2Fsocket-patch%2Fissues%2Fnew%2Fchoose |
| Mikola Lysenko (mikolalysenko) | https://github.com/mikolalysenko |
| main | https://github.com/SocketDev/socket-patch/tree/main |
| feat/apply-safety-hardening | https://github.com/SocketDev/socket-patch/tree/feat/apply-safety-hardening |
|
Conversation
5
| https://github.com/SocketDev/socket-patch/pull/80 |
|
Commits
72
| https://github.com/SocketDev/socket-patch/pull/80/commits |
|
Checks
43
| https://github.com/SocketDev/socket-patch/pull/80/checks |
|
Files changed
| https://github.com/SocketDev/socket-patch/pull/80/files |
| Please reload this page | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
feat(apply): safety hardening — atomicity, locking, pnpm CoW, sidecars, Maven gate
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#top |
|
Show all changes
72 commits
| https://github.com/SocketDev/socket-patch/pull/80/files |
|
9b898b1
feat(apply): safety primitives — lock, CoW, atomic write, sidecar fixups
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/9b898b1a556f16f29733a1ec9a9920840b2e6c94 |
|
39a2321
feat(cli): wire safety primitives + Maven/NuGet experimental gates
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/39a23215cbe9cddc1c6a3185f67c0694a7647138 |
|
13cbfa7
test(e2e): safety hardening suite + CI matrix + invariant fixups
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/13cbfa7623dd5ca265e1e12a0dbd6b37b99e4f85 |
|
6dc3218
refactor(sidecars): typed envelope contract with structured per-file …
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/6dc3218545ef0046cd5f294f5f14ae8d22241566 |
|
2daa5ac
test(e2e): expand sidecar coverage + simplify PTY harness
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/2daa5ac3efdc30da21eefb3402cb032748240b05 |
|
2b95558
test(e2e): close remaining cargo + nuget sidecar fixup-error arms
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/2b95558d2bc4fd3325167d5a5411a6901f7d3b0a |
|
2d82fac
test(e2e): close internals guards + nuget non-UTF8 iteration arm
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/2d82fac0c2875ab7eabdcaf8aa39976965e55f3e |
|
5c9a5fb
test(e2e): exercise sidecar/cow defensive arms via direct dispatch
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/5c9a5fbbaa5e390da92c807f50e0481aac3f7e5c |
|
09ecc10
test(e2e): cover cow.rs symlink/hardlink/stage-write error arms
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/09ecc10a657df247d1c428c55570d7f39733d5b5 |
|
f7d916d
refactor(sidecars,cow): collapse two dead-arm Result paths
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/f7d916dd85524f4dec0f7435b7772fc95a8dfced |
|
fbbc05c
refactor(nuget,cow): byte-suffix match + ACL test → 100% region cov
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/fbbc05cc4377b590b2d20f0e01e008a5f548435e |
|
4e2f3a1
chore(cleanup): remove dead manifest::recovery + fuzzy_match exports
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/4e2f3a18fbb87be531b57c0ea6ae9776128629a5 |
|
b7c4cca
chore(cleanup): purge dead utils::purl exports + duplicated tests
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/b7c4ccad7d7ca9c40d433ba5e130708e87659b84 |
|
09c9115
chore(cleanup): purge dead envelope builders + summary byte counters
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/09c9115a077e941151f0519ecd44a299b769f44b |
|
4a6d372
test(core): integration coverage for diff + package + fuzzy_match
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/4a6d372dbaf2784c701e73c9faaf99dd1e26f748 |
|
89eb3c1
chore(cleanup): remove dead Ecosystem::purl_prefix + manifest helpers
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/89eb3c1b7e8ebb08ac040c1f29f0520096f49b86 |
|
9dabcb9
chore(cleanup): remove test-only pub helpers (nuspec parser, multi-up…
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/9dabcb92c4cf897b7da33861520a8133a23abd0d |
|
90d2b67
chore(cleanup): drop duplicate utils::purl::build_npm_purl
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/90d2b67df86ad155ba98f43817dc4dd32dad5087 |
|
8d71ea1
chore(cleanup): drop dead utils::env_compat::read_env_either
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8d71ea1d9d744a84eebb3422e2b5050f697fcca7 |
|
c8b7989
chore(cleanup): remove 4 unused .socket/* constants
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/c8b7989b67c1cee9e037407da4a86e4fe3bad77d |
|
6c5d393
chore(cleanup): drop dead telemetry::track_patch_event_fire_and_forget
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/6c5d39388b11731def9b5d6285d75c65eabedb80 |
|
b465992
test(core): integration coverage for rollback new-file + error paths
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/b465992f41630bea904f12100605ce5ad0b5dad0 |
|
0c2bcb2
test(core): integration coverage for blob_fetcher early-return paths
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/0c2bcb2f6009dfb19b9d5907de7228ebf5e0d68e |
|
2b2b4bf
chore(cleanup): silence test-only warnings (unused fixtures + stray a…
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/2b2b4bfa2dba5e1020c992b02eee387ba9216bd2 |
|
6d3dc8e
test(repair): cover --offline + --download-only mutual exclusion
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/6d3dc8e52884c17df52a77bd32f964e3aabe6aab |
|
8843e67
test(apply): cover no-.socket-dir status: noManifest envelope
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8843e673399252d217eda89c718545afb651c420 |
|
fba169a
test(get): cover UUID-by-UUID paid-required path on public proxy
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/fba169a94b2cd69b07cd0fda48846e6737e1d9ca |
|
e39b95b
test(get): batch coverage for get.rs envelope shapes
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/e39b95b4f117063225d4d9c1be83148e09d7447f |
|
edc6803
test(cli): batch --dry-run + empty-manifest path coverage
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/edc680303bceb66ca35c1597946c7f3ecb024fc3 |
|
8e3d042
test(output): integration coverage for ANSI color helpers
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8e3d0428fa3e71022a398fac908db49cd46e919a |
|
a3ebc75
test(blob_fetcher): cover fetch_blobs_by_hash skip-existing branch
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/a3ebc7580dd612d65967ce0b4e84e65a6361484c |
|
8fe8939
test(blob_fetcher): expand to 9 tests covering DownloadMode + sources
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8fe89399badf889950f93313f69a5605295564cc |
|
abc5b44
test(crawlers): empty/missing path early-returns for NpmCrawler
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/abc5b446e6b8d5caae9617b217f43d70553e55c4 |
|
fa3421a
test(crawlers): empty-purl/empty-path branches across all 7 ecosystems
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/fa3421a7a7aefe469b69ba1cfffd05be47ad008c |
|
095377c
test(telemetry): integration coverage for is_telemetry_disabled + san…
mikolalysenko May 22, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/095377c10ed39e12972c3758ec05a5ca18d8ba65 |
|
d01478f
refactor(crawlers): runtime cfg!() to compile-time #[cfg(...)] gates
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/d01478f4d30373f2a05d11e1d987e0ce2f398238 |
|
690e648
test(crawler/python): 14 integration tests for find_python_dirs + ven…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/690e6483c2eb3849e8a70695fe79e1c3e02af4d0 |
|
bd2ca92
test(crawler/nuget): 15 integration tests for find_by_purls + crawl_a…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/bd2ca92d519bebc7f9338e9d93576bf171d99d1f |
|
d65d2f7
test(crawler/ruby): 13 integration tests for find_by_purls + get_gem_…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/d65d2f738ad4a681a49fc175f350109fde8c9780 |
|
3765c93
test(crawler/maven): 16 integration tests for parse_pom + find_by_pur…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/3765c93f50a5fc1e4175fb1cb654dced9f1d9089 |
|
3bcbf31
test(crawler/composer): 12 integration tests for vendor + installed.j…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/3bcbf31aad4b1aef943dd604ea2a036bc2f3000c |
|
73b4f40
test(crawler/cargo): 14 integration tests for parse_cargo_toml + find…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/73b4f409c374c107825488d5060cc85128a4f141 |
|
0a186ea
test(crawler/go): 14 integration tests for encode/decode/parse + paths
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/0a186ea9d66fc16aa5f4bacce7533512f3895f49 |
|
05f226d
test(crawler/cargo): +3 tests for parse_dir_name_version fallback
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/05f226dd4176ac08b63db97ffdbe90598cab361f |
|
dc36eab
test(crawler/npm): 17 integration tests for npm crawler
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/dc36eab25323329b87e7fc2e75f72b904a1d9536 |
|
cb96d0d
chore(crawlers): drop dead NpmPkgManager::as_tag + extend coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/cb96d0d9e953ec873b705f6a580437e82826ea7d |
|
9e110de
test(crawlers): more npm + composer coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/9e110de1a05b6d019fbde13f18cf2f1209430b38 |
|
0f3c39b
test(crawlers): maven + nuget + ruby + go coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/0f3c39bf80082fcd88b17de9a9692a30c54af5fc |
|
97513c9
test(crawlers): python + cargo coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/97513c930d747a0ab853f856dd9abd70ea2d629f |
|
83016b8
test(crawlers): deeper npm scope/nested + CrawlerOptions default
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/83016b82346da4d3a09ca9254c6215e169749ce1 |
|
f1b0474
test(crawlers): maven + go env-fallback coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/f1b04742023300f4187a4734982331f1f5438410 |
|
9568eae
test(crawlers): fix python METADATA blank-line break test
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/9568eae2e6d54fa4fc59379b5840e38c90f08669 |
|
9e82aa4
test(crawlers): npm shell-out wrappers via PATH stubbing
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/9e82aa419b7609c95703a642d05f084ec912c7bd |
|
0856547
test(crawlers): composer/ruby/nuget shell-out + edge coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/0856547e23e310a368f08954b90bf87b1f42bd4f |
|
c988d98
test(crawlers): maven + cargo final coverage
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/c988d986148e9d26f3c75c9ffa0b324f8c642f08 |
|
e8d815c
test(crawlers): chmod-based unreadable-dir coverage across crawlers
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
7aa479a
test(crawlers): extract parse_composer_home_output for unit testing
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/7aa479a9b0d204925035d696ce9186693c5cb5f0 |
|
8084862
refactor(crawlers): centralize read_dir/file_type behind utils::fs
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8084862f4077032c323bef3deaf4a511119ec897 |
|
64b4325
refactor(crawlers): inject CommandRunner for npm/ruby/python shell-outs
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/64b43255299cb8ec3705086e5f2db0e8c2f26501 |
|
3f796f2
feat(crawlers/python): extensive uv support
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/3f796f21f8635dcd8aaa75b6914f32fa323ac58e |
|
e485704
feat(crawlers): bun + deno scan/apply support
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/e485704b40ec843f3551538a1e0077b5f750b3d7 |
|
166af51
feat(cli/crawlers): wire DenoCrawler into ecosystem dispatch + docker…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/166af51a9fd722aec7a88e68d6935dcc6d02b85f |
|
68a9753
fix(clippy): inline nested doc list in deno_crawler module docstring
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/68a975373a9ad488fbfbae6c0b7ef241f6dc6969 |
|
8b0b9e8
fix(clippy): allow dead_code on find_node_dirs_sync for non-macOS tar…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8b0b9e81effc79ab30e9bddcb1c19f56c7510b9b |
|
11576e3
fix(docker-e2e): pass experimental gate env vars for maven and nuget
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/11576e3619e6d0a3fb9f2939646b00f747b8f8f0 |
|
4e564f3
fix(types/tests): bump test_all_count expected for deno feature
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/4e564f3a2f0b33098e96297d4614ad0f45208f74 |
|
3c4857b
fix(tests): cross-platform fixes for windows + linux CI runners
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/3c4857bd6d9082c7b40a23870a30b7e0f5e23797 |
|
5f77683
feat(cli): add lock-management surface (unlock subcommand, --lock-tim…
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/5f776831308db77dcb50672c8d57805c3d06dde1 |
|
6c53b50
fix(tests): escape paths in nuget assets.json fixture (Windows)
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/6c53b50aa4d8517bfcba77899a914e8bb33e03f9 |
|
fbd5f23
fix(tests): platform-aware venv layout in python crawler tests
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/fbd5f235c7398a7fde810db1f4e575b12b3c75f5 |
|
8f04d8a
ci: drop e2e_scan from PR-blocking matrix (live public-API dependency)
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/8f04d8a8e615af53a4e421dd6f4273ea8e006ec8 |
|
1e181d0
ci: drop e2e_npm, e2e_pypi, e2e_gem from PR matrix (live-API deps)
mikolalysenko May 23, 2026
| https://github.com/SocketDev/socket-patch/pull/80/commits/1e181d0d15b1799901cb8e3f0e531c8844646aab |
|
Clear filters
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| Please reload this page | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
| Please reload this page | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
mod.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-3751b07dd989810b657db9f4dd0453ee552f02fce89094e66493a367fee3eea6 |
|
crawler_cargo_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-05b473142f4ad0d819893f0066402137cb84a32a923340b498539b752f84adab |
|
crawler_composer_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-f8807f72eb98768e55346ada845ca5421b3f16ef86b11f6b6a7363f60d7bf833 |
|
crawler_go_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-2a618379726a0c87151166c667bb15d31c52e47dc99cd8a61155534f420dd6a6 |
|
crawler_npm_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e5a5f8653ed5ea18f021e45124f55b27e41c08bd7f20483af7ab673a550442cf |
|
crawler_nuget_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-5aed5977de4b813d10d8428c42f1df3a0e04059415dc012294820188b5e6d35d |
|
crawler_python_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e7ccb1c4c73edd333db60c82d909e6b37d6a1c32a8d726a1836b4c7eec77770e |
|
crawler_ruby_e2e.rs
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-9f38871923b2d512681f369e060f38929ed54b51d790211670a52892c753fea6 |
|
Prev
| https://github.com/SocketDev/socket-patch/pull/80/commits/c988d986148e9d26f3c75c9ffa0b324f8c642f08 |
|
Next
| https://github.com/SocketDev/socket-patch/pull/80/commits/7aa479a9b0d204925035d696ce9186693c5cb5f0 |
| Please reload this page | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
| https://github.com/mikolalysenko |
| mikolalysenko | https://github.com/SocketDev/socket-patch/commits?author=mikolalysenko |
| crates/socket-patch-core/tests/common/mod.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-3751b07dd989810b657db9f4dd0453ee552f02fce89094e66493a367fee3eea6 |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/common/mod.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
| crates/socket-patch-core/tests/crawler_cargo_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-05b473142f4ad0d819893f0066402137cb84a32a923340b498539b752f84adab |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_cargo_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-05b473142f4ad0d819893f0066402137cb84a32a923340b498539b752f84adab |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-05b473142f4ad0d819893f0066402137cb84a32a923340b498539b752f84adab |
| crates/socket-patch-core/tests/crawler_composer_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-f8807f72eb98768e55346ada845ca5421b3f16ef86b11f6b6a7363f60d7bf833 |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_composer_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-f8807f72eb98768e55346ada845ca5421b3f16ef86b11f6b6a7363f60d7bf833 |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-f8807f72eb98768e55346ada845ca5421b3f16ef86b11f6b6a7363f60d7bf833 |
| crates/socket-patch-core/tests/crawler_go_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-2a618379726a0c87151166c667bb15d31c52e47dc99cd8a61155534f420dd6a6 |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_go_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-2a618379726a0c87151166c667bb15d31c52e47dc99cd8a61155534f420dd6a6 |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-2a618379726a0c87151166c667bb15d31c52e47dc99cd8a61155534f420dd6a6 |
| crates/socket-patch-core/tests/crawler_npm_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e5a5f8653ed5ea18f021e45124f55b27e41c08bd7f20483af7ab673a550442cf |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_npm_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e5a5f8653ed5ea18f021e45124f55b27e41c08bd7f20483af7ab673a550442cf |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e5a5f8653ed5ea18f021e45124f55b27e41c08bd7f20483af7ab673a550442cf |
| crates/socket-patch-core/tests/crawler_nuget_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-5aed5977de4b813d10d8428c42f1df3a0e04059415dc012294820188b5e6d35d |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_nuget_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-5aed5977de4b813d10d8428c42f1df3a0e04059415dc012294820188b5e6d35d |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-5aed5977de4b813d10d8428c42f1df3a0e04059415dc012294820188b5e6d35d |
| crates/socket-patch-core/tests/crawler_python_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e7ccb1c4c73edd333db60c82d909e6b37d6a1c32a8d726a1836b4c7eec77770e |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_python_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e7ccb1c4c73edd333db60c82d909e6b37d6a1c32a8d726a1836b4c7eec77770e |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-e7ccb1c4c73edd333db60c82d909e6b37d6a1c32a8d726a1836b4c7eec77770e |
| crates/socket-patch-core/tests/crawler_ruby_e2e.rs | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-9f38871923b2d512681f369e060f38929ed54b51d790211670a52892c753fea6 |
|
View file
| https://github.com/SocketDev/socket-patch/blob/e8d815cd673c2d22cbb614ed0be5d5b619d39219/crates/socket-patch-core/tests/crawler_ruby_e2e.rs |
|
Open in desktop
| https://desktop.github.com |
| https://github.co/hiddenchars |
| https://github.com/SocketDev/socket-patch/pull/80/commits/{{ revealButtonHref }} |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-9f38871923b2d512681f369e060f38929ed54b51d790211670a52892c753fea6 |
|
| https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219#diff-9f38871923b2d512681f369e060f38929ed54b51d790211670a52892c753fea6 |
| Please reload this page | https://github.com/SocketDev/socket-patch/pull/80/commits/e8d815cd673c2d22cbb614ed0be5d5b619d39219 |
|
| https://github.com |
| Terms | https://docs.github.com/site-policy/github-terms/github-terms-of-service |
| Privacy | https://docs.github.com/site-policy/privacy-policies/github-privacy-statement |
| Security | https://github.com/security |
| Status | https://www.githubstatus.com/ |
| Community | https://github.community/ |
| Docs | https://docs.github.com/ |
| Contact | https://support.github.com?tags=dotcom-footer |