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.

In a single-worker benchmark, Serc compiled NumPy faster than CPython’s built-in bytecode compiler. Serc also produces byte-for-byte identical output on an extensive corpus of real-world Python code, including Django, Airflow, and Transformers.

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×

However, 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.4

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.4
File Size Uploaded Provenance
serc-0.1.4.tar.gz 2.8 MB Without provenance Details

Built distributions (wheels)

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

Total release size: 92.4 MB

Release files / serc-0.1.4.tar.gz

Download URL serc-0.1.4.tar.gz
Size 2.8 MB
Tags Source
SHA-256 checksum
How to use checksums
fc1a19a2bbf1e890a3845a48483e17bb0fb29e6165d0954ffbb37a1b897a3d2d
BLAKE2b-256 checksum
How to use checksums
c16c4751ab14f2a69d37d533d82d3a0c5d01c9dec292bfa88fb4a306a9d6b996
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.4-py3-none-win_arm64.whl

Download URL serc-0.1.4-py3-none-win_arm64.whl
Size 4.7 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
5f4f8d899214eb20659426f782c305853c7107db61fc0d94eba0e3b4d38bd18a
BLAKE2b-256 checksum
How to use checksums
b12a7ec74e4a28df058df104ae131fbdc2f1c7091f64ae6f8ec96823c56c9cd8
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.4-py3-none-win_amd64.whl

Download URL serc-0.1.4-py3-none-win_amd64.whl
Size 5.0 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
0ba001446de44cf717228445643949e1b56093893c38a22a93f9b675fd449a8b
BLAKE2b-256 checksum
How to use checksums
c192970df5c32f1606a489d0e324684aabefb152d291ce53098a7e649532d7a8
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.4-py3-none-win32.whl

Download URL serc-0.1.4-py3-none-win32.whl
Size 4.8 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
44b46c7a27699395982d57158c70c74cafb52f43ae41c0420d43d17457628e4a
BLAKE2b-256 checksum
How to use checksums
9ee57ff05af5e1a82e5187d42f2be0ddd1a3307200e75c9d36fc5ef386416a3b
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.4-py3-none-musllinux_1_1_x86_64.whl

Download URL serc-0.1.4-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
ea7cf51a7e937b865349b1a84b0cb1c00b5506a00934e7509a0b3169cd1ff795
BLAKE2b-256 checksum
How to use checksums
7677582990dc45937dc403d363f1679e6cfe5c0ce31c919cd0449fe92b039168
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.4-py3-none-musllinux_1_1_riscv64.whl

Download URL serc-0.1.4-py3-none-musllinux_1_1_riscv64.whl
Size 5.3 MB
Tags Linux musl 1.1+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
90437053153a94938d5f1e2d6fbb1b3c843f6f44a5b0235fee010ae83c1bfd0a
BLAKE2b-256 checksum
How to use checksums
d3ca1ee3b8269c5fe36f387e5070373067a35723d3a024e9c3e520d9df65a84e
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.4-py3-none-musllinux_1_1_i686.whl

Download URL serc-0.1.4-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
017bc6d06977cdfc38a0b661d07579874787a619efd675d71276e6f31cc916e3
BLAKE2b-256 checksum
How to use checksums
ece04cdb464e1ac077830c0952d3c9c312e9ce6bae319c8d8805af29054e3583
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.4-py3-none-musllinux_1_1_armv7l.whl

Download URL serc-0.1.4-py3-none-musllinux_1_1_armv7l.whl
Size 4.8 MB
Tags Linux musl 1.1+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
acccce3f951b813ef59c52694c8197f9f2fde27c620fa5ff7db61e63a979634b
BLAKE2b-256 checksum
How to use checksums
fcd3231201452eed14c7a8e1cb6474c13bec3d43d194620bbbd1646184810234
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.4-py3-none-musllinux_1_1_aarch64.whl

Download URL serc-0.1.4-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
634d2628191461d5a8b1cf43e46b303b07c66411c12766f3ea554a2dbda6a577
BLAKE2b-256 checksum
How to use checksums
d3ecb091715a3bb2af6e43291ceeff296adac5770df85365248cc06e16869108
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.4-py3-none-manylinux_2_31_riscv64.whl

Download URL serc-0.1.4-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
d7384d70a8855a2eda50b207d2dc65d2a96c562d46938423ca431a44d08e89b6
BLAKE2b-256 checksum
How to use checksums
1770fedaf3c6a31e75cbc21f93dcf28374c829aab6b4faa064344a335cf4385d
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.4-py3-none-manylinux_2_28_aarch64.whl

Download URL serc-0.1.4-py3-none-manylinux_2_28_aarch64.whl
Size 4.7 MB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
263a1b94eb283d8a89e3436c21bc8b0ecc960ba8388b6fdbb6b34b4a2bc0e5bd
BLAKE2b-256 checksum
How to use checksums
29f60c4b757edb88d5dff7f05a83291013ef6f4b872b3ffac98d92eb8db791bc
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.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL serc-0.1.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 5.0 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
c721887d32f34e8e33d812b394c441ef81a35b7d020a699805941f522eb2ecf3
BLAKE2b-256 checksum
How to use checksums
69fb2742795f19d6c1d89e5c813f62f5a34b87b43c1d82db65d0ea41981c6cc5
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.4-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL serc-0.1.4-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
bcf58f00009fd5ac80d8f84341883186ef541104f9c77bc190ebae44d688b6de
BLAKE2b-256 checksum
How to use checksums
6a2ac6fac5814e45f2c63a3ffc4027a351da7be56a8edfccb1514eb6b13e4b6b
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.4-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL serc-0.1.4-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 5.4 MB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
7129c35340b47db2f181c343b176028f3fe790924b15a5e7460c7e5a6a267a0b
BLAKE2b-256 checksum
How to use checksums
e1b115cfe9edd15fd5b50d1593e91bc86c9c1a09e710273b258d9f84fd8b4afb
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.4-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL serc-0.1.4-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
94baec03ce3d2ae459684500904b4a58db90ffc5fc4713807ffcdd180bcf1660
BLAKE2b-256 checksum
How to use checksums
c9dd963b57368974b63ab8ceeb143480dfbfa6c9806bc10891db542ad44407fb
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.4-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL serc-0.1.4-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
2778e46ecc765aa69bfb23a10819a797ed1b199d3d21bacf497a917c39855819
BLAKE2b-256 checksum
How to use checksums
becafb5e07775748827edee410de08926f1c193d42b80c240d7987115a3b17b7
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.4-py3-none-macosx_11_0_arm64.whl

Download URL serc-0.1.4-py3-none-macosx_11_0_arm64.whl
Size 4.5 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a879ada55abc073e87544d22c22dfe7b517abb05263a152519a9404011811bc0
BLAKE2b-256 checksum
How to use checksums
3548960f0644a2857ab8a7bb990c1abdc6844b729b609db9c8f0ddaa838f6551
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.4-py3-none-macosx_10_12_x86_64.whl

Download URL serc-0.1.4-py3-none-macosx_10_12_x86_64.whl
Size 4.8 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
5470cd00bd67af166a516feaec8a8e4bf098f47a05e6944df2ab3edab198ce8e
BLAKE2b-256 checksum
How to use checksums
5cbc16a7e179969b7405d8b304e550df767ead4c1d721afc84785cb85c851301
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.4-py3-none-linux_armv6l.whl

Download URL serc-0.1.4-py3-none-linux_armv6l.whl
Size 5.0 MB
Tags Python 3 linux armv6l
SHA-256 checksum
How to use checksums
d66b3a09c58cfa71ce78a351452ae98d1ba5a4e53142151d19e357002092fcfb
BLAKE2b-256 checksum
How to use checksums
cb9537a6b3c32ad9b13e189a526a6f298c60db824eef24169daa030efb6a5a67
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.4

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