Skip to main content

Serc

An experimental CPython bytecode compiler, written in Rust.

Highlights

  • Compile Python source to CPython .pyc files without a CPython installation.
  • Target Python 3.12, 3.13, 3.14, and 3.15 with a single executable.
  • Check source files and recursively compile packages from the command line.
  • Embed the compiler via the Rust library.

Serc produces byte-for-byte identical output on an extensive corpus of real-world Python code, including Django, Airflow, and Transformers, >40% faster than CPython's built-in compiler:

Project Serc CPython 3.14.5 compileall Speedup
NumPy 2.4.6 (505 files) 1.194 s ± 0.023 s 1.739 s ± 0.060 s 1.46×

But Serc is also experimental! And so may emit incorrect bytecode in some cases.

Installation

Install from crates.io with Rust 1.96 or later:

cargo install serc-cli --locked

Getting started

Given hello.py:

def greet(name):
    return f"Hello, {name}!"

Compile it to bytecode, emitted at __pycache__/hello.cpython-314.pyc:

serc compile hello.py

Pass a directory to compile its Python files recursively, or use --check to compile without writing cache files:

serc compile path/to/package
serc compile --check path/to/package

Compilation uses the available CPUs by default. Use --jobs (or -j) to set a limit, including --jobs 1 for serial compilation. You can also set the default with RAYON_NUM_THREADS:

serc compile --jobs 4 path/to/package

Python version

Serc emits Python 3.14-compatible bytecode by default, but supports target selection with --python-version. For example, to emit Python 3.15 bytecode:

serc compile --python-version 3.15 path/to/package

Serc supports the following CPython minor versions:

Target Pinned CPython release
3.12 3.12.14
3.13 3.13.15
3.14 3.14.5
3.15 3.15.0rc2

Each target writes its own cache tag and bytecode magic number, so the four versions can coexist under __pycache__.

Optimization

Use -O to remove assertions and set __debug__ to false, matching Python's -O mode. Use -OO to additionally remove module, class, and function docstrings:

serc compile -O hello.py
serc compile -OO hello.py

You can also select the level explicitly with --optimize 0, --optimize 1, or --optimize 2. Level 0 is the default. Optimized caches use Python's naming convention, such as __pycache__/hello.cpython-314.opt-1.pyc and __pycache__/hello.cpython-314.opt-2.pyc, so all three levels can coexist.

Rust library

Add Serc to your Cargo.toml:

[dependencies]
serc = "0.1.0"

Compile Python source and serialize the resulting code object in CPython's marshal format:

let module = serc::compile("print('Hello, world!')\n", "hello.py").unwrap();
let marshaled = module.marshal();

Compilation defaults to Python 3.14. See the library guide for selecting another Python version and generating .pyc files.

License

Serc is licensed under either of

at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Serc by you, as defined in the Apache-2.0 license, shall be dually licensed as above, without any additional terms or conditions.

Metadata

Release files for serc 0.1.6

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

Source distribution (sdist)

Source distribution for serc 0.1.6
File Size Uploaded Provenance
serc-0.1.6.tar.gz 2.8 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for serc 0.1.6
File
serc-0.1.6-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
serc-0.1.6-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
serc-0.1.6-py3-none-win32.whl Python 3 none Windows x86-32 Details
serc-0.1.6-py3-none-musllinux_1_1_x86_64.whl Python 3 none Linux musl 1.1+ x86-64 Details
serc-0.1.6-py3-none-musllinux_1_1_riscv64.whl Python 3 none Linux musl 1.1+ RISC-V 64 Details
serc-0.1.6-py3-none-musllinux_1_1_i686.whl Python 3 none Linux musl 1.1+ x86-32 Details
serc-0.1.6-py3-none-musllinux_1_1_armv7l.whl Python 3 none Linux musl 1.1+ ARMv7l Details
serc-0.1.6-py3-none-musllinux_1_1_aarch64.whl Python 3 none Linux musl 1.1+ ARM64 Details
serc-0.1.6-py3-none-manylinux_2_31_riscv64.whl Python 3 none Linux glibc 2.31+ RISC-V 64 Details
serc-0.1.6-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details
serc-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
serc-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl Python 3 none Linux glibc 2.17+ IBM System/390x Details
serc-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl Python 3 none Linux glibc 2.17+ PowerPC 64-le Details
serc-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl Python 3 none Linux glibc 2.17+ x86-32 Details
serc-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl Python 3 none Linux glibc 2.17+ ARMv7l Details
serc-0.1.6-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
serc-0.1.6-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details
serc-0.1.6-py3-none-linux_armv6l.whl Python 3 none linux armv6l Details

Total release size: 96.7 MB

Release files / serc-0.1.6.tar.gz

Download URL serc-0.1.6.tar.gz
Size 2.8 MB
Tags Source
SHA-256 checksum
How to use checksums
eb06e7b7b8dc822b26f96b0d90a6dab1e500ff403cad03ebd17cb25d709219d2
BLAKE2b-256 checksum
How to use checksums
2539503a505c91b073ad15817e8786a66e4c6c9425cbc4efd22f2c0006ae1caf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-win_arm64.whl

Download URL serc-0.1.6-py3-none-win_arm64.whl
Size 4.7 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
db1ff1c0ade75edf41ea7e336544c44b27f45766e86b4aa6bc3fb4504a03825f
BLAKE2b-256 checksum
How to use checksums
a4a8ab2e765a3980610e8c1ea153c015ee6070538a32c10dcc6a649f4d077795
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-win_amd64.whl

Download URL serc-0.1.6-py3-none-win_amd64.whl
Size 6.0 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
5f1ccd50d20cb70c515d609f219def3dda747f1d9e4d43fa12a82e457153502e
BLAKE2b-256 checksum
How to use checksums
19772aae44ccb74af4ebd93bc35207799c5327ce15c30effa3de6d4f270dca9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-win32.whl

Download URL serc-0.1.6-py3-none-win32.whl
Size 4.9 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
6ce9f35a9b102ebc4ac3e4db3b7ef912737638f9d5204c99087083495333222a
BLAKE2b-256 checksum
How to use checksums
9f7f4fa0ab48facbb247935ef2e6dadb551dbbdf237b3494e4329525e1ef4fc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-musllinux_1_1_x86_64.whl

Download URL serc-0.1.6-py3-none-musllinux_1_1_x86_64.whl
Size 5.1 MB
Tags Linux musl 1.1+ x86-64 Python 3
SHA-256 checksum
How to use checksums
31a6560b37b69901d38ccbd911dc7aa7b575bb08e7d9a48e51b8dea4dc9c2fe7
BLAKE2b-256 checksum
How to use checksums
d577a3ffe326b87adb930b87318eca0de414b2b7fd4b4df231c483b938cfa7f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-musllinux_1_1_riscv64.whl

Download URL serc-0.1.6-py3-none-musllinux_1_1_riscv64.whl
Size 5.1 MB
Tags Linux musl 1.1+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
1b21914c9f8b3c69086e2309f73a7e8c0ac0917319127b6fa77e602c5f20dadf
BLAKE2b-256 checksum
How to use checksums
bc217c0574e2b020d07b8227e43d5c6a26196d12d7b4ccc02137ed8a940cce73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-musllinux_1_1_i686.whl

Download URL serc-0.1.6-py3-none-musllinux_1_1_i686.whl
Size 5.0 MB
Tags Linux musl 1.1+ x86-32 Python 3
SHA-256 checksum
How to use checksums
93bd98d2289c10a9064db72ebf4ba1c376c1ca8f3ac64f1a647fb99dfac9b84f
BLAKE2b-256 checksum
How to use checksums
fabb43882de8947dbccaa29ed3a33d963c9a907123f10b43c3f6202a1cceb6bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-musllinux_1_1_armv7l.whl

Download URL serc-0.1.6-py3-none-musllinux_1_1_armv7l.whl
Size 4.9 MB
Tags Linux musl 1.1+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
152d5d47c8ca32257679f4f732143041b6c530b026a1cbba94a179f925dc7671
BLAKE2b-256 checksum
How to use checksums
2000a5af4e04e7cac287ff5459fd4bbc4af945e31b326dfb37b52db4e8a7392e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-musllinux_1_1_aarch64.whl

Download URL serc-0.1.6-py3-none-musllinux_1_1_aarch64.whl
Size 4.7 MB
Tags Linux musl 1.1+ ARM64 Python 3
SHA-256 checksum
How to use checksums
3f2608f33b93406e3fa29742a76a01bd654ba02ff14a9213fd31d5cd13e9b1b0
BLAKE2b-256 checksum
How to use checksums
8cea37a034c3666e406061024d561e609c99c132cc3b1ac357a8f4bf6f7f1689
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_31_riscv64.whl

Download URL serc-0.1.6-py3-none-manylinux_2_31_riscv64.whl
Size 5.1 MB
Tags Linux glibc 2.31+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
b427f178a5432667faa4e6da88ebccc890b6d46edc39acc3f23d790d09743a67
BLAKE2b-256 checksum
How to use checksums
fce42eb884eb812286d68c2396a57ae8899732b43abf62a5c4b1deef528ab2fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_28_aarch64.whl

Download URL serc-0.1.6-py3-none-manylinux_2_28_aarch64.whl
Size 5.7 MB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
12c666d843cabcf31e73ff06f61062957679d520222f07f44c937d08f9bfd1a4
BLAKE2b-256 checksum
How to use checksums
04a5aaeebc306ea74c79e9ca7d883eefff52250b75d2016842b2664f89be6053
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL serc-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 6.0 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
2fcc3ac158d4fd22a989a785cc38ec634a6d3b72e804c2463b96762ddd657784
BLAKE2b-256 checksum
How to use checksums
2dabff2a36a98de2ab1cca7749c0672419123b9c87ac865d8d9b8e7616253507
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL serc-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 5.6 MB
Tags Linux glibc 2.17+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
8852dc0e0f833f534733084278ae5c301a18118e3954272ca19102f6b8a763e6
BLAKE2b-256 checksum
How to use checksums
a5113943bc2ed04a332b55331d3f5458b8bd7fc3289e68ac62da844b47aadbd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL serc-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 5.5 MB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
21e29f0bdc1caea7ae5ae9e637d8a529f89c35da27eeee1e6d06927cd194c5d5
BLAKE2b-256 checksum
How to use checksums
549f415ff96fd1939f246607585813fbfd2a81c65706d4b3be34cd3c5227d41e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL serc-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Size 5.1 MB
Tags Linux glibc 2.17+ x86-32 Python 3
SHA-256 checksum
How to use checksums
972080387af0d064f810473c35997bce846c80453a8ec92b6d62a8b4a45fbefe
BLAKE2b-256 checksum
How to use checksums
66487f5cd83b80a727d8920a934febf860bb33eb0fd718130d63821dbbe6bb3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL serc-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 4.8 MB
Tags Linux glibc 2.17+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
8190a6b6caebb4d5064d4bee30ef5fa46a9fa73bb4ded2942130d730794d3a5a
BLAKE2b-256 checksum
How to use checksums
e7e8596e46c58f509e915c570c0b5a23f7862a1b23cbdb2c4bf75ba174322019
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-macosx_11_0_arm64.whl

Download URL serc-0.1.6-py3-none-macosx_11_0_arm64.whl
Size 5.5 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bf472c8bd2b64e9dedddacfb39e0049d688dbcf02ff2b21bb5fc68eaf0016137
BLAKE2b-256 checksum
How to use checksums
15e6b701d9a58dc4ec23132e5783c460c00304cd32a5f0daf521cce025081c5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-macosx_10_12_x86_64.whl

Download URL serc-0.1.6-py3-none-macosx_10_12_x86_64.whl
Size 4.9 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
f3c7c989335e82b302d302c5ae47689b9ca7fce24b34305efc2cfe03a7dec75c
BLAKE2b-256 checksum
How to use checksums
b7b96765ac4a24a629ccd9c8c708d0768c2546713fa02a8d4b2a4cb1db4532bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / serc-0.1.6-py3-none-linux_armv6l.whl

Download URL serc-0.1.6-py3-none-linux_armv6l.whl
Size 5.0 MB
Tags Python 3 linux armv6l
SHA-256 checksum
How to use checksums
2e69f1eed8c8c72fad789ee04230dc7aa7cdc2d8a4a7a3a757070573cf45decb
BLAKE2b-256 checksum
How to use checksums
4430f4cce10cb725335b2c8fe376a969aa6473f890f30da2c9983df88a0253ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for serc 0.1.6

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

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