fastrectpack
A drop-in accelerator for rectpack, the pure-Python 2D rectangle packing library. The MaxRects packing algorithms are re-implemented in C++17 and produce exactly the same packings as the original, 5x to 246x faster on the 14 integer benchmark workloads and more on large single-bin jobs. Sizes can be Python ints, floats, numpy.float64 or numpy.int64.
# before
from rectpack import newPacker
# after: nothing else changes
from fastrectpack import newPacker
Headline numbers
Default newPacker() settings. Times are the best recorded run; full method and all 14 cases are in BENCHMARKS.md.
| Workload | Rectangles | Original rectpack | Pure-Python fixes only | fastrectpack (C++) | Speedup |
|---|---|---|---|---|---|
| random sizes | 1,000 | 3.525 s | 0.473 s | 0.0144 s | 246x |
| random sizes | 5,000 | 21.123 s | 3.738 s | 0.1364 s | 155x |
| few large, many small | 1,000 | 1.360 s | 0.243 s | 0.0102 s | 133x |
| sprite sizes | 2,000 | 1.500 s | 0.322 s | 0.0177 s | 85x |
| sheet cutting, 100 bins | 2,000 | 0.415 s | 0.214 s | 0.0780 s | 5x |
Two things to read from this table:
- Part of the win needs no C++. A better algorithm in plain Python gives 1.7x to 7.5x on its own (the "Pure-Python fixes only" column). The C++ port supplies the rest.
- The gain depends on the workload. Jobs that spread rectangles over many bins gain about 5x, because the bin-selection loop is still Python. See "What is not faster" below.
Float and numpy sizes (new in 0.2.0)
One bin, MaxRectsBlsf, no rotation: the settings the gdsfactory chip-layout package uses, which passes integer rectangle sizes and a numpy.float64 bin size. Best of 7 interleaved rounds (3 at 1,000 rectangles).
| Input | Rectangles | Original rectpack | fastrectpack (C++) | Speedup |
|---|---|---|---|---|
int rectangles, numpy.float64 bin (gdsfactory) |
300 | 0.633 s | 0.0022 s | 284x |
int rectangles, numpy.float64 bin (gdsfactory) |
1,000 | 20.612 s | 0.0173 s | 1193x |
float rectangles and bin |
1,000 | 20.272 s | 0.0148 s | 1374x |
numpy.int64 rectangles, int bin |
1,000 | 27.063 s | 0.0156 s | 1734x |
The output is identical, including the type of every number. These ratios are larger than the ones above because everything goes into a single bin, where the original's cost grows fastest. gdsfactory's own _pack_single_bin function, run unmodified with fastrectpack in place of rectpack, returned identical results 12x (50 rectangles) to 335x (500 rectangles) faster, timed once each.
The benchmark machine is a laptop that drops into slow phases (probably thermal throttling), so absolute seconds vary by up to about 2.3x. Best-time speedup ratios agreed to roughly 10% between full runs.
Install
pip install fastrectpack
Prebuilt wheels cover CPython 3.9 to 3.13 on Linux x86_64 (manylinux), Windows x86_64 and macOS arm64 (Apple silicon). Other platforms (Linux ARM, Intel Macs, Alpine/musl) and Python 3.14 are untested and build from the source distribution, which needs CMake 3.15+ and a C++17 compiler (MSVC 2019+, GCC 9+ or Clang 10+). From a checkout: pip install .. rectpack==0.2.2 is installed as a dependency.
Usage
Identical to rectpack:
from fastrectpack import newPacker
packer = newPacker()
for width, height in [(100, 30), (40, 60), (30, 30), (70, 70), (100, 50), (30, 30)]:
packer.add_rect(width, height)
packer.add_bin(300, 450)
packer.pack()
for bin_index, x, y, w, h, rid in packer.rect_list():
print(bin_index, x, y, w, h)
fastrectpack re-exports everything rectpack exports. MaxRectsBl, MaxRectsBssf, MaxRectsBaf and MaxRectsBlsf are replaced by accelerated subclasses of the originals; everything else is the original object.
How it works
The four MaxRects classes subclass the originals and run the algorithm in a small C++17 core while every size is a Python int, a Python float, a numpy.float64 or a numpy.int64. Results have the same values and the same types as the original returns. Anything else falls back, for good, to the original Python code for that object.
Profiling the original showed about 90% of its time in one step that compares every pair of free rectangles after each placement. The port compares only the pairs that involve newly created rectangles, which is valid because the list left by the previous step contains no rectangle that contains another. docs/DESIGN.md covers the design, exactly what "identical" means, and the known gaps.
What is accelerated
| Accelerated | |
|---|---|
| MaxRects algorithms (Bl, Bssf, Baf, Blsf), with or without rotation | Yes |
| All bin heuristics (BNF, BFF, BBF, Global), online and offline modes, all sort orders | Yes, when used with a MaxRects algorithm |
Sizes given as plain Python int, up to 2^30 |
Yes |
Sizes given as float, numpy.float64 or numpy.int64, in any mix with int (new in 0.2.0) |
Yes, up to 2^30 (2^26 for MaxRectsBaf) |
Sizes given as Decimal, Fraction, bool, numpy.float32 or other numpy integer types |
No: handled by the original code, same result, same speed as rectpack |
| Skyline and Guillotine algorithms | No: unchanged original code |
When an accelerated object meets an input outside the fast path, it hands its state to the original Python implementation and continues there, so results and error messages stay the same.
What is not faster
- Many-bin workloads. With 100 open bins, most of the time goes to the Python loop that asks every bin how well a rectangle fits. That loop was left in Python, so the gain there is about 5x.
Decimal,numpy.float32and numpy integers other thannumpy.int64. These fall back to the original code, so there is no speedup. The fallback costs nothing extra: it makes 0.007% more Python function calls than plain rectpack and takes the same time. An earlier version of this README reported the fallback as about 2x slower than rectpack. That was a measurement artifact (two timings taken one after the other on a laptop whose speed drifts), not a defect;results/fallback_slowdown.txthas the evidence.- Skyline and Guillotine. Not ported.
How correctness was checked
- Exact parity. After every single placement, the tests compare the fitness value, the placement and the complete list of free rectangles (including its order) against the original. 1,038 tests, including three Hypothesis property tests (300, 150 and 400 generated cases) and all 200 packer configurations that use a MaxRects algorithm, run once with integer sizes and once with mixed types.
- Types as well as values. Every comparison records the type of each number, so
5,5.0andnumpy.float64(5.0)count as different results. On the float path the tests also check that the work stayed in C++. - Edge cases. Decimals, NaN, infinity, zero and negative sizes, booleans, strings,
None, unsupported numpy types, sizes beyond the native range, exact fits, pieces larger than the bin, floats that do not round cleanly. Results and exceptions match the original. - Benchmark outputs. Every benchmark run hashes the full result of all three variants; all 14 cases are identical.
- Sanitizers. The suite passes under AddressSanitizer and UndefinedBehaviorSanitizer, both locally (GCC 15.2 in WSL) and on a GitHub Actions Ubuntu runner.
- Mutation check. Eleven deliberate bugs were injected into the C++, five of them in the float and numpy handling. The tests caught all eleven.
- Platforms and Python versions. In GitHub Actions the full suite, including the float and numpy tests, passes on Python 3.9, 3.10 and 3.13 on Linux x86_64, and on 3.10 and 3.13 on Windows x86_64 and macOS arm64. The wheels for Python 3.9 to 3.13 on those three systems are each built and tested too, but without numpy installed, so the numpy tests are skipped there. Locally the suite also passes on Windows with numpy 1.26, 2.4 and 2.5.
Run them yourself:
pip install ".[test]"
pytest
python bench/run_bench.py --quick # about a minute
python bench/run_bench.py # full benchmark, several minutes
python bench/run_mixed.py --quick # float and numpy input
Behaviour inherited from rectpack
These were found while porting. They are reproduced on purpose, not fixed, so that results match (research/original_bugs.py demonstrates each):
validate_packing()never compares the last rectangle with the others, so an overlap involving it goes undetected.MaxRectsBldocuments a smallest-x tie-break but takes the first candidate.- With the BBF bin heuristic, online
add_rectreturnsTrue/Falseinstead of the rectangle.
Limitations
- Speed was measured on one Windows laptop only. Correctness is checked in CI on Linux, Windows and macOS (arm64), but speed on those systems has not been measured.
- The package subclasses rectpack internals and pins
rectpack==0.2.2. A new rectpack release would need re-checking. - An unpickled or deep-copied packer continues on the original Python code path: correct, but not accelerated.
Contributing and security
Issues and pull requests are welcome; see CONTRIBUTING.md. The most useful report is a real workload where it is still slow. Please report security problems privately, as described in SECURITY.md.
Credits and licence
Apache-2.0, the same licence as rectpack, of which this is a derivative work. rectpack is by SecNot. The MaxRects algorithms come from Jukka Jylänki, "A Thousand Ways to Pack the Bin" (2010). See NOTICE.
Metadata
Release files for fastrectpack 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| fastrectpack-0.2.0.tar.gz | 49.2 kB | With provenance | Details for fastrectpack-0.2.0.tar.gz |
Built distributions (wheels)
Total release size: 2.7 MB
Release files / fastrectpack-0.2.0.tar.gz
| Download URL | fastrectpack-0.2.0.tar.gz |
|---|---|
| Size | 49.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4cd219445f2f1bb313fa0be0bd6d9fe7ffdc9a7383d7b84b9bca52bab4dc0da6
|
|
BLAKE2b-256 checksum How to use checksums |
4975b4adc42ea61067aa752964823ba3dbafde6abd52a696bb5289a361b500d2
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp313-cp313-win_amd64.whl
| Download URL | fastrectpack-0.2.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 307.8 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d1bfa7349a2318db04c8fb817bdea976022059312c4b5fdff6985566c2e1d55f
|
|
BLAKE2b-256 checksum How to use checksums |
51efffcd7286eb19953277277a4ef9d3898203f5352ce0f5b152d9eabd13fbae
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastrectpack-0.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 118.8 kB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
e5fedcd0b4fd72c76941279a62a89c608cd8b9a1905ce3cf0f7f1b8c0612f155
|
|
BLAKE2b-256 checksum How to use checksums |
0631370409351ab8c452c9d93d3e708a398495a95126a68b1b467f0e2ccc3477
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | fastrectpack-0.2.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 100.4 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
3d63f6f2d953fc16b9aa919435a4852ae59e941ec8dafd8bf1d67c6ad75452df
|
|
BLAKE2b-256 checksum How to use checksums |
17f741d5e4cfab0965ab347c185a52b2b38c4999cff275712c4d97007f44312f
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp312-cp312-win_amd64.whl
| Download URL | fastrectpack-0.2.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 307.8 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
36aa3ee7e276edc0b483b2a9b050b9b4558a167b3e14d06d53c33f7fe258eeca
|
|
BLAKE2b-256 checksum How to use checksums |
27cf7c0579cca70ee0d7f04a848265119732498ba7c21aa254a0e23b5204ec49
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastrectpack-0.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 118.7 kB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
7f546cf04320a6243659d76d49ee3761638b0616eadca7d6965c565d37525f66
|
|
BLAKE2b-256 checksum How to use checksums |
72539b16fe20f1ae85803aec0ba7b705ee12ead158b85e0470f33d1509f077f6
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | fastrectpack-0.2.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 100.4 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4c31279d704ff1d0e1f7562bc262a39e506d6925dac8018cd11929fd856db890
|
|
BLAKE2b-256 checksum How to use checksums |
08f3a696c5d41e8ffba9f152c86eca4226030d74f12bb7d45224a2e1ae5e3fde
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp311-cp311-win_amd64.whl
| Download URL | fastrectpack-0.2.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 304.3 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
94c7685bc58b88440f4c62b1b071b9bfc91e19d66bd64a3ddccde6f8444740d4
|
|
BLAKE2b-256 checksum How to use checksums |
d0d349dd499731ad2e3f9b871012f64199e8bde11a3abda2c197beab099524ea
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastrectpack-0.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 115.8 kB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
08425349fede4d9e8e0cb4d6180c00f175eaa252ea35ba4f5d162b1f5f3bc4ea
|
|
BLAKE2b-256 checksum How to use checksums |
23b28e540d084441a6946d33f51b7bda1e126ddd122f12374773fae999baf4d1
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | fastrectpack-0.2.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 99.5 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ea78aad8d0ff69d501f46bc973b6b7d641b827d559fb0f206ee6d90f31293d23
|
|
BLAKE2b-256 checksum How to use checksums |
d54870754d168747703793aa6613d001844ceaafc09adfc8300f065dc131d979
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp310-cp310-win_amd64.whl
| Download URL | fastrectpack-0.2.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 303.2 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
afffce03a022ce4577c35733dc9aee4d84b1dc8faa04021ae137eb54fa9db728
|
|
BLAKE2b-256 checksum How to use checksums |
54b39e84f66752b9c16e73e3cdc6bb171be7a9ce20cb7e8a020717c7cc6de02c
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastrectpack-0.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 114.5 kB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
ddda15532f8634226bf65aaae89313d0820432ce4f09390f7b046b8e5ab34309
|
|
BLAKE2b-256 checksum How to use checksums |
3b75aeacf39dea70a0402629bc0b042a6a749f90031ec5fcabe6809fba8897e3
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | fastrectpack-0.2.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 98.3 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f94dae5b9ca50b88a2da739e32337084de6c0a02d7c5bbc875afa3fb89fab484
|
|
BLAKE2b-256 checksum How to use checksums |
6a111e20addcbbc09dd59446b5a3e9fdab63efd030403fa5bef2afb2093708d9
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp39-cp39-win_amd64.whl
| Download URL | fastrectpack-0.2.0-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 304.1 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
42f9a5d8b12b697061fc0aead94751bcc033425c6943ecc444efb8504fc27589
|
|
BLAKE2b-256 checksum How to use checksums |
cd06922b9c9d6506dde92bc2d83213a8786402df018378820bf3ad8761f63064
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | fastrectpack-0.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 114.7 kB |
| Tags | CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d2806cf8abcd9c0d9428d32f1f70867255c79d0597ee46177c6ce2bf9f28e879
|
|
BLAKE2b-256 checksum How to use checksums |
8f2ce2e6febe271673529cce243b09bfb7cb74f37b57db76e9aa2cca86561536
|
| 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 Nov 10, 2026.
Transparency logRelease files / fastrectpack-0.2.0-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | fastrectpack-0.2.0-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 98.5 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d771cf7d2d2e75eb83ee1fb634cd5a9871719ebf59ccd08763942dd246d7b828
|
|
BLAKE2b-256 checksum How to use checksums |
56cb49288ba4fef40a82c42b23d207182b93021a418814cbc8fd2e1726624df5
|
| 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 Nov 10, 2026.
Transparency logSecurity for fastrectpack 0.2.0
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 16 files in this release have been uploaded with provenance metadata.
Attestation for fastrectpack-0.2.0.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 Nov 10, 2026.
Transparency logA 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.