Skip to main content

mpatch for Python

PyPI version Python versions Type Hints License: MIT

mpatch applies diffs by finding where they belong in the code, not by trusting line numbers. When the context in a diff doesn't match the file exactly, it uses fuzzy matching to find the most similar location and applies the change there. This package is the Python interface to the Rust library. The command-line tool and the Rust docs are in the main repository.

It was built for diffs written by LLMs (ChatGPT, Gemini, Claude), which often get line numbers wrong, drop lines from the context, or describe code that has changed since they last saw it.

mpatch is built with mpatch. Changes to its own src/lib.rs (over 15,000 lines) and test file (over 16,000 lines) are applied with it.

Installation

pip install mpatch

Wheels are published for Windows, macOS, and Linux (including Alpine) on x64 and ARM, for CPython 3.8 and later and free-threaded CPython 3.14. On other platforms, pip builds from source, which needs a Rust toolchain.

This installs the library only. For the mpatch command, see Installation in the main repository.

Quick Start

Your file has a comment that the AI never saw, and its diff leaves it out:

import mpatch

original = """\
def greet(name):
    greeting = "Hello"
    # Forgettable comment
    print(f"{greeting}, {name}!")
    print(f"Goodbye, {name}!")
"""

reply = """\
Here's the change:

```diff
--- a/greet.py
+++ b/greet.py
@@ -1,4 +1,4 @@
 def greet(name):
-    greeting = "Hello"
+    greeting = "Hi"
     print(f"{greeting}, {name}!")
-    print(f"Goodbye, {name}!")
+    print(f"See you, {name}!")
```
"""

print(mpatch.patch_content(reply, original=original))
def greet(name):
    greeting = "Hi"
    # Forgettable comment
    print(f"{greeting}, {name}!")
    print(f"See you, {name}!")

git apply and patch both reject this diff, because the comment breaks its context. mpatch applies both changes and keeps the comment. You can pass the whole chat reply: the prose around the diff is ignored.

patch_content raises mpatch.ApplyError if a hunk (one @@ block of a diff) can't be placed, and mpatch.ParseError if the text contains no patch.

Will it change the wrong code?

mpatch only applies a hunk where it is confident the hunk belongs:

  • An exact match is tried first. A fuzzy match is used only when there is none, and the location must be at least 70% similar (change this with fuzz_factor).
  • If the same code appears in more than one place, the diff's line numbers pick the nearest. If they can't decide, the hunk fails instead of guessing.
  • A hunk that fails changes nothing, and the result tells you the closest location found and how similar it was.
  • dry_run=True returns the changes without writing them, atomic=True writes nothing unless every hunk applies, and a patch that points outside the target directory raises mpatch.PathTraversalError.

Review the result as you would any AI edit.

Supported Formats

The format is detected automatically, and one input can hold patches for several files.

  • Markdown code blocks, such as a chat reply with ```diff blocks. Prose around them is ignored.
  • Unified diffs from git diff or diff -u. Each file's hunks need the --- a/<path> and +++ b/<path> lines above them.
  • Aider search/replace blocks (<<<<<<< SEARCH, =======, >>>>>>> REPLACE), with the file path just above the block. Placeholders like # ... existing code ... stand for the code they skip.
  • Conflict markers (<<<<, ====, >>>>). These don't name a file, so use them with patch_content.

Applying to a Directory

from pathlib import Path
import mpatch

# A small project to patch
project = Path("my_project")
project.mkdir(exist_ok=True)
(project / "config.py").write_text("DEBUG = True\nPORT = 8000\n")

diff = """\
--- a/config.py
+++ b/config.py
@@ -1,2 +1,2 @@
-DEBUG = True
+DEBUG = False
 PORT = 8000
"""

if mpatch.apply_directory(diff, project, atomic=True):
    print("Every hunk applied")

With atomic=True, apply_directory writes nothing unless every hunk of every patch applies, and returns True only if they all did. Without it, the hunks that apply are written even if others fail, and it returns True unless a file couldn't be read or written, so check for failed hunks as shown below. Add dry_run=True to check a diff without changing any files.

Handling Failures

To find out what failed, apply the patches one at a time. Each failure says which hunk failed and why, which a coding agent can send back to the model to ask for a corrected diff.

from pathlib import Path
import mpatch

project = Path("my_project")
project.mkdir(exist_ok=True)
(project / "app.py").write_text("x = 1\ny = 2\n")

reply = """\
--- a/app.py
+++ b/app.py
@@ -1,2 +1,2 @@
 totally = different
-content = here
+content = there
"""

for patch in mpatch.parse_auto(reply):
    result = patch.apply_to_file(project)
    for failure in result.report.failures:
        print(f"{patch.file_path}, hunk {failure.hunk_index}: {failure.reason}")
app.py, hunk 1: Best fuzzy match at line 1 (score: 0.495) was below threshold (0.700)

failure.error_type names the reason, such as "ContextNotFound", "FuzzyMatchBelowThreshold", or "AmbiguousExactMatch". Fuzzy failures also carry best_score, threshold, and the near-miss location in location_start and location_length.

More

  • parse_auto and parse_single_patch return Patch objects, which you can index and slice by hunk and reverse with ~patch.
  • merge_patches combines patches that target the same file.
  • create_unified_diff and Patch.from_texts make a diff from two strings.
  • merge_three_way does a line-level three-way merge with conflict markers.

Every function has type hints and a docstring, so your editor and help(mpatch) show the details.

Exceptions

All exceptions derive from mpatch.MpatchError:

  • mpatch.ParseError: the input contains no patch, or a patch is malformed.
  • mpatch.ApplyError: patch_content couldn't apply a hunk, or a file couldn't be read or written.
  • mpatch.PathTraversalError: a patch points outside the target directory. It's a subclass of ApplyError.

Threads

mpatch releases the GIL while it works, so you can apply patches from several threads, or from asyncio with asyncio.to_thread.

License

MIT License. See LICENSE.

Metadata

Release files for mpatch 1.8.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mpatch 1.8.1
File Size Uploaded Provenance
mpatch-1.8.1.tar.gz 303.1 kB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for mpatch 1.8.1
File
mpatch-1.8.1-cp314-cp314t-win_arm64.whl CPython 3.14 CPython 3.14 free-threading Windows ARM64 Details
mpatch-1.8.1-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
mpatch-1.8.1-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
mpatch-1.8.1-cp314-cp314t-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64 Details
mpatch-1.8.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Details
mpatch-1.8.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Details
mpatch-1.8.1-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
mpatch-1.8.1-cp314-cp314t-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64 Details
mpatch-1.8.1-cp314-cp314t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64, macOS 10.12+ universal2 (ARM64, x86-64), macOS 11.0+ ARM64 Details
mpatch-1.8.1-cp38-abi3-win_arm64.whl CPython 3.8 abi3 Windows ARM64 Details
mpatch-1.8.1-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
mpatch-1.8.1-cp38-abi3-musllinux_1_2_x86_64.whl CPython 3.8 abi3 Linux musl 1.2+ x86-64 Details
mpatch-1.8.1-cp38-abi3-musllinux_1_2_aarch64.whl CPython 3.8 abi3 Linux musl 1.2+ ARM64 Details
mpatch-1.8.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 abi3 Linux glibc 2.17+ x86-64 Details
mpatch-1.8.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 abi3 Linux glibc 2.17+ ARM64 Details
mpatch-1.8.1-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details
mpatch-1.8.1-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details
mpatch-1.8.1-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.8 abi3 macOS 11.0+ ARM64, macOS 10.12+ x86-64, macOS 10.12+ universal2 (ARM64, x86-64) Details

Total release size: 17.8 MB

Release files / mpatch-1.8.1.tar.gz

Download URL mpatch-1.8.1.tar.gz
Size 303.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b0132d2f4faf73d6a472b5b30ebded43e4825aa0c5067737e22f342362e2bb7a
BLAKE2b-256 checksum
How to use checksums
aa8f1354b3c2a3e39a6b5aa21d43bf3fa7271d65bb5ad0c0d6080dd8c32e44ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-win_arm64.whl

Download URL mpatch-1.8.1-cp314-cp314t-win_arm64.whl
Size 720.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows ARM64
SHA-256 checksum
How to use checksums
f51436c9bf2670d38175ea9b7b8702a18247f1e484d6d4972392d71315b57793
BLAKE2b-256 checksum
How to use checksums
8f867f3be768501c7e40dc8d7b0d096fad6b07524997247a1a37e836f8fdcd37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-win_amd64.whl

Download URL mpatch-1.8.1-cp314-cp314t-win_amd64.whl
Size 790.6 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
90e85d9bf28005a5aa14d58a5e236e61d2047e00775ed05c7adae44ddb67029b
BLAKE2b-256 checksum
How to use checksums
3fc73ae7f06fe37548c9edcb7c72c35e2c47f46fb0941eb03f52007e620a79fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL mpatch-1.8.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 1.1 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
957b4c6de2830fc0166b992255715acf2e81f1fb5496273d75da7a0525a7b53e
BLAKE2b-256 checksum
How to use checksums
03f2a14156cd780f0e10797e9ced3ccd6103ad984e7183ee2fad9c8b554c8449
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-musllinux_1_2_aarch64.whl

Download URL mpatch-1.8.1-cp314-cp314t-musllinux_1_2_aarch64.whl
Size 1.0 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
0065f47a70862fc0bad4fcff34c05a2553d9484cc05e5f003e17b4bd3b59579c
BLAKE2b-256 checksum
How to use checksums
0cc45bf1ab375198ea296a81e305590b6a2bf34cb7eb0221811627cbf3ccdcc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mpatch-1.8.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 921.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
403cdbb5ad642f047fc25ed94764be6da37b6a301bf72158b928e890cded190f
BLAKE2b-256 checksum
How to use checksums
4b9bdea05d187a77b812a4b80acad3c88d73ae586e379fddcf30f5202373287f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL mpatch-1.8.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 830.5 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
b43d755bb3d54415019598fb1d9b95956b9967b3c863399af1d0ad152a40ac6d
BLAKE2b-256 checksum
How to use checksums
563def8d04435f588d64cfd20eb105f2576bb26198d82eaa067a6144af794825
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-macosx_11_0_arm64.whl

Download URL mpatch-1.8.1-cp314-cp314t-macosx_11_0_arm64.whl
Size 780.4 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
981e642fb9ee7dc7c47c76d2d988f86d72220e27b793acb09d12c048c076ff03
BLAKE2b-256 checksum
How to use checksums
e145be78f302b38acb91cd324a446d47d7cf33b00956b35707bad2ff87ebe862
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-macosx_10_12_x86_64.whl

Download URL mpatch-1.8.1-cp314-cp314t-macosx_10_12_x86_64.whl
Size 877.6 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
ee3ee521ff14006ad6802f13e4183884985102055e1791511f09ffe085feb1ed
BLAKE2b-256 checksum
How to use checksums
81c0b2c9a661a8fb255c0296cd6a0f9f08764d6a17cc87f950fc3dad60945496
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp314-cp314t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL mpatch-1.8.1-cp314-cp314t-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 1.6 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a9dd3a98b4fe3f56af0e564623f889afa66da070c9fde375444971f050e4a70e
BLAKE2b-256 checksum
How to use checksums
0a73870ec57401674482142f4b38eaef52115d066fdc15bc99c6f28c8238b330
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-win_arm64.whl

Download URL mpatch-1.8.1-cp38-abi3-win_arm64.whl
Size 726.7 kB
Tags CPython 3.8 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
3a35532b0c85052197dc93b48d34ff536b22d5ccda2bbed84eba95afd4d88e99
BLAKE2b-256 checksum
How to use checksums
53d92d654f950c90eca9e58e4fa57157363dbb77df8d52d2934f842c15b1144b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-win_amd64.whl

Download URL mpatch-1.8.1-cp38-abi3-win_amd64.whl
Size 795.3 kB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
16eae1bf446a652039494fe0617e3d568dfe7a0ff30d19093f6e696cfcec88e7
BLAKE2b-256 checksum
How to use checksums
7516d74085efa7c91d079a8298d41fc62e7a96736e2f519936cc1ab404db3e26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-musllinux_1_2_x86_64.whl

Download URL mpatch-1.8.1-cp38-abi3-musllinux_1_2_x86_64.whl
Size 1.1 MB
Tags CPython 3.8 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
aae917fc6ba00ca52a3690c3e0b7353d57248c047a87a727559b886c1c67b33f
BLAKE2b-256 checksum
How to use checksums
4aded391af7d3bcc667397a378c04b79e065944defe2ac56b3358b532561f656
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-musllinux_1_2_aarch64.whl

Download URL mpatch-1.8.1-cp38-abi3-musllinux_1_2_aarch64.whl
Size 1.0 MB
Tags CPython 3.8 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
bc5bc1a09fcdedbe903faed24b2ff7e7f65f167348f6ef031607b4ffeb261f6f
BLAKE2b-256 checksum
How to use checksums
c409ac81b13425d7075bbfaab44171ddefb36993c8a11d7e887f3a1cf29a18a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL mpatch-1.8.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 929.6 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
7c1f95c7e9a82c9f32789968f05813950c2db80c59c73d8c6a860e32db566f42
BLAKE2b-256 checksum
How to use checksums
3ba8105933206b0e1cf0041e771acf96c197e5c47d0a5684b258715c8fe25127
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL mpatch-1.8.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 835.7 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
88fa8cd5bade8eaa90f626df1da39ba03a050bc988d7580b00895f45b60ab4ff
BLAKE2b-256 checksum
How to use checksums
e7754a72d864dc8cd96646458d86ac9369acf5135310b4f0a213514d1a7e037c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-macosx_11_0_arm64.whl

Download URL mpatch-1.8.1-cp38-abi3-macosx_11_0_arm64.whl
Size 787.1 kB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6dae518c3cce9d8594dd3f5aef4f834ebb1409df49696d7ec30848497cda4949
BLAKE2b-256 checksum
How to use checksums
7e8d9f09dd25aea143b4487d7155d517b9aba1502233b69487c5bbe7de26fe9f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-macosx_10_12_x86_64.whl

Download URL mpatch-1.8.1-cp38-abi3-macosx_10_12_x86_64.whl
Size 884.8 kB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
59d1c848903d175c41aab3dfcd66c9068cf2b19ef98402502ec0cfec9be517ed
BLAKE2b-256 checksum
How to use checksums
bc7b8c1c044a2c03c66fbd359e4ad36464db36f0f3a69c0120b34464a2ccafe1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / mpatch-1.8.1-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL mpatch-1.8.1-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 1.6 MB
Tags CPython 3.8 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4aff57f46533f1b71ce197ca3d69c16244918bbeef10175e23c7a303f83b7d45
BLAKE2b-256 checksum
How to use checksums
2ec409207cba56da26be505bb440ef29d8aae284a90e57c1117ae171327b635e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Security for mpatch 1.8.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 19 files in this release have been uploaded with provenance metadata.

Select from 19 files

Attestation for mpatch-1.8.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page