Skip to main content

ssrJSON

PyPI - Version PyPI - Wheel Supported Python versions codecov

A SIMD boosted high-performance and correct Python JSON parsing library, faster than the fastest.

中文

Introduction

ssrJSON is a Python JSON library that leverages modern hardware capabilities to achieve peak performance, implemented primarily in C. It offers a fully compatible interface to Python’s standard json module, making it a seamless drop-in replacement, while providing exceptional performance for JSON encoding and decoding.

If you prefer to skip the technical details below, please proceed directly to the How To Install section.

How Fast is ssrJSON?

TL;DR: ssrJSON is faster than or nearly as fast as orjson (which announces itself as the fastest Python library for JSON) on most benchmark cases.

Below is an artificial benchmark case to demonstrate the speed of encoding non-ASCII JSON (simple_object_zh.json). Upon seeing the diagram below, you might wonder: why do the performance results from other libraries appear so poor? If you are interested, please refer to the section UTF-8 Cache of str Objects.

Real-world case (twitter.json):

Real-world case II (github.json):

Floats (canada.json):

Numbers (mesh.json):

ssrjson.dumps() is about 4x-31x as fast as json.dumps() (Python3.14, x86-64, AVX2). ssrjson.loads() is about 2x-8x as fast as json.loads() for str input and is about 2x-8x as fast as json.loads() for bytes input (Python3.14, x86-64, AVX2). ssrJSON also provides ssrjson.dumps_to_bytes(), which encode Python objects directly to UTF-8 encoded bytes object using SIMD instructions.

Details of benchmarking can be found in the ssrjson-benchmark project. If you wish to run the benchmark tests yourself, you can execute the following commands:

pip install ssrjson-benchmark
python -m ssrjson_benchmark

This will generate a PDF report of the results. If you choose to, you may submit this report to the benchmark repository, allowing others to view the performance metrics of ssrJSON on your device.

SIMD Acceleration

ssrJSON is designed for modern hardware and extensively leverages SIMD instruction sets to accelerate encoding and decoding processes. This includes operations such as memory copying, integer type conversions, JSON encoding, and UTF-8 encoding. Currently, ssrJSON supports x86-64-v2 and above (requiring at least SSE4.2) as well as aarch64 devices. It does not support 32-bit systems or older x86-64 hardware with limited SIMD capabilities.

On the x86-64 platform, ssrJSON provides three distinct SIMD libraries optimized for SSE4.2, AVX2, and AVX512, respectively, automatically selecting the most appropriate library based on the device’s capabilities. For aarch64 architectures, it utilizes the NEON instruction set. Combined with Clang’s powerful vector extensions and compiler optimizations, ssrJSON can almost fully exploit CPU performance during encoding operations.

UTF-8 Cache of str Objects

The author has a detailed tech blog about this topic: Beware of Performance Pitfalls in Third-Party Python JSON Libraries.

Non-ASCII str objects may store a cached representation of their UTF-8 encoding (within the corresponding C structure PyUnicodeObject, represented as a const char * and a length with type Py_ssize_t) to minimize the overhead of subsequent UTF-8 encoding operations. When PyUnicode_AsUTF8AndSize (or other similar functions) is invoked, the CPython implementation utilizes it to store the C string along with its length. This mechanism ensures that the caller does not need to manage the lifetime of the returned C string. The str.encode("utf-8") operation does not write to the cache; however, if the cache is already present, it utilizes the cached data to create the bytes object.

Some third-party Python JSON libraries typically use certain CPython APIs to indirectly write UTF-8 results to the cache when performing dumps on non-ASCII str objects whose cache has not yet been populated. This makes benchmarks look better than real-world performance: the same object is repeatedly dumped during measurement, allowing the populated cache to be reused. In reality, UTF-8 encoding is CPU-intensive and is often the main performance bottleneck; writing the cache also increases memory usage.

ssrjson.dumps_to_bytes addresses this by leveraging SIMD instruction sets for UTF-8 encoding, achieving significantly better performance than conventional encoding algorithms implemented in CPython. Furthermore, ssrJSON lets users control whether to write this cache. Enabling it may make subsequent dumps_to_bytes calls on the same str object faster after the first call; the tradeoff is higher memory usage, as each visited non-ASCII str occupies additional memory corresponding to the length of its UTF-8 representation until the object is deallocated. Users should evaluate whether their projects repeatedly encode the same str objects before deciding whether to enable the cache.

Also, the ssrjson-benchmark project takes this aspect into account by differentiating test scenarios based on the presence or absence of this cache. The results demonstrate that ssrJSON maintains a substantial performance advantage over other third-party Python JSON libraries regardless of whether the cache exists.

Writing the cache is enabled globally by default. You can control this behavior globally with ssrjson.write_utf8_cache, or specify it per call to ssrjson.dumps_to_bytes with the is_write_cache argument.

ssrjson.dumps produces a str object and is unrelated to this section.

xjb64

ssrJSON employs xjb64 as float-to-string algorithm. Tests and comparisons reveals that the xjb64 algorithm significantly outperforms other algorithms in terms of performance and is more compatible. ssrJSON project adopts a slightly modified version to fit the standard behavior of Python's json module.

Random double on Apple M1:

Random double on AMD R7-7840H:

JSON Module compatibility

The design goal of ssrJSON is to provide a straightforward and highly compatible approach to replace the inherently slower Python standard JSON encoding and decoding implementation with a significantly more efficient and high-performance alternative. If your module exclusively utilizes dumps and loads, you can replace the current JSON implementation by importing ssrJSON as import ssrjson as json. To facilitate this, ssrJSON maintains compatibility with the argument formats of json.dumps and json.loads; however, it does not guarantee identical results to the standard JSON module, as many features are either intentionally omitted or not yet supported. For further information, please refer to the Behavior section.

Other Implementation Details

Overview of Encoding

The encoding performance of JSON libraries is not significantly limited by CPython, resulting in a very high potential maximum. As mentioned above, during string encoding, ssrJSON extensively utilizes SIMD instructions to accelerate copying and conversion operations. The implementation of dumps_to_bytes also tackles challenges related to UTF-8 encoding. ssrJSON includes a comprehensive UTF-8 encoding algorithm optimized for all supported SIMD features as well as Python’s internal string representation format (PyCompactUnicodeObject). When encoding integers, ssrJSON adapts the integer encoding approach from yyjson, a highly optimized C-language JSON parsing library.

Overview of Decoding

The main performance bottleneck in JSON decoding is the speed of creating Python objects. To address this, ssrJSON adopts the short-key caching mechanism from orjson, which greatly reduces the overhead of creating Python string objects. For string handling, when the input is of str type, ssrJSON applies SIMD optimizations similar to those used in encoding, speeding up the decoding process. For bytes inputs, string decoding is vectorized as well: a block of source bytes is validated and transcoded to the destination's UCS width with SIMD, and the destination widens in place (ASCII → UCS1 → UCS2 → UCS4) as wider code points appear. This part adapts simdutf's UTF-8 transcoding shapes and Lemire's block validation; blocks whose sequence lengths are too mixed for a vector shape fall back to yyjson's per-sequence decoding. Beyond string handling, ssrJSON extensively leverages yyjson’s codebase, including its numeric decoding algorithms and core decoding logic.

Limitations

Please note that ssrJSON is currently in its beta development stage, and some common features have yet to be implemented. We welcome your contributions to help build a highly performant Python JSON library.

To maintain stability, ssrJSON strives to minimize the addition of rarely used features for two reasons:

  • ssrJSON aims to serve as a high-performance foundational library rather than one overloaded with elaborate features.
  • Although C provides significant performance advantages, it also introduces considerable risks to stability. Software engineering experience shows that limiting rarely used features helps reduce critical vulnerabilities.

How To Install

Install from PyPI

Pre-built wheels are available on PyPI, you can install it using pip.

pip install ssrjson

Note: ssrJSON requires at least SSE4.2 on x86-64 (x86-64-v2), or aarch64. 32-bit platforms are not supported. ssrJSON does not work with Python implementations other than CPython. Currently supported CPython versions are 3.10, 3.11, 3.12, 3.13, 3.14, 3.15. For Python >= 3.15, you need to build it from source.

Build From Source

Since ssrJSON utilizes Clang's vector extensions, it requires compilation with Clang and cannot be compiled in GCC or pure MSVC environments. On Windows, clang-cl can be used for this purpose. Build can be easily done by the following commands (make sure CMake, Clang and Python are already installed)

# On Linux:
# export CC=clang
# export CXX=clang++
mkdir build
cmake -S . -B build  # On Windows, configure with `cmake -T ClangCL`
cmake --build build

Or you like the pip way:

mv pysrc ssrjson  # rename the python source directory to make it installable
pip install .

Usage

Basic

>>> import ssrjson
>>> ssrjson.dumps({"key": "value"})
'{"key":"value"}'
>>> ssrjson.loads('{"key":"value"}')
{'key': 'value'}
>>> ssrjson.dumps_to_bytes({"key": "value"})
b'{"key":"value"}'
>>> ssrjson.loads(b'{"key":"value"}')
{'key': 'value'}

NumPy Support

ssrJSON can directly serialize NumPy scalar types and ndarray objects without converting them to Python types first. To avoid introducing NumPy as a hard dependency, you must explicitly enable this by calling setup_numpy_types once:

>>> import numpy as np
>>> import ssrjson
>>> ssrjson.setup_numpy_types(np)

After setup, NumPy scalars and arrays are recognized in dumps and dumps_to_bytes:

>>> ssrjson.dumps(np.int64(42))
'42'
>>> ssrjson.dumps(np.array([1, 2, 3]))
'[1,2,3]'
>>> ssrjson.dumps({"data": np.array([[1, 2], [3, 4]]), "score": np.float32(0.95)})
'{"data":[[1,2],[3,4]],"score":0.95}'
>>> ssrjson.dumps_to_bytes(np.arange(5))
b'[0,1,2,3,4]'

Supported NumPy types:

Category Types
Integers int8, int16, int32, int64, uint8, uint16, uint32, uint64
Floats float16, float32, float64
Boolean bool_
Array ndarray (C-contiguous, any supported element dtype, up to 32 dimensions)

np.float64 is a subclass of Python float and is always handled by the standard float path, regardless of whether setup_numpy_types has been called.

When encoding an ndarray, ssrJSON reads element data directly from the array's memory buffer. Combined with the xjb64/xjb32 floating-point encoding algorithms and yyjson-derived integer encoding algorithms, this gives ssrJSON a significant performance advantage.

Simple benchmark shows ssrJSON outperforms orjson in encoding numpy arrays:

$ python dev_tools/numpy_benchmark.py --scale 10
numpy 2.4.2  |  scale=10  number=20  repeat=7  warmup=2
Python 3.14.3

[dumps_to_bytes: ssrjson vs orjson — numpy ndarray]

  int32_1d[1000000]  shape=1000000  dtype=int32  3906.2 KiB raw
    ssrjson  : median 1.83 ms  best 1.78 ms  out=4391695B  2.24 GiB/s
    orjson   : median 4.96 ms  best 4.88 ms  out=4391695B  843.99 MiB/s
    ssrjson is 2.72x faster than orjson (median); best 2.74x

  int64_1d[1000000]  shape=1000000  dtype=int64  7812.5 KiB raw
    ssrjson  : median 4.30 ms  best 4.13 ms  out=10982023B  2.38 GiB/s
    orjson   : median 8.79 ms  best 8.66 ms  out=10982023B  1.16 GiB/s
    ssrjson is 2.05x faster than orjson (median); best 2.10x

  float32_1d[1000000]  shape=1000000  dtype=float32  3906.2 KiB raw
    ssrjson  : median 9.15 ms  best 9.04 ms  out=10627011B  1.08 GiB/s
    orjson   : median 17.25 ms  best 17.18 ms  out=10627112B  587.55 MiB/s
    ssrjson is 1.88x faster than orjson (median); best 1.90x

  float64_1d[1000000]  shape=1000000  dtype=float64  7812.5 KiB raw
    ssrjson  : median 13.27 ms  best 12.94 ms  out=19269164B  1.35 GiB/s
    orjson   : median 19.12 ms  best 18.99 ms  out=19269255B  961.00 MiB/s
    ssrjson is 1.44x faster than orjson (median); best 1.47x

  float64_2d[1000x1000]  shape=1000x1000  dtype=float64  7812.5 KiB raw
    ssrjson  : median 13.50 ms  best 13.14 ms  out=19272764B  1.33 GiB/s
    orjson   : median 19.09 ms  best 19.04 ms  out=19272837B  962.88 MiB/s
    ssrjson is 1.41x faster than orjson (median); best 1.45x

  float64_3d[100x100x100]  shape=100x100x100  dtype=float64  7812.5 KiB raw
    ssrjson  : median 13.46 ms  best 13.13 ms  out=19291108B  1.33 GiB/s
    orjson   : median 19.48 ms  best 19.42 ms  out=19291190B  944.22 MiB/s
    ssrjson is 1.45x faster than orjson (median); best 1.48x

  int32_2d[1000x1000]  shape=1000x1000  dtype=int32  3906.2 KiB raw
    ssrjson  : median 1.17 ms  best 1.17 ms  out=5391602B  4.31 GiB/s
    orjson   : median 5.04 ms  best 5.00 ms  out=5391602B  1020.42 MiB/s
    ssrjson is 4.32x faster than orjson (median); best 4.29x

  bool_1d[1000000]  shape=1000000  dtype=bool  976.6 KiB raw
    ssrjson  : median 323.7 µs  best 323.1 µs  out=5500290B  15.83 GiB/s
    orjson   : median 3.24 ms  best 3.21 ms  out=5500290B  1.58 GiB/s
    ssrjson is 10.02x faster than orjson (median); best 9.92x

Indent

ssrJSON only supports encoding with indent = 2, 4 or no indent (don't pass indent, or pass indent=None). When indent is used, a space is inserted between each key and value.

>>> import ssrjson
>>> ssrjson.dumps({"a": "b", "c": {"d": True}, "e": [1, 2]})
'{"a":"b","c":{"d":true},"e":[1,2]}'
>>> print(ssrjson.dumps({"a": "b", "c": {"d": True}, "e": [1, 2]}, indent=2))
{
  "a": "b",
  "c": {
    "d": true
  },
  "e": [
    1,
    2
  ]
}
>>> print(ssrjson.dumps({"a": "b", "c": {"d": True}, "e": [1, 2]}, indent=4))
{
    "a": "b",
    "c": {
        "d": true
    },
    "e": [
        1,
        2
    ]
}
>>> ssrjson.dumps({"a": "b", "c": {"d": True}, "e": [1, 2]}, indent=3)
Traceback (most recent call last):
  File "<python-input>", line 1, in <module>
    ssrjson.dumps({"a": "b", "c": {"d": True}, "e": [1, 2]}, indent=3)
    ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: integer indent must be 2 or 4

Other Arguments Supported by Python's json

object_hook and array_hook can be used in loads, and work the same as json.loads.

Arguments like ensure_ascii, parse_float provided by json module can be recognized but ignored by design. To treat passing these arguments as an error, call ssrjson.strict_argparse(True) once and it will take effect globally.

Inspect Features

Call get_current_features to get ssrJSON's current build configuration and settings.

>>> ssrjson.get_current_features()
{'multi_lib': True, 'write_utf8_cache': True, 'strict_arg_parse': False, 'free_threading': False, 'lockfree': False, 'simd': 'AVX2'}

Behavior

Generally, ssrjson.dumps behaves like json.dumps with ensure_ascii=False, and ssrjson.loads behaves like json.loads. Below we explain some behavior details of ssrJSON, which might differ from the standard json module or other third-party JSON libraries.

Strings

Code points within the range [0xd800, 0xdfff] cannot be represented in UTF-8 encoding, and the standard JSON specification typically prohibits the presence of such characters. However, since Python's str type is not stored as UTF-8, ssrjson.dumps allows these characters to remain compatible with the Python json module, while other third-party Python JSON libraries may reject them. In contrast, ssrjson.dumps_to_bytes produces UTF-8 output and treats these characters in the input as invalid.

>>> s = chr(0xd800)
>>> (json.dumps(s, ensure_ascii=False) == '"' + s + '"', json.dumps(s, ensure_ascii=False))
(True, '"\ud800"')
>>> (ssrjson.dumps(s) == '"' + s + '"', ssrjson.dumps(s))
(True, '"\ud800"')
>>> ssrjson.dumps_to_bytes(s)
Traceback (most recent call last):
  File "<python-input>", line 1, in <module>
    ssrjson.dumps_to_bytes(s)
    ~~~~~~~~~~~~~~~~~~~~~~^^^
ssrjson.JSONEncodeError: Cannot encode unicode character in range [0xd800, 0xdfff] to UTF-8
>>> json.loads(json.dumps(s, ensure_ascii=False)) == s
True
>>> ssrjson.loads(ssrjson.dumps(s)) == s
True

Integers

ssrjson.dumps can only handle integers that can be expressed by either uint64_t or int64_t in C.

>>> ssrjson.dumps(-(1<<63)-1)
Traceback (most recent call last):
  File "<python-input>", line 1, in <module>
    ssrjson.dumps(-(1<<63)-1)
    ~~~~~~~~~~~~~^^^^^^^^^^^^
ssrjson.JSONEncodeError: convert value to long long failed
>>> ssrjson.dumps(-(1<<63))
'-9223372036854775808'
>>> ssrjson.dumps((1<<64)-1)
'18446744073709551615'
>>> ssrjson.dumps(1<<64)
Traceback (most recent call last):
  File "<python-input>", line 1, in <module>
    ssrjson.dumps(1<<64)
    ~~~~~~~~~~~~~^^^^^^^
ssrjson.JSONEncodeError: convert value to unsigned long long failed

ssrjson.loads parses integers outside the ranges of int64_t and uint64_t as float objects.

>>> ssrjson.loads('-9223372036854775809')  # -(1<<63)-1
-9.223372036854776e+18
>>> ssrjson.loads('-9223372036854775808')  # -(1<<63)
-9223372036854775808
>>> ssrjson.loads('18446744073709551615')  # (1<<64)-1
18446744073709551615
>>> ssrjson.loads('18446744073709551616')  # 1<<64
1.8446744073709552e+19

Floats

For floating-point encoding, ssrJSON employs the xjb64 algorithm. xjb64 is a highly efficient algorithm for converting floating-point to strings.

Encoding and decoding math.inf are supported. ssrjson.dumps outputs the same result as json.dumps. The input of ssrjson.loads should be "infinity" with lower or upper cases (for each character), and cannot be "inf".

>>> json.dumps(math.inf)
'Infinity'
>>> ssrjson.dumps(math.inf)
'Infinity'
>>> json.dumps(-math.inf)
'-Infinity'
>>> ssrjson.dumps(-math.inf)
'-Infinity'
>>> ssrjson.loads("[infinity, Infinity, InFiNiTy, INFINITY]")  # allowed but not recommended to write `InFiNiTy` in JSON
[inf, inf, inf, inf]

The case of math.nan is similar, but NaN has no sign: both positive and negative NaN are encoded as NaN.

>>> json.dumps(math.nan)
'NaN'
>>> ssrjson.dumps(math.nan)
'NaN'
>>> json.dumps(-math.nan)
'NaN'
>>> ssrjson.dumps(-math.nan)
'NaN'
>>> ssrjson.loads("[nan, Nan, NaN, NAN]")  # allowed but not recommended to write `Nan` in JSON
[nan, nan, nan, nan]

Free Threading

ssrJSON experimentally supports free-threading (Python >= 3.14). You can find stable wheel releases on PyPI. When building from source, enable this feature by specifying -DBUILD_FREE_THREADING=ON. In that build, during encoding ssrJSON acquires locks on dict and list objects from outer to inner; if another thread attempts to lock those objects in a different order, a deadlock may occur — this is expected behavior. If you encounter unexpected crashes, please file an issue. Decoding is lock-free.

If you require a lock-free encoding variant, build from source with -DFREE_THREADING_LOCKFREE=ON. Compared with the lock-based version, the lock-free version achieves approximately a 13% improvement in single-threaded encoding performance. In that configuration, multi-threaded modifications of the same dict/list can cause the program to crash; users are responsible for ensuring there are no race conditions. Lock-free builds are not distributed on PyPI.

License

This project is licensed under the MIT License. Licenses of other repositories are under licenses directory.

Acknowledgments

We would like to express our gratitude to the outstanding libraries and their authors:

  • CPython
  • yyjson: ssrJSON draws extensively from yyjson’s highly optimized implementations, including the core decoding logic, the decoding of bytes objects, the integer encoding and number decoding routines.
  • orjson: ssrJSON references parts of orjson’s SIMD-based ASCII string encoding and decoding algorithms, as well as its short-key caching mechanism. Additionally, ssrJSON used orjson's pytest code as its initial test code.
  • xjb64: ssrJSON employs the xjb32/64 algorithms for high-performance floating-point encoding.
  • xxHash: ssrJSON leverages xxHash to efficiently compute hash values for key caching.
  • klib: ssrJSON uses khash to implement circular detection in free-threading build.
  • simdutf: the vectorized UTF-8 decoder used for bytes input adapts simdutf's UTF-8 to UTF-16 transcoding shapes and its lookup tables, together with Lemire's utf8_lookup4 block validation algorithm.

Metadata

Release files for ssrjson 0.0.23

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

Source distribution (sdist)

Source distribution for ssrjson 0.0.23
File Size Uploaded
ssrjson-0.0.23.tar.gz 3.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for ssrjson 0.0.23
File
ssrjson-0.0.23-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
ssrjson-0.0.23-cp314-cp314t-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64 Details
ssrjson-0.0.23-cp314-cp314t-manylinux_2_34_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ ARM64 Details
ssrjson-0.0.23-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
ssrjson-0.0.23-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
ssrjson-0.0.23-cp314-cp314-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ x86-64 Details
ssrjson-0.0.23-cp314-cp314-manylinux_2_34_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ ARM64 Details
ssrjson-0.0.23-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
ssrjson-0.0.23-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
ssrjson-0.0.23-cp313-cp313-manylinux_2_34_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ x86-64 Details
ssrjson-0.0.23-cp313-cp313-manylinux_2_34_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ ARM64 Details
ssrjson-0.0.23-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
ssrjson-0.0.23-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
ssrjson-0.0.23-cp312-cp312-manylinux_2_34_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ x86-64 Details
ssrjson-0.0.23-cp312-cp312-manylinux_2_34_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.34+ ARM64 Details
ssrjson-0.0.23-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
ssrjson-0.0.23-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
ssrjson-0.0.23-cp311-cp311-manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ x86-64 Details
ssrjson-0.0.23-cp311-cp311-manylinux_2_34_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ ARM64 Details
ssrjson-0.0.23-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
ssrjson-0.0.23-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
ssrjson-0.0.23-cp310-cp310-manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ x86-64 Details
ssrjson-0.0.23-cp310-cp310-manylinux_2_34_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ ARM64 Details
ssrjson-0.0.23-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 16.3 MB

Release files / ssrjson-0.0.23.tar.gz

Download URL ssrjson-0.0.23.tar.gz
Size 3.4 MB
Tags Source
SHA-256 checksum
How to use checksums
1fbfeec7bf782172e13df1973b635b02f2bab3b7b505abff592bd8852ba594fa
BLAKE2b-256 checksum
How to use checksums
52c2769cc593bf48636f79d475956de4432bff009bef81321fcaf18203ec67e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314t-win_amd64.whl

Download URL ssrjson-0.0.23-cp314-cp314t-win_amd64.whl
Size 844.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
506b01860a103dff1d87cf9dddfabc07fb79b49aada917837f0a4d434c924898
BLAKE2b-256 checksum
How to use checksums
85d73e7868acb9155f490f0bf0e8b2ac21c64854bc9ca2b8eb342e9c5b12acf9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314t-manylinux_2_34_x86_64.whl

Download URL ssrjson-0.0.23-cp314-cp314t-manylinux_2_34_x86_64.whl
Size 858.5 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
9c917f451ed41ad3fc2a9bdfad21e7a1ab96243ca6e52e901b680b7e49b56443
BLAKE2b-256 checksum
How to use checksums
2a35c522e1d8a07283552e7fe241a5dc0ec65f839e910ec122c9fe479910b2cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314t-manylinux_2_34_aarch64.whl

Download URL ssrjson-0.0.23-cp314-cp314t-manylinux_2_34_aarch64.whl
Size 277.1 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
753313041c60e33131f858b0ce209018814a6411f9e84cf4036b9260aaaab8cd
BLAKE2b-256 checksum
How to use checksums
65977a6b7844c6a0e8acc3f0c45de32cce3e1eaa008f8d29f36f37ae4aef18a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314t-macosx_11_0_arm64.whl

Download URL ssrjson-0.0.23-cp314-cp314t-macosx_11_0_arm64.whl
Size 265.1 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5b447ad4379173a90f2a3ad04a108b2fbf7ad3a9a5286fa50754f44130150efc
BLAKE2b-256 checksum
How to use checksums
8e4ad1351f48da462bb11283dfd18fa6055f926ad694ceea020fdf1452dcdd27
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314-win_amd64.whl

Download URL ssrjson-0.0.23-cp314-cp314-win_amd64.whl
Size 816.0 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
06633b2b544119b5084a2f87344b9d9815c7e104f27d6c5ea863f49753da6704
BLAKE2b-256 checksum
How to use checksums
4376362e5526b9207860fa5633b862198edf65ed1876821e3a0d8e4179ed3500
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314-manylinux_2_34_x86_64.whl

Download URL ssrjson-0.0.23-cp314-cp314-manylinux_2_34_x86_64.whl
Size 816.4 kB
Tags CPython 3.14 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
3e891ab17e1771d26d6e9714f97ac29a40d3a8198265b403c154c79317a91075
BLAKE2b-256 checksum
How to use checksums
459212d635ce7e9f182ed218a908e42e7070c39294978c5e18cf4fdc80a563f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314-manylinux_2_34_aarch64.whl

Download URL ssrjson-0.0.23-cp314-cp314-manylinux_2_34_aarch64.whl
Size 269.0 kB
Tags CPython 3.14 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
cdb933b4abed60f9ab52377bb2b9feb9d5d74124e46a294edeeb6cbd8cd0e3ef
BLAKE2b-256 checksum
How to use checksums
c09e201705f97eccd1533dd4ab29900468b002635cabc4b411e3d3f6405e65d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp314-cp314-macosx_11_0_arm64.whl

Download URL ssrjson-0.0.23-cp314-cp314-macosx_11_0_arm64.whl
Size 259.7 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e1c22f76c9a04e05da06aeefb8244ad55725461bbc1923708e0431a411df6b6a
BLAKE2b-256 checksum
How to use checksums
73f0390ddc19517c523c83a47b2ae1806d305584cb2ac53f503baeef2f6aa108
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp313-cp313-win_amd64.whl

Download URL ssrjson-0.0.23-cp313-cp313-win_amd64.whl
Size 798.0 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e984a5e35c625f46fa2b62a5f396f9c99556c5dae45b88837a6a32299e44effd
BLAKE2b-256 checksum
How to use checksums
a291df7811019fa96dd79e2673b67ed6c8335b20822a3b3b59a98de6f298b60f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp313-cp313-manylinux_2_34_x86_64.whl

Download URL ssrjson-0.0.23-cp313-cp313-manylinux_2_34_x86_64.whl
Size 816.1 kB
Tags CPython 3.13 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
525fdb3521695d28a072dd863096791e51cd3eeaa83f7ac742e8583796a5529b
BLAKE2b-256 checksum
How to use checksums
3ce349a89a374ed44861337c45c238f584f4889a963d55ab8b700fbcd6138cfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp313-cp313-manylinux_2_34_aarch64.whl

Download URL ssrjson-0.0.23-cp313-cp313-manylinux_2_34_aarch64.whl
Size 268.9 kB
Tags CPython 3.13 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
e9721379e6690620a941b9470ba2493232c6f74328988f42e32216af9847ec5f
BLAKE2b-256 checksum
How to use checksums
432c872883534c4d85370d3e3d60d27161f46f71d62fa2c56b9a417037833cdf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp313-cp313-macosx_11_0_arm64.whl

Download URL ssrjson-0.0.23-cp313-cp313-macosx_11_0_arm64.whl
Size 259.6 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
089fa71751da7308691a3acc03368db804b0bc0f7840643eea6eaa44077d2606
BLAKE2b-256 checksum
How to use checksums
d83e51413c00cfbfa5a28f95fe807b906bbe0e2ca6439b2a674afac63ad28945
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp312-cp312-win_amd64.whl

Download URL ssrjson-0.0.23-cp312-cp312-win_amd64.whl
Size 798.8 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
d84df595c994773d37c8aca4064423048a251a5f0a9c5e07ef4890085be7d120
BLAKE2b-256 checksum
How to use checksums
d0dc03e67f15cbdf283b84d6a3ae44e88fa343a0ee9b3552c1048a178eaf42b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp312-cp312-manylinux_2_34_x86_64.whl

Download URL ssrjson-0.0.23-cp312-cp312-manylinux_2_34_x86_64.whl
Size 816.7 kB
Tags CPython 3.12 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
e00a6825f411eff34af9d03ef5c8cfa63814d9c68e67d6ff415cc375e6a7a46d
BLAKE2b-256 checksum
How to use checksums
2b23709cdc6c2a0940b77baf2af443d85a9a42386ff2cc95a0b90956b8d7abc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp312-cp312-manylinux_2_34_aarch64.whl

Download URL ssrjson-0.0.23-cp312-cp312-manylinux_2_34_aarch64.whl
Size 269.1 kB
Tags CPython 3.12 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
d482122046088e78080ab1c679933f04670741c7af8043b541b97b3650edd9a5
BLAKE2b-256 checksum
How to use checksums
6b07ce951d91c120417345a56179cc658d826d248135a616e854dbb2333d288b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp312-cp312-macosx_11_0_arm64.whl

Download URL ssrjson-0.0.23-cp312-cp312-macosx_11_0_arm64.whl
Size 259.5 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
aed8da41930d95d3c09839ad35b40cbbd10a0d4aa25cea20a010dbdc1511cb1e
BLAKE2b-256 checksum
How to use checksums
101d7ed562003e35c05b19bcca7841ea7706b8686b759d2f1c6f222dbe0b599a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp311-cp311-win_amd64.whl

Download URL ssrjson-0.0.23-cp311-cp311-win_amd64.whl
Size 789.5 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
cecf234574f6c8b998305dcc15e21ec131083e4fcdc3b4830d6babb05d891334
BLAKE2b-256 checksum
How to use checksums
d8d003515e7a412b5ecd192a6a2762f96a112d017ef25f3f271500dcdca56f11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL ssrjson-0.0.23-cp311-cp311-manylinux_2_34_x86_64.whl
Size 803.4 kB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
5b9a69f05ddf6b03cb724287166fe2316ea81dd402b1ec78212f5f9a3d68fe05
BLAKE2b-256 checksum
How to use checksums
d613fcc5df046d9a49c928c17f2640500bb7dc806cfb7b22b2697effddda5e6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp311-cp311-manylinux_2_34_aarch64.whl

Download URL ssrjson-0.0.23-cp311-cp311-manylinux_2_34_aarch64.whl
Size 267.8 kB
Tags CPython 3.11 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
f792a1943713bdf42ca776884aeb7f6a5d208d8c56c8a04b1845e8f1a0a7e840
BLAKE2b-256 checksum
How to use checksums
e4fbb4755b57350a3d51de9c1772918193ff00581a1d0b8c08eebc51580b5f3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp311-cp311-macosx_11_0_arm64.whl

Download URL ssrjson-0.0.23-cp311-cp311-macosx_11_0_arm64.whl
Size 260.3 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
31980091d4528ec21b745ea0dd970ab080f8f079af79e3651cdfc82ad3627470
BLAKE2b-256 checksum
How to use checksums
2ee769465f84ad67ca7e07f442f160ed90a8093d675b3097b2142c33c0e6a4ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp310-cp310-win_amd64.whl

Download URL ssrjson-0.0.23-cp310-cp310-win_amd64.whl
Size 787.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
0090899b1cfb5aace4c5828f0d55db1b7c88d4b2c1e3c2b0fefc13e2c3527dbe
BLAKE2b-256 checksum
How to use checksums
9ec4036cf8779028e213335138d0f8e5ef304e3c492f1bf99c9dd3e7bae8a02f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL ssrjson-0.0.23-cp310-cp310-manylinux_2_34_x86_64.whl
Size 781.4 kB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
f10e7ae5099337d9739321d732d73afcfbfd1d87b35a8fcd38ad3c4c1c8fc7e0
BLAKE2b-256 checksum
How to use checksums
a8bf44e771aa0b6aa8cbcaeb061b0563a1d92cc87f3a8a3f0e2576d115d55807
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp310-cp310-manylinux_2_34_aarch64.whl

Download URL ssrjson-0.0.23-cp310-cp310-manylinux_2_34_aarch64.whl
Size 268.6 kB
Tags CPython 3.10 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
a8afcf21ef6726258f6c2865e1a93de596367b7afb299ae5bcbe867f4284eef8
BLAKE2b-256 checksum
How to use checksums
d75375cbc8f1339e493a34cc6ba7203e6fa278d9e8fc27c14e293bf8ca785e62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release files / ssrjson-0.0.23-cp310-cp310-macosx_11_0_arm64.whl

Download URL ssrjson-0.0.23-cp310-cp310-macosx_11_0_arm64.whl
Size 261.3 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ff48723a26e0b601a2850df35a76941dc3db19890c12065efe1f34c9733d5d74
BLAKE2b-256 checksum
How to use checksums
f60cf32c9e19dab615a3ae35a1afc642420e7a0d2f6780518a333df29d1fc8e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 17, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.23 This release

25 release files

0.0.8

21 release files

0.0.7

21 release files

0.0.6

16 release files

0.0.3

11 release files

0.0.2

11 release files

0.0.1

11 release files

0.0.0

1 release file

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