tensorfs 0.18.2__tar.gz → 0.19.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tensorfs-0.18.2 → tensorfs-0.19.4}/Cargo.lock +25 -16
- {tensorfs-0.18.2 → tensorfs-0.19.4}/Cargo.toml +3 -1
- {tensorfs-0.18.2 → tensorfs-0.19.4}/PKG-INFO +1 -1
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/Cargo.toml +7 -10
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/README.md +2 -2
- tensorfs-0.19.4/crates/tensorfs/src/fetch/ask.rs +125 -0
- tensorfs-0.19.4/crates/tensorfs/src/fetch/download.rs +1147 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/endpoint.rs +69 -65
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/mod.rs +45 -41
- tensorfs-0.19.4/crates/tensorfs/src/fetch/net.rs +327 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/origin.rs +4 -14
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/policy.rs +26 -42
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/token.rs +5 -5
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/mod.rs +2 -2
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/mod.rs +1 -1
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/remote.rs +3 -4
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/store/gc.rs +16 -2
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/store/mod.rs +206 -16
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/store/retention.rs +4 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/Cargo.toml +1 -1
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/varena/Cargo.toml +1 -1
- {tensorfs-0.18.2 → tensorfs-0.19.4}/pyproject.toml +1 -1
- tensorfs-0.18.2/crates/tensorfs/src/fetch/ask.rs +0 -198
- tensorfs-0.18.2/crates/tensorfs/src/fetch/download.rs +0 -1687
- tensorfs-0.18.2/crates/tensorfs/src/fetch/net.rs +0 -544
- {tensorfs-0.18.2 → tensorfs-0.19.4}/LICENSE +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/backend/tensorfs_build.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/executor-protocol/Cargo.toml +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/executor-protocol/src/lib.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/Cargo.toml +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_memory.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_memory_linux.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_memory_macos.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_memory_windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_pressure.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_pressure_linux.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/host_pressure_unsupported.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/scope.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/scope_unsupported.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/contain/scope_windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/durable/disk.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/durable.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/gpu/apple.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/gpu/budget.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/gpu/cuda.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/gpu/faults.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/gpu/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/handles/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/handles/unix.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/handles/windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/ipc/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/ipc/unix.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/ipc/windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/lib.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/lock.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/memory/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/memory/unix.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/memory/windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/net.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/paths.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/process/linux.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/process/macos.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/process/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/process/unix.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/process/windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/release.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/service/launchd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/service/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/service/systemd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/service/windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/tail.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/tools.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/watch/linux.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/watch/macos.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/watch/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/platform/src/watch/windows.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/.gitattributes +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/build.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/anima.single_file.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/h3.comfy.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/h3.latent_upscaler.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/h3.lora.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/h3.native.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/ideogram4.fp8.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/krea2.lora.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/qwen3.6-35b-a3b.experts.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/sdxl.lora.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/sdxl.single_file.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/converters/seedvr2.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/docs/quantization-metadata-history.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/docs/rust-api-types.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/docs/rust-api.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/docs/why-cozytensors.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/anima.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/ideogram-4.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/krea-2.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/minimax-h3.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/moss.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/qwen-image-2.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/qwen-image.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/sdxl.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/families/seedvr2.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/AnimaTextConditioner.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/AutoencoderKL.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/AutoencoderKLFlux2.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/AutoencoderKLQwenImage.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/AutoencoderKLQwenImage21.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/CLIPTextModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/CLIPTextModelWithProjection.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/CosmosTransformer3DModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/Flux3Transformer2DModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/MiniMaxH3Transformer3DModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/Qwen2_5_VLForConditionalGeneration.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/Qwen3Model.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/Qwen3VLForConditionalGeneration.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/Qwen3_5ForConditionalGeneration.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/QwenImage21Transformer2DModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/QwenImageTransformer2DModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/UNet2DConditionModel.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/inputs/flux-3-klein-0.1.0-bf16.transformer.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/inputs/flux-3-klein-0.1.0-bf16.vae.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/orders/inputs/flux-3-klein-base-0.1.0-bf16.transformer.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/cozytensors.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/distribution.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/examples/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/examples/header-basic.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/examples/header-configs.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/examples/repo-basic.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/examples/tree-basic.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/schema/header.cddl +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/schema/repo.schema.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/schema/tree.schema.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/spec/selection.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/bin/tfs/dev.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/bin/tfs/main.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/descriptors.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/err.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/export/gguf.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/export.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/failure.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/family/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/family/probe.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/conform.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/fetch/volume.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/cbor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/compose.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/affine.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/awq.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/blocks.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/bnb.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/comfy.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/ct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/elem.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/fp8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/fp8_blockwise.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/gguf.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/gptq.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/grid.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/int8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/mxfp4.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/mxfp8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/nvfp4.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/plan.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/decode/svdq.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/doc.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/dtype.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/affine.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/awq.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/bnb.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/comfy.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/ct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/elem.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/fp8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/fp8_blockwise.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/gguf.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/gptq.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/int8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/mxfp4.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/mxfp8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/nvfp4.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/svdq.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/svdq_fit.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/encode/w4a8.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/json.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/layout.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/repo.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/format/value.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/home.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/base.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/carriers/bnb.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/carriers/nunchaku.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/carriers.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/carriers.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/engine.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/gguf.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/gguf_names.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/lora.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/order.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/source.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/import/verify.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/cuda.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/decode.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/device.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/host.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/metrics.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/pins.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/plan.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/probe.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/source.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/io/view.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/kernels.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/lib.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/precision.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/raw.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/checkpoint.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/convert.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/endpoint.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/file.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/provider.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/quantize.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/quantize_bf16.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/quantize_fit.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/remote.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/selection.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session/writer.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/session.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/sha256.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/store/checkpoint.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/store/folder.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/store/records.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/verification.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/src/writer.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-civitai-headers/2945208-2004692.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-civitai-headers/2945208-2824387.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-civitai-headers/2945208-2824391.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-civitai-headers/LICENSE.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-civitai-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/LICENSE.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/construction_order.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/text_conditioner/diffusion_pytorch_model.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/text_encoder/model.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/transformer/diffusion_pytorch_model.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/anima-hf-headers/vae/diffusion_pytorch_model.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/civitai-sdxl-headers/128078-92696.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/civitai-sdxl-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00001-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00002-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00003-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00004-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00005-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00006-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00007-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00008-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00009-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00010-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00011-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00012-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model-00013-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/FL2VA__transformer__model.safetensors.index.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00001-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00002-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00003-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00004-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00005-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00006-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00007-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00008-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00009-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00010-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00011-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00012-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model-00013-of-00013.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/Ref2VA__transformer__model.safetensors.index.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/audio_vae__diffusion_pytorch_model.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00001-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00002-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00003-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00004-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00005-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00006-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00007-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00008-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00009-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00010-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00011-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00012-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00013-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model-00014-of-00014.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/text_encoder__model.safetensors.index.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/vae__diffusion_pytorch_model-00001-of-00003.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/vae__diffusion_pytorch_model-00002-of-00003.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/vae__diffusion_pytorch_model-00003-of-00003.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-headers/vae__diffusion_pytorch_model.safetensors.index.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/h3-latent-upscaler-headers/minimax_h3_latent_upscaler_3d_conv_v1_bf16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/ideogram4-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/ideogram4-headers/transformer__diffusion_pytorch_model.safetensors +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/krea2-headers/LICENSE.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/krea2-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/krea2-headers/darkbrush.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/krea2-headers/krea2_raw_bf16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/krea2-headers/krea2_style_reference.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/sdxl-headers/MANIFEST.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/sdxl-headers/text_encoder_2__model.fp16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/sdxl-headers/text_encoder__model.fp16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/sdxl-headers/unet__diffusion_pytorch_model.fp16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/sdxl-headers/vae__diffusion_pytorch_model.fp16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/seedvr2-headers/ema_vae_fp16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs/vectors/seedvr2-headers/seedvr2_ema_7b_fp16.safetensors.header +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/.dockerignore +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/.gitattributes +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/.gitignore +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/.python-version +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/API-TYPES.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/API.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/LICENSE +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/Taskfile.yaml +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/backend/tensorfs_build.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/kernels/abi.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/kernels/build.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/kernels/kernels.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/scripts/build-wheel.sh +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/scripts/converters.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/scripts/dev-version.sh +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/scripts/families.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/scripts/orders.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/ceiling.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/classref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/cleanup.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/credentials.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/dlpack_source.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/errors.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/executor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/file.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/lib.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/quantize.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/resident_decode.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/store.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/tensors.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/allocator.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/continuation.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/elf.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/iat.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/load.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/phase.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/refill.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/varena/stage_continuation.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/src/verification.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/tensorfs-py/wheel-data/scripts/.gitkeep +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/varena/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/varena/src/cuda.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/crates/varena/src/lib.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/__init__.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/_ext.pyi +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/api.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/api.pyi +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/executor.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/executor.pyi +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/py.typed +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/raw.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/raw.pyi +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/varena/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/python/tensorfs/varena/__init__.py +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/COPYING.EIGEN.MPL2 +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/COPYING.LAPACK.BSD +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/COPYING.SUITE_SPARSE.AMD.BSD +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/COPYING.SUITE_SPARSE.COLAMD.BSD +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/Cargo.toml +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/LICENSE +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/README.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/TENSORFS-PATCH.json +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/TENSORFS-PATCH.md +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/TENSORFS.patch +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/bench.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/bench.toml +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/bench_iterative.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/bench_sparse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/dynstack.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/lblt.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/examples/linop.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/katex-header.html +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/col/col_index.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/col/colmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/col/colown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/col/colref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/col/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/diag/diagmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/diag/diagown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/diag/diagref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/diag/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/hacks.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/io.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/lib.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/bunch_kaufman/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/bunch_kaufman/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/bunch_kaufman/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/bunch_kaufman/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/bunch_kaufman/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/ldlt/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/ldlt/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/ldlt/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/ldlt/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/ldlt/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/ldlt/update.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt/update.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt_pivoting/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt_pivoting/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt_pivoting/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt_pivoting/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/llt_pivoting/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/cholesky/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/hessenberg.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/schur/complex_schur.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/schur/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/schur/real_schur.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/tridiag.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/evd/tridiag_evd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/gevd/gen_hessenberg/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/gevd/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/gevd/qz_cplx/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/gevd/qz_real/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/householder.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/jacobi.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/kron.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/full_pivoting/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/full_pivoting/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/full_pivoting/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/full_pivoting/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/full_pivoting/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/partial_pivoting/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/partial_pivoting/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/partial_pivoting/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/partial_pivoting/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/lu/partial_pivoting/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/mat_ops.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/matmul/internal/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/matmul/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/matmul/triangular.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/col_pivoting/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/col_pivoting/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/col_pivoting/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/col_pivoting/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/col_pivoting/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/no_pivoting/factor.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/no_pivoting/inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/no_pivoting/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/no_pivoting/reconstruct.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/qr/no_pivoting/solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/determinant.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/norm_l1.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/norm_l2.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/norm_l2_sqr.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/norm_max.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/reductions/sum.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/solvers.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/svd/bidiag.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/svd/bidiag_svd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/svd/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/triangular_inverse.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/triangular_solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/linalg/zip.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/mat/mat_index.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/mat/matmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/mat/matown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/mat/matref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/mat/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/bicgstab.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/conjugate_gradient.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/eigen/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/lsmr.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/csc_matmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/csc_matown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/csc_matref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/csr_matmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/csr_matown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/csr_matref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/diagmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/diagown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/diagref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/matmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/matown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/matref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/operator_impl/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/self_adjoint_eigen/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/operator/svd/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/perm/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/perm/permown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/perm/permref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/row/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/row/row_index.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/row/rowmut.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/row/rowown.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/row/rowref.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sort.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/csc/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/csr/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/amd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/cholesky.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/colamd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/lu.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/matmul.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/qr.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/linalg/triangular_solve.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/ops.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/solvers.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/sparse/utils.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/stats/meanvar.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/stats/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/utils/approx.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/utils/bound.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/utils/mod.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/utils/simd.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/vendor/faer/src/utils/slice.rs +0 -0
- {tensorfs-0.18.2 → tensorfs-0.19.4}/wheel-data/scripts/.gitkeep +0 -0
|
@@ -244,6 +244,16 @@ dependencies = [
|
|
|
244
244
|
"tracing",
|
|
245
245
|
]
|
|
246
246
|
|
|
247
|
+
[[package]]
|
|
248
|
+
name = "backon"
|
|
249
|
+
version = "1.6.0"
|
|
250
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
251
|
+
checksum = "cffb0e931875b666fc4fcb20fee52e9bbd1ef836fd9e9e04ec21555f9f85f7ef"
|
|
252
|
+
dependencies = [
|
|
253
|
+
"fastrand",
|
|
254
|
+
"tokio",
|
|
255
|
+
]
|
|
256
|
+
|
|
247
257
|
[[package]]
|
|
248
258
|
name = "base16ct"
|
|
249
259
|
version = "0.2.0"
|
|
@@ -344,7 +354,7 @@ checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
|
|
|
344
354
|
|
|
345
355
|
[[package]]
|
|
346
356
|
name = "calcifer"
|
|
347
|
-
version = "0.
|
|
357
|
+
version = "0.19.8"
|
|
348
358
|
dependencies = [
|
|
349
359
|
"async-trait",
|
|
350
360
|
"axum",
|
|
@@ -496,7 +506,7 @@ checksum = "1c133bc6a41be0d194c306b5506d15e6feeea7b1d6604bd3f8310dfb2ca96486"
|
|
|
496
506
|
|
|
497
507
|
[[package]]
|
|
498
508
|
name = "cli"
|
|
499
|
-
version = "0.
|
|
509
|
+
version = "0.19.8"
|
|
500
510
|
dependencies = [
|
|
501
511
|
"anstream",
|
|
502
512
|
"anstyle",
|
|
@@ -636,7 +646,7 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
|
|
|
636
646
|
|
|
637
647
|
[[package]]
|
|
638
648
|
name = "cozy"
|
|
639
|
-
version = "0.
|
|
649
|
+
version = "0.19.8"
|
|
640
650
|
dependencies = [
|
|
641
651
|
"calcifer",
|
|
642
652
|
"cli",
|
|
@@ -1167,7 +1177,7 @@ dependencies = [
|
|
|
1167
1177
|
|
|
1168
1178
|
[[package]]
|
|
1169
1179
|
name = "executor-protocol"
|
|
1170
|
-
version = "0.
|
|
1180
|
+
version = "0.19.8"
|
|
1171
1181
|
dependencies = [
|
|
1172
1182
|
"base64 0.23.1",
|
|
1173
1183
|
"pyo3",
|
|
@@ -1691,7 +1701,7 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
|
|
|
1691
1701
|
|
|
1692
1702
|
[[package]]
|
|
1693
1703
|
name = "hub-client"
|
|
1694
|
-
version = "0.
|
|
1704
|
+
version = "0.19.8"
|
|
1695
1705
|
dependencies = [
|
|
1696
1706
|
"aws-lc-rs",
|
|
1697
1707
|
"base64 0.23.1",
|
|
@@ -2557,7 +2567,7 @@ checksum = "f6b464fbc74e149a392436b17d523f769e057cb6877f6a5c4618bc6f11800548"
|
|
|
2557
2567
|
|
|
2558
2568
|
[[package]]
|
|
2559
2569
|
name = "platform"
|
|
2560
|
-
version = "0.
|
|
2570
|
+
version = "0.19.8"
|
|
2561
2571
|
dependencies = [
|
|
2562
2572
|
"flate2",
|
|
2563
2573
|
"getrandom 0.3.4",
|
|
@@ -2630,7 +2640,7 @@ dependencies = [
|
|
|
2630
2640
|
|
|
2631
2641
|
[[package]]
|
|
2632
2642
|
name = "protocol"
|
|
2633
|
-
version = "0.
|
|
2643
|
+
version = "0.19.8"
|
|
2634
2644
|
dependencies = [
|
|
2635
2645
|
"base64 0.23.1",
|
|
2636
2646
|
"bytes",
|
|
@@ -2644,6 +2654,7 @@ dependencies = [
|
|
|
2644
2654
|
"reqwest",
|
|
2645
2655
|
"rustls",
|
|
2646
2656
|
"saphyr",
|
|
2657
|
+
"saphyr-parser",
|
|
2647
2658
|
"serde",
|
|
2648
2659
|
"serde_ignored",
|
|
2649
2660
|
"serde_json",
|
|
@@ -3914,7 +3925,7 @@ dependencies = [
|
|
|
3914
3925
|
|
|
3915
3926
|
[[package]]
|
|
3916
3927
|
name = "tensord"
|
|
3917
|
-
version = "0.
|
|
3928
|
+
version = "0.19.8"
|
|
3918
3929
|
dependencies = [
|
|
3919
3930
|
"async-trait",
|
|
3920
3931
|
"aws-lc-rs",
|
|
@@ -3931,6 +3942,7 @@ dependencies = [
|
|
|
3931
3942
|
"hyper",
|
|
3932
3943
|
"hyper-util",
|
|
3933
3944
|
"libc",
|
|
3945
|
+
"pep440_rs",
|
|
3934
3946
|
"platform",
|
|
3935
3947
|
"protocol",
|
|
3936
3948
|
"rcgen",
|
|
@@ -3963,17 +3975,15 @@ dependencies = [
|
|
|
3963
3975
|
|
|
3964
3976
|
[[package]]
|
|
3965
3977
|
name = "tensorfs"
|
|
3966
|
-
version = "0.
|
|
3978
|
+
version = "0.19.4"
|
|
3967
3979
|
dependencies = [
|
|
3968
3980
|
"async-trait",
|
|
3981
|
+
"backon",
|
|
3969
3982
|
"base64 0.23.1",
|
|
3970
3983
|
"bytes",
|
|
3971
3984
|
"faer",
|
|
3972
3985
|
"futures",
|
|
3973
3986
|
"hmac",
|
|
3974
|
-
"http-body-util",
|
|
3975
|
-
"hyper",
|
|
3976
|
-
"hyper-util",
|
|
3977
3987
|
"libc",
|
|
3978
3988
|
"libloading 0.9.0",
|
|
3979
3989
|
"pep440_rs",
|
|
@@ -3983,6 +3993,7 @@ dependencies = [
|
|
|
3983
3993
|
"rand_chacha",
|
|
3984
3994
|
"rand_distr",
|
|
3985
3995
|
"rayon",
|
|
3996
|
+
"reqwest",
|
|
3986
3997
|
"rustix",
|
|
3987
3998
|
"rustls",
|
|
3988
3999
|
"serde",
|
|
@@ -3990,8 +4001,6 @@ dependencies = [
|
|
|
3990
4001
|
"sha2",
|
|
3991
4002
|
"thiserror 2.0.21",
|
|
3992
4003
|
"tokio",
|
|
3993
|
-
"tokio-rustls",
|
|
3994
|
-
"tower-service",
|
|
3995
4004
|
"tracing",
|
|
3996
4005
|
"tracing-subscriber",
|
|
3997
4006
|
"webpki-roots",
|
|
@@ -3999,7 +4008,7 @@ dependencies = [
|
|
|
3999
4008
|
|
|
4000
4009
|
[[package]]
|
|
4001
4010
|
name = "tensorfs-py"
|
|
4002
|
-
version = "0.
|
|
4011
|
+
version = "0.19.4"
|
|
4003
4012
|
dependencies = [
|
|
4004
4013
|
"async-trait",
|
|
4005
4014
|
"executor-protocol",
|
|
@@ -4434,7 +4443,7 @@ dependencies = [
|
|
|
4434
4443
|
|
|
4435
4444
|
[[package]]
|
|
4436
4445
|
name = "varena"
|
|
4437
|
-
version = "0.
|
|
4446
|
+
version = "0.19.4"
|
|
4438
4447
|
dependencies = [
|
|
4439
4448
|
"libloading 0.9.0",
|
|
4440
4449
|
"thiserror 2.0.21",
|
|
@@ -7,7 +7,7 @@ exclude = ["vendor/faer"]
|
|
|
7
7
|
members = ["crates/executor-protocol", "crates/platform", "crates/tensorfs", "crates/tensorfs-py", "crates/varena"]
|
|
8
8
|
|
|
9
9
|
[workspace.package]
|
|
10
|
-
version = "0.
|
|
10
|
+
version = "0.19.8"
|
|
11
11
|
edition = "2024"
|
|
12
12
|
rust-version = "1.99"
|
|
13
13
|
license = "MIT"
|
|
@@ -16,6 +16,7 @@ homepage = "https://github.com/cozy-creator/cozy-creator"
|
|
|
16
16
|
publish = false
|
|
17
17
|
|
|
18
18
|
[workspace.dependencies]
|
|
19
|
+
backon = { version = "1.6", default-features = false, features = ["std", "tokio-sleep"] }
|
|
19
20
|
calcifer = { path = "crates/calcifer" }
|
|
20
21
|
cli = { path = "crates/cli" }
|
|
21
22
|
executor-protocol = { path = "crates/executor-protocol" }
|
|
@@ -66,6 +67,7 @@ rusqlite = { version = "0.40", features = ["bundled"] }
|
|
|
66
67
|
rustix = { version = "1.1.4", default-features = false, features = ["std"] }
|
|
67
68
|
rustls = { version = "0.23.46", default-features = false, features = ["aws_lc_rs", "std", "tls12"] }
|
|
68
69
|
saphyr = { version = "0.2.2", default-features = false }
|
|
70
|
+
saphyr-parser = { version = "0.2.2", default-features = false }
|
|
69
71
|
self-replace = "1.5"
|
|
70
72
|
semver = "1"
|
|
71
73
|
serde = { version = "1", features = ["derive"] }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "tensorfs"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.19.4"
|
|
4
4
|
edition = "2021"
|
|
5
5
|
license.workspace = true
|
|
6
6
|
publish.workspace = true
|
|
@@ -17,7 +17,7 @@ required-features = ["store"]
|
|
|
17
17
|
default = ["store"]
|
|
18
18
|
# `Writer::quantize` and its SVDQ fit: faer and its tree. The wheel's; `cozy` never quantizes.
|
|
19
19
|
quantize = ["store", "dep:faer", "dep:rayon", "dep:pulp", "dep:rand", "dep:rand_chacha", "dep:rand_distr"]
|
|
20
|
-
store = ["dep:hmac", "dep:rustix", "dep:rustls", "dep:webpki-roots", "dep:tokio", "dep:
|
|
20
|
+
store = ["dep:hmac", "dep:rustix", "dep:rustls", "dep:webpki-roots", "dep:tokio", "dep:reqwest", "dep:backon", "dep:async-trait", "dep:bytes", "dep:futures", "dep:tracing-subscriber"]
|
|
21
21
|
|
|
22
22
|
[dependencies]
|
|
23
23
|
# SVDQ producer revision pins its factorization and random-sketch implementation.
|
|
@@ -39,18 +39,15 @@ serde_json = { workspace = true, features = ["float_roundtrip"] }
|
|
|
39
39
|
sha2.workspace = true
|
|
40
40
|
thiserror.workspace = true
|
|
41
41
|
rustix = { workspace = true, features = ["net", "event"], optional = true }
|
|
42
|
-
# The one HTTP client (src/fetch/net.rs)
|
|
42
|
+
# The one HTTP client (src/fetch/net.rs): reqwest, over rustls with the webpki roots.
|
|
43
|
+
reqwest = { workspace = true, optional = true }
|
|
43
44
|
rustls = { workspace = true, optional = true }
|
|
44
45
|
webpki-roots = { workspace = true, optional = true }
|
|
45
|
-
# Requests in flight are tasks, never a thread each
|
|
46
|
-
# connector (egress policy, TLS).
|
|
46
|
+
# Requests in flight are tasks, never a thread each.
|
|
47
47
|
tokio = { workspace = true, optional = true }
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
hyper-util = { workspace = true, features = ["client-legacy", "http1"], optional = true }
|
|
51
|
-
tower-service = { workspace = true, optional = true }
|
|
48
|
+
# Exponential backoff with jitter between attempts (src/fetch/ask.rs).
|
|
49
|
+
backon = { workspace = true, optional = true }
|
|
52
50
|
async-trait = { workspace = true, optional = true }
|
|
53
|
-
http-body-util = { workspace = true, optional = true }
|
|
54
51
|
bytes = { workspace = true, optional = true }
|
|
55
52
|
futures = { version = "0.3.31", default-features = false, features = ["std", "executor"], optional = true }
|
|
56
53
|
tracing.workspace = true
|
|
@@ -384,8 +384,8 @@ Public data needs no account. [Distribution](spec/distribution.md) defines endpo
|
|
|
384
384
|
## Storage and ownership
|
|
385
385
|
|
|
386
386
|
The shared local store is internal. Its default root is `~/.cache/tensorfs`; `cache_dir=` and `TENSORFS_HOME` override it. Processes
|
|
387
|
-
share immutable objects and coordinated records. Admission hashes bytes before installing them by rename;
|
|
388
|
-
opens check lengths. Saved local roots are retained separately from evictable download-cache entries; deleting a header file only removes that handle. Explicit verification rehashes on demand. TensorFS is a library and has no daemon.
|
|
387
|
+
share immutable objects and coordinated records. Admission hashes bytes before installing them by rename; a download
|
|
388
|
+
cut or killed resumes from the bytes it left, which the object's digest still judges; ordinary opens check lengths. Saved local roots are retained separately from evictable download-cache entries; deleting a header file only removes that handle. Explicit verification rehashes on demand. TensorFS is a library and has no daemon.
|
|
389
389
|
|
|
390
390
|
Runtime and TensorD use this same public API. Callers read and write the shared store and upload with a supplied
|
|
391
391
|
credential. TensorFS owns I/O and decoding; Runtime manages residency of framework-owned buffers. Installing the wheel does
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
//! The one retry rule, for every request (object_store's and the AWS SDKs'): a transport failure (no
|
|
2
|
+
//! connection, 30 s with no bytes, a body cut off) or a "not now" answer is asked again after
|
|
3
|
+
//! backon's exponential backoff, 100 ms doubling to 15 s with jitter, or the wait the answer states.
|
|
4
|
+
//! An attempt that moved bytes starts the count over; [`ATTEMPTS`] in a row that moved nothing end it.
|
|
5
|
+
|
|
6
|
+
use std::time::Duration;
|
|
7
|
+
|
|
8
|
+
use backon::{BackoffBuilder, ExponentialBackoff, ExponentialBuilder};
|
|
9
|
+
|
|
10
|
+
use super::net::{shown, Client, GetError, HeaderMap};
|
|
11
|
+
use super::token::TokenProvider;
|
|
12
|
+
use crate::err::{Code, Refusal};
|
|
13
|
+
|
|
14
|
+
/// Attempts in a row that moved nothing before a request fails (object_store's `max_retries`).
|
|
15
|
+
pub const ATTEMPTS: usize = 10;
|
|
16
|
+
|
|
17
|
+
/// An answer that means "not now": 499 is a proxy's own dropped exchange (the Hub's blobs, run
|
|
18
|
+
/// 15391). 501 and 505 say the ask can never be answered.
|
|
19
|
+
pub(crate) fn weather(status: u16) -> bool {
|
|
20
|
+
matches!(status, 408 | 425 | 429 | 499 | 500..=599) && !matches!(status, 501 | 505)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/// A failure the next attempt may not have.
|
|
24
|
+
pub(crate) fn transient(refusal: &Refusal) -> bool {
|
|
25
|
+
matches!(refusal.code, Code::TRANSFER_FAILED | Code::HUB_UNREACHABLE | Code::FD_HEADROOM)
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/// The pauses between one request's attempts.
|
|
29
|
+
pub(crate) struct Backoff(ExponentialBackoff);
|
|
30
|
+
|
|
31
|
+
impl Backoff {
|
|
32
|
+
pub(crate) fn new() -> Backoff {
|
|
33
|
+
let builder = ExponentialBuilder::default()
|
|
34
|
+
.with_min_delay(Duration::from_millis(100))
|
|
35
|
+
.with_factor(2.0)
|
|
36
|
+
.with_max_delay(Duration::from_secs(15))
|
|
37
|
+
.with_max_times(ATTEMPTS - 1)
|
|
38
|
+
.with_jitter();
|
|
39
|
+
Backoff(builder.build())
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/// The pause after a failed attempt (`moved`: it gained bytes; `stated`: the answer's
|
|
43
|
+
/// Retry-After), or None once [`ATTEMPTS`] in a row moved nothing.
|
|
44
|
+
pub(crate) fn after(&mut self, moved: bool, stated: Option<Duration>) -> Option<Duration> {
|
|
45
|
+
if moved {
|
|
46
|
+
*self = Backoff::new();
|
|
47
|
+
}
|
|
48
|
+
let pause = self.0.next()?;
|
|
49
|
+
Some(stated.unwrap_or(pause))
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/// Where [`get`] puts a body: each frame with the byte it starts at.
|
|
54
|
+
pub(crate) type Sink<'a> = dyn FnMut(u64, &[u8]) -> Result<(), Refusal> + Send + 'a;
|
|
55
|
+
|
|
56
|
+
/// GET `url` (`range`: from, and through) into `sink`, asked again by the rule from the byte reached;
|
|
57
|
+
/// a 200 to an open-ended ask starts the body over. The answer's headers, or the status of an answer
|
|
58
|
+
/// neither data nor weather.
|
|
59
|
+
pub(crate) async fn get(
|
|
60
|
+
client: &Client,
|
|
61
|
+
url: &str,
|
|
62
|
+
headers: &[(String, String)],
|
|
63
|
+
provider: Option<&dyn TokenProvider>,
|
|
64
|
+
range: Option<(u64, Option<u64>)>,
|
|
65
|
+
sink: &mut Sink<'_>,
|
|
66
|
+
) -> Result<Result<HeaderMap, u16>, GetError> {
|
|
67
|
+
let (mut at, through) = range.unwrap_or((0, None));
|
|
68
|
+
let mut backoff = Backoff::new();
|
|
69
|
+
loop {
|
|
70
|
+
let from = at;
|
|
71
|
+
let (why, wait) = match attempt(client, url, headers, provider, &mut at, through, sink).await {
|
|
72
|
+
Ok(Ok(done)) => return Ok(done),
|
|
73
|
+
Ok(Err((why, wait))) => (why, wait),
|
|
74
|
+
Err(GetError::Exchange(refusal)) if transient(&refusal) => (refusal.detail, None),
|
|
75
|
+
Err(error) => return Err(error),
|
|
76
|
+
};
|
|
77
|
+
tracing::info!(url = %shown(url), at, %why, "asked again");
|
|
78
|
+
match backoff.after(at > from, wait) {
|
|
79
|
+
Some(pause) => tokio::time::sleep(pause).await,
|
|
80
|
+
None => {
|
|
81
|
+
let detail = format!("{why}; {ATTEMPTS} attempts in a row moved nothing");
|
|
82
|
+
return Err(GetError::Exchange(Refusal { code: Code::HUB_UNREACHABLE, detail }));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
type Tried = Result<Result<HeaderMap, u16>, (String, Option<Duration>)>;
|
|
89
|
+
|
|
90
|
+
async fn attempt(
|
|
91
|
+
client: &Client,
|
|
92
|
+
url: &str,
|
|
93
|
+
headers: &[(String, String)],
|
|
94
|
+
provider: Option<&dyn TokenProvider>,
|
|
95
|
+
at: &mut u64,
|
|
96
|
+
through: Option<u64>,
|
|
97
|
+
sink: &mut Sink<'_>,
|
|
98
|
+
) -> Result<Tried, GetError> {
|
|
99
|
+
let mut headers = headers.to_vec();
|
|
100
|
+
if *at > 0 || through.is_some() {
|
|
101
|
+
let through = through.map_or(String::new(), |t| t.to_string());
|
|
102
|
+
headers.push(("range".into(), format!("bytes={at}-{through}")));
|
|
103
|
+
}
|
|
104
|
+
let mut answer = client.get_authorized(url, &headers, provider).await?;
|
|
105
|
+
let status = answer.status();
|
|
106
|
+
match status {
|
|
107
|
+
_ if weather(status) => {
|
|
108
|
+
let wait = answer.stated_wait();
|
|
109
|
+
return Ok(Err((format!("GET {}: {status} {}", shown(url), answer.said().await), wait)));
|
|
110
|
+
}
|
|
111
|
+
200 if through.is_none() => *at = 0,
|
|
112
|
+
206 if answer.content_range().is_some_and(|(first, _)| first == *at) => {}
|
|
113
|
+
_ => return Ok(Ok(Err(status))),
|
|
114
|
+
}
|
|
115
|
+
loop {
|
|
116
|
+
match answer.frame().await {
|
|
117
|
+
Ok(Some(frame)) => {
|
|
118
|
+
sink(*at, &frame).map_err(GetError::Caller)?;
|
|
119
|
+
*at += frame.len() as u64;
|
|
120
|
+
}
|
|
121
|
+
Ok(None) => return Ok(Ok(Ok(answer.response.headers().clone()))),
|
|
122
|
+
Err(refusal) => return Ok(Err((format!("GET {}: {}", shown(url), refusal.detail), None))),
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|