Skip to main content

CLI tool for applying security patches to dependencies

Project description

Socket Patch CLI

Apply security patches to npm and Python dependencies without waiting for upstream fixes.

Installation

One-line install (recommended)

curl -fsSL https://raw.githubusercontent.com/SocketDev/socket-patch/main/scripts/install.sh | sh

Detects your platform (macOS/Linux, x64/ARM64), downloads the latest binary, and installs to /usr/local/bin or ~/.local/bin. Use sudo sh instead of sh if /usr/local/bin requires root.

Manual download

Download a prebuilt binary from the latest release:

# macOS (Apple Silicon)
curl -fsSL https://github.com/SocketDev/socket-patch/releases/latest/download/socket-patch-aarch64-apple-darwin.tar.gz | tar xz

# macOS (Intel)
curl -fsSL https://github.com/SocketDev/socket-patch/releases/latest/download/socket-patch-x86_64-apple-darwin.tar.gz | tar xz

# Linux (x86_64)
curl -fsSL https://github.com/SocketDev/socket-patch/releases/latest/download/socket-patch-x86_64-unknown-linux-musl.tar.gz | tar xz

# Linux (ARM64)
curl -fsSL https://github.com/SocketDev/socket-patch/releases/latest/download/socket-patch-aarch64-unknown-linux-gnu.tar.gz | tar xz

Then move the binary onto your PATH:

sudo mv socket-patch /usr/local/bin/

npm

npx @socketsecurity/socket-patch

Or install globally:

npm install -g @socketsecurity/socket-patch

pip

pip install socket-patch

Cargo

cargo install socket-patch-cli

By default this builds with npm and PyPI support. For additional ecosystems:

cargo install socket-patch-cli --features cargo,golang,maven,composer,nuget

Quick Start

You can pass a patch UUID directly to socket-patch as a shortcut:

socket-patch 550e8400-e29b-41d4-a716-446655440000
# equivalent to: socket-patch get 550e8400-e29b-41d4-a716-446655440000

Commands

All commands support --json for structured JSON output and --cwd <dir> to set the working directory (default: .). Every JSON response includes a "status" field ("success", "error", "no_manifest", etc.) for reliable programmatic consumption.

get

Get security patches from Socket API and apply them. Accepts a UUID, CVE ID, GHSA ID, PURL, or package name. The identifier type is auto-detected but can be forced with a flag.

Alias: download

Usage:

socket-patch get <identifier> [options]

Options:

Flag Description
--org <slug> Organization slug (required when using SOCKET_API_TOKEN)
--id Force identifier to be treated as a UUID
--cve Force identifier to be treated as a CVE ID
--ghsa Force identifier to be treated as a GHSA ID
-p, --package Force identifier to be treated as a package name
-y, --yes Skip confirmation prompt for multiple patches
--save-only Download patch without applying it (alias: --no-apply)
--one-off Apply patch immediately without saving to .socket folder
-g, --global Apply to globally installed packages
--global-prefix <path> Custom path to global node_modules
--json Output results as JSON
--api-token <token> Socket API token (overrides SOCKET_API_TOKEN)
--api-url <url> Socket API URL (overrides SOCKET_API_URL)
--cwd <dir> Working directory (default: .)

Examples:

# Get patch by UUID
socket-patch get 550e8400-e29b-41d4-a716-446655440000

# Get patch by CVE
socket-patch get CVE-2024-12345

# Get patch by GHSA
socket-patch get GHSA-xxxx-yyyy-zzzz

# Get patch by package name (fuzzy matches installed packages)
socket-patch get lodash

# Download only, don't apply
socket-patch get CVE-2024-12345 --save-only

# Apply to global packages
socket-patch get lodash -g

# JSON output for scripting
socket-patch get CVE-2024-12345 --json -y

scan

Scan installed packages for available security patches.

Usage:

socket-patch scan [options]

Options:

Flag Description
--org <slug> Organization slug
--json Output results as JSON
--ecosystems <list> Restrict to specific ecosystems (comma-separated, e.g. npm,pypi)
-g, --global Scan globally installed packages
--global-prefix <path> Custom path to global node_modules
--batch-size <n> Packages per API request (default: 100)
--api-token <token> Socket API token (overrides SOCKET_API_TOKEN)
--api-url <url> Socket API URL (overrides SOCKET_API_URL)
--cwd <dir> Working directory (default: .)

Examples:

# Scan local project
socket-patch scan

# Scan with JSON output
socket-patch scan --json

# Scan only npm packages
socket-patch scan --ecosystems npm

# Scan global packages
socket-patch scan -g

apply

Apply security patches from the local manifest.

Usage:

socket-patch apply [options]

Options:

Flag Description
-d, --dry-run Verify patches without modifying files
-s, --silent Only output errors
-f, --force Skip pre-application hash verification (apply even if package version differs)
-m, --manifest-path <path> Path to manifest (default: .socket/manifest.json)
--offline Do not download missing blobs; fail if any are missing
-g, --global Apply to globally installed packages
--global-prefix <path> Custom path to global node_modules
--ecosystems <list> Restrict to specific ecosystems (comma-separated, e.g. npm,pypi)
--json Output results as JSON
-v, --verbose Show detailed per-file verification information
--cwd <dir> Working directory (default: .)

Examples:

# Apply patches
socket-patch apply

# Dry run
socket-patch apply --dry-run

# Apply only npm patches
socket-patch apply --ecosystems npm

# Apply in offline mode
socket-patch apply --offline

# JSON output for CI/CD
socket-patch apply --json

rollback

Rollback patches to restore original files. If no identifier is given, all patches are rolled back.

Usage:

socket-patch rollback [identifier] [options]

Options:

Flag Description
-d, --dry-run Verify rollback without modifying files
-s, --silent Only output errors
-m, --manifest-path <path> Path to manifest (default: .socket/manifest.json)
--offline Do not download missing blobs; fail if any are missing
-g, --global Rollback globally installed packages
--global-prefix <path> Custom path to global node_modules
--one-off Rollback by fetching original files from API (no manifest required)
--ecosystems <list> Restrict to specific ecosystems (comma-separated)
--json Output results as JSON
-v, --verbose Show detailed per-file verification information
--org <slug> Organization slug
--api-token <token> Socket API token (overrides SOCKET_API_TOKEN)
--api-url <url> Socket API URL (overrides SOCKET_API_URL)
--cwd <dir> Working directory (default: .)

Examples:

# Rollback all patches
socket-patch rollback

# Rollback a specific package
socket-patch rollback "pkg:npm/lodash@4.17.20"

# Rollback by UUID
socket-patch rollback 550e8400-e29b-41d4-a716-446655440000

# Dry run
socket-patch rollback --dry-run

# JSON output
socket-patch rollback --json

list

List all patches in the local manifest.

Usage:

socket-patch list [options]

Options:

Flag Description
--json Output as JSON
-m, --manifest-path <path> Path to manifest (default: .socket/manifest.json)
--cwd <dir> Working directory (default: .)

Examples:

# List patches
socket-patch list

# JSON output
socket-patch list --json

Sample Output:

Found 2 patch(es):

Package: pkg:npm/lodash@4.17.20
  UUID: 550e8400-e29b-41d4-a716-446655440000
  Tier: free
  License: MIT
  Vulnerabilities (1):
    - GHSA-xxxx-yyyy-zzzz (CVE-2024-12345)
      Severity: high
      Summary: Prototype pollution in lodash
  Files patched (1):
    - lodash.js

remove

Remove a patch from the manifest (rolls back files first by default).

Usage:

socket-patch remove <identifier> [options]

Arguments:

  • identifier - Package PURL (e.g., pkg:npm/package@version) or patch UUID

Options:

Flag Description
--skip-rollback Only update manifest, do not restore original files
-g, --global Remove from globally installed packages
--global-prefix <path> Custom path to global node_modules
--json Output results as JSON
-m, --manifest-path <path> Path to manifest (default: .socket/manifest.json)
--cwd <dir> Working directory (default: .)

Examples:

# Remove by PURL
socket-patch remove "pkg:npm/lodash@4.17.20"

# Remove by UUID
socket-patch remove 550e8400-e29b-41d4-a716-446655440000

# Remove without rolling back files
socket-patch remove "pkg:npm/lodash@4.17.20" --skip-rollback

# JSON output
socket-patch remove "pkg:npm/lodash@4.17.20" --json

setup

Configure package.json postinstall scripts to automatically apply patches after npm install.

Usage:

socket-patch setup [options]

Options:

Flag Description
-d, --dry-run Preview changes without modifying files
-y, --yes Skip confirmation prompt
--json Output results as JSON
--cwd <dir> Working directory (default: .)

Examples:

# Interactive setup
socket-patch setup

# Non-interactive
socket-patch setup -y

# Preview changes
socket-patch setup --dry-run

# JSON output for scripting
socket-patch setup --json -y

repair

Download missing blobs and clean up unused blobs.

Alias: gc

Usage:

socket-patch repair [options]

Options:

Flag Description
-d, --dry-run Show what would be done without doing it
--offline Skip network operations (cleanup only)
--download-only Only download missing blobs, do not clean up
--json Output results as JSON
-m, --manifest-path <path> Path to manifest (default: .socket/manifest.json)
--cwd <dir> Working directory (default: .)

Examples:

# Repair (download missing + clean up unused)
socket-patch repair

# Cleanup only, no downloads
socket-patch repair --offline

# Download missing blobs only
socket-patch repair --download-only

# JSON output
socket-patch repair --json

Scripting & CI/CD

All commands support --json for machine-readable output. JSON responses always include a "status" field for easy error detection:

# Check for available patches in CI
result=$(socket-patch scan --json --ecosystems npm)
patches=$(echo "$result" | jq '.totalPatches')

# Apply patches and check result
socket-patch apply --json | jq '.status'
# "success", "partial_failure", "no_manifest", or "error"

When stdin is not a TTY (e.g., in CI pipelines), interactive prompts auto-proceed instead of blocking. Progress indicators and ANSI colors are automatically suppressed when output is piped.

Environment Variables

Variable Description
SOCKET_API_TOKEN API authentication token
SOCKET_ORG_SLUG Default organization slug
SOCKET_API_URL API base URL (default: https://api.socket.dev)

Manifest Format

Downloaded patches are stored in .socket/manifest.json:

{
  "patches": {
    "pkg:npm/package-name@1.0.0": {
      "uuid": "unique-patch-id",
      "exportedAt": "2024-01-01T00:00:00Z",
      "files": {
        "path/to/file.js": {
          "beforeHash": "git-sha256-before",
          "afterHash": "git-sha256-after"
        }
      },
      "vulnerabilities": {
        "GHSA-xxxx-xxxx-xxxx": {
          "cves": ["CVE-2024-12345"],
          "summary": "Vulnerability summary",
          "severity": "high",
          "description": "Detailed description"
        }
      },
      "description": "Patch description",
      "license": "MIT",
      "tier": "free"
    }
  }
}

Patched file contents are in .socket/blob/ (named by git SHA256 hash).

Supported Platforms

Platform Architecture
macOS ARM64 (Apple Silicon), x86_64 (Intel)
Linux x86_64, ARM64, ARMv7, i686
Windows x86_64, ARM64, i686
Android ARM64

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

socket_patch-2.1.1-py3-none-win_arm64.whl (2.5 MB view details)

Uploaded Python 3Windows ARM64

socket_patch-2.1.1-py3-none-win_amd64.whl (2.7 MB view details)

Uploaded Python 3Windows x86-64

socket_patch-2.1.1-py3-none-win32.whl (2.3 MB view details)

Uploaded Python 3Windows x86

socket_patch-2.1.1-py3-none-musllinux_1_1_x86_64.whl (2.7 MB view details)

Uploaded Python 3musllinux: musl 1.1+ x86-64

socket_patch-2.1.1-py3-none-musllinux_1_1_i686.whl (2.5 MB view details)

Uploaded Python 3musllinux: musl 1.1+ i686

socket_patch-2.1.1-py3-none-musllinux_1_1_armv7l.whl (2.4 MB view details)

Uploaded Python 3musllinux: musl 1.1+ ARMv7l

socket_patch-2.1.1-py3-none-musllinux_1_1_aarch64.whl (2.5 MB view details)

Uploaded Python 3musllinux: musl 1.1+ ARM64

socket_patch-2.1.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

socket_patch-2.1.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (2.5 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

socket_patch-2.1.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

socket_patch-2.1.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

socket_patch-2.1.1-py3-none-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

socket_patch-2.1.1-py3-none-macosx_10_12_x86_64.whl (2.6 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file socket_patch-2.1.1-py3-none-win_arm64.whl.

File metadata

  • Download URL: socket_patch-2.1.1-py3-none-win_arm64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for socket_patch-2.1.1-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 143a403347bb848bed43760ab1497bc523dcf762d29e80fcb2c7fd159fe2ceb1
MD5 e704fedc456360d5e34cbe22ca65c790
BLAKE2b-256 b8fceb5416292dbdb66aa17f466a4b96ee75e27eb1453e7e7974b8974bda5da6

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-win_arm64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-win_amd64.whl.

File metadata

  • Download URL: socket_patch-2.1.1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for socket_patch-2.1.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 0a9dd9df79dd66293185ed8af71a6c352f1b368368d2aa962af69a3daab63758
MD5 5ae39b8311239c4da91321ae4d944686
BLAKE2b-256 2797ae021ae0b630f98767e4849ddd4f73af1a37f518cbfc614a51771171e3d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-win_amd64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-win32.whl.

File metadata

  • Download URL: socket_patch-2.1.1-py3-none-win32.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for socket_patch-2.1.1-py3-none-win32.whl
Algorithm Hash digest
SHA256 f8629b196d987d77f2293b678cdb0f417b65823b99ff6cd6763bd50dffb7cfc9
MD5 57002ce65d00b218aee6f0d76a5b7f80
BLAKE2b-256 e1001b803d13b767f2d02fa3cb1233e23853f8a1fa30e73e76e76194d62391c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-win32.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b3af422955301db94078f110285b008f93748c1b0f037800321a83bb0cd6e3e6
MD5 2241fe2435d69a91d9baff9a86ec4eb3
BLAKE2b-256 b893ba664a158061253989cdef85aa0ccdc3f27d80ab1a43c549812e1a86c1c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-musllinux_1_1_x86_64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 687f457a98d7e5326eeeefda9aa4d1c32df92b2e64d6ca60f053dd315b774d9e
MD5 956d30d58a5a64537273c093cd3dbd2c
BLAKE2b-256 d41075d71d700f6a83af7d0d32d3e23482b24d9f7fd5f659b4a2e9b9e9437f81

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-musllinux_1_1_i686.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-musllinux_1_1_armv7l.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-musllinux_1_1_armv7l.whl
Algorithm Hash digest
SHA256 f3bf607897e745e43553f6c01bdfb68f670a26b0f7ae1aef6c4123239b004b66
MD5 8580f3d2e24e0b9cddc1ae1b2214182b
BLAKE2b-256 c9e2b3f1dece59434ac767c1fc10cc1b84057cbdee822ae0331cec0ac60574cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-musllinux_1_1_armv7l.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 665dc58459157373bea7642f7c2f9acf80025bedeff54ed54910b07028e41aed
MD5 b15b700e261c86758cb38f073ad22aab
BLAKE2b-256 3c5363fd0807bc63a060f6a9c2e5a52ff176e8508b71c7cd778f9e7a25c64a3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-musllinux_1_1_aarch64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7bfad427b96308d90eadd050e46dc3d10e59e64ce3527eed21f241eb23fe95ea
MD5 ecdab5b76e67842c218ad1ff426a3de9
BLAKE2b-256 732448f37f1934859860badbee4045958d0c64b8058ac22c8a56bcf1794c0bc3

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 fd28f7c1cbaf9a1cac291039cc6a0d389786943910428674f2b832260186bc69
MD5 9361c2395e91e852570919c585425138
BLAKE2b-256 8f8674b815ec507cd411ed5fcc75a7b2431df33553239910745eaeea8e0179bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 59a3e5cab04c6e4c199af2715d8cef1539aeb4dc4db6e85053d96e63db22cae2
MD5 0b22d1c585e7d412daf0501ecce03d3a
BLAKE2b-256 8085a8bdc2ecccaab3864c35e9bcad2030b0f213144dcd16c1e7f9d2f6d29b10

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 94054f38f20f8bd081ade7245e960f0782611c622f21be4fc19651a9515b07f4
MD5 6e16c5af1ef65b3c936b51b0bb087a44
BLAKE2b-256 69a7b800e6679e727b070a95270e11ce419ecefa4fd7a8a7aec894c1f83478f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ecb4b679c87b447017a84f895ebc4515a99d114271f7a1e860c336fbc90eb91a
MD5 dbd3c9f35f1dc882aa06a76224a0ff27
BLAKE2b-256 951c94588e6d1182c30e32d4eb17e3fdf21f1a0a1fe8332976a6333bb457e2b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file socket_patch-2.1.1-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for socket_patch-2.1.1-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a4e53a225138f1f651b72adf87f68d5cb2191af36fdec5cb46252482a91ea0d1
MD5 93c2cdb18ea16f912ba05457c418281a
BLAKE2b-256 83b2d05488e16a0f69bcbfe6c60e11745dee3270092d57b57177600a351578c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for socket_patch-2.1.1-py3-none-macosx_10_12_x86_64.whl:

Publisher: release.yml on SocketDev/socket-patch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page