Repository navigation
Releases: yitan1/Tensor0
Release list
Tensor0 0.3.0
Tensor0 0.3.0
Tensor0 0.3.0 upgrades the pinned JAX runtime and fixes homogeneous tensor pytree batches.
Changes
- Fix homogeneous
TensorMap,DiagonalTensorMap, andSectorVectorbatches returned byjax.vmap, including nested batching and whole-batch scalar-loss gradients (issue #1). - Require Python 3.12+ and exact JAX/JAXLIB 0.11.2, with matching native FFI headers and runtime identity checks.
- Provide ordinary CPython 3.12, 3.13, 3.14, and 3.15 wheels for Linux x86_64 (glibc 2.28+) and macOS 15+ ARM64. Free-threaded Python remains unsupported.
- Upgrade source-build bindings to PyO3/Rust numpy 0.29; require maturin >=1.15,<2.
- Retain the optional, exactly version-paired tensor0-cuda12 0.3.0 companion and the existing bounded experimental CUDA12 scope.
Migration
Python 3.11 users must remain on Tensor0 0.2.0 with JAX/JAXLIB 0.10.1, or create a Python 3.12+ environment. Do not independently upgrade JAX underneath an old Tensor0 native extension. Install matching core/addon versions; source users must rebuild native binaries against the new headers.
python -m pip install tensor0==0.3.0
# Experimental Linux CUDA12 installation:
python -m pip install 'tensor0[cuda12]==0.3.0'Validation and scope
Candidate source: 974153a7ba26d11d5f6f51d3f8d5d01abecc0f30.
- Same-commit Linux CI
- Eight installed CPU wheels from one shared sdist
- Repaired CUDA12 addon and four no-GPU ABI checks
CPU full suites run on Python 3.12/3.15 on both platforms; 3.13/3.14 wheels pass installed smoke/examples and bounded native JIT/AD contracts. CUDA publication additionally requires exact-pair A100 acceptance; the original report/log archive is attached as cuda-acceptance.tar.gz. CUDA support remains experimental and limited to the documented operation/dtype/AD subset, not general TensorMap GPU coverage, full reverse AD, multi-GPU, or a speed guarantee.
A bounded single-core desktop comparison found approximately 6–7% higher steady-state latency in two small complex128 contraction cases, with faster compilation; several allocation-sensitive timings were inconclusive. This release does not claim a performance improvement.
All eleven distributions are the original accepted artifacts: eight core wheels, one core sdist, one repaired addon wheel, and one addon sdist. No rebuild or retagging occurs during publication.
Tensor0 0.2.0
Tensor0 0.2.0
- CPU wheels for CPython 3.11–3.14 on Linux x86_64 (glibc 2.28+) and macOS 15+ ARM64.
- Experimental CUDA 12 companion for Linux x86_64, tested on NVIDIA A100 (sm_80). The companion uses an external NVIDIA CUDA runtime (
>=12.9.79,<13); it does not bundle a driver or CUDA runtime. - JAX/JAXLIB 0.10.1 integration. CUDA coverage is limited to the supported operation and transformation paths, not unrestricted automatic differentiation.
The release uses the original nine CPU distributions and two CUDA companion distributions, without rebuilding. Frozen source: d679afe1b5930b57dd199f9107e7036796da672c.
Validation: CPU/macOS producer 38232188513, CUDA companion and four Linux ABI checks 38244349272. Original-wheel A100 GPU acceptance: 880 passed / 10 allowed skips. The corrected full CPU follow-up on the same frozen source passed 7,168 tests with 870 skips.
The attached original cuda-acceptance.tar.gz records exact-pair CPU baseline and GPU acceptance. SHA256: 3f57a86826cdf63853a94cdd7433ea7b7aab7f477f8e5492cb5973c3cc49f947.
Installation
CPU:
pip install 'tensor0==0.2.0'Experimental CUDA 12 (supported Linux system with NVIDIA driver):
pip install 'tensor0[cuda12]==0.2.0'Published artifacts
- tensor0 0.2.0 on PyPI — eight CPU wheels and one source distribution.
- tensor0-cuda12 0.2.0 on PyPI — one companion wheel and one source distribution.
- Successful verified, no-rebuild publication.
All eleven public PyPI files were downloaded after publication and their SHA256 hashes matched the original accepted candidate bytes.
Tensor0 0.1.0
Tensor0 0.1.0
Initial alpha release of Tensor0, a symmetric tensor library with Rust-backed structural metadata and JAX-backed storage and automatic differentiation.
Highlights
- Graded spaces and Trivial, U(1), cyclic, SU(2), fermionic and selected product sector families.
- Ordinary and diagonal TensorMaps, blockwise linear algebra, truncation, transforms and symmetry-aware contractions.
- JAX pytree, JIT and differentiation integration within the documented operation-specific boundaries.
Installation and scope
Published on PyPI:
python -m pip install tensor0==0.1.0CPU wheels support CPython 3.11–3.14 on Linux x86_64 with glibc >= 2.28; wheel installation does not require Rust or C++. JAX and JAXLIB are pinned to 0.10.1 for native XLA FFI compatibility. The sdist requires Rust >=1.87 and a C++20 compiler.
The approval-gated PyPI upload succeeded. All five published distribution hashes match the verified candidate, and a fresh PyPI wheel installation passed CPU JIT/gradient checks and public examples.
Tensor0 remains experimental and pre-1.0, not a complete simulation framework. CUDA is experimental and not included in these CPU wheels. Other platforms and architectures are not release targets.
Verification and provenance
- Source/tag commit:
bd39297438b1bc508317eb1d7ab6002639d4c230. - CPU CI: each of CPython 3.11–3.14 passed 6906 Python tests and 133 Rust tests; 853 CUDA-related tests skipped per interpreter.
- Candidate build: one shared sdist and four independently checked wheels, including isolated installation, Trivial/U1 JIT/gradient checks and public examples.
- Attached distributions are the tested candidate files, not rebuilds. Verify downloads with
sha256sum -c SHA256SUMS. - Blocking package typing passed; the full test-inclusive typing report still contains known advisory diagnostics.
See the documentation and support policy for API contracts and limitations.