[package]
edition = "2021"
rust-version = "1.85"
name = "vyre-foundation"
version = "0.4.1"
authors = ["Santh Project <contact@santh.dev>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Foundation layer: IR, type system, memory model, wire format. Zero application semantics. Part of the vyre GPU compiler."
homepage = "https://github.com/santhsecurity/vyre"
documentation = "https://docs.rs/vyre-foundation"
readme = "README.md"
keywords = [
"gpu",
"ir",
"compiler",
"wgsl",
"vyre",
]
categories = [
"algorithms",
"compilers",
"hardware-support",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/santhsecurity/vyre"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[lib]
name = "vyre_foundation"
path = "src/lib.rs"
[[test]]
name = "adversarial_graph_canonical_laws"
path = "tests/adversarial_graph_canonical_laws.rs"
[[test]]
name = "adversarial_program_canonical_laws"
path = "tests/adversarial_program_canonical_laws.rs"
[[test]]
name = "analyze_skip_audit"
path = "tests/analyze_skip_audit.rs"
[[test]]
name = "archive_confusion"
path = "tests/archive_confusion.rs"
[[test]]
name = "atomic_linear_type_gap"
path = "tests/atomic_linear_type_gap.rs"
[[test]]
name = "bench_corpus_duplication"
path = "tests/bench_corpus_duplication.rs"
[[test]]
name = "buffer_decl_boundary"
path = "tests/buffer_decl_boundary.rs"
[[test]]
name = "buffer_decl_with_count"
path = "tests/buffer_decl_with_count.rs"
[[test]]
name = "buffer_layout_proptest"
path = "tests/buffer_layout_proptest.rs"
[[test]]
name = "canonical_determinism"
path = "tests/canonical_determinism.rs"
[[test]]
name = "capability_contracts"
path = "tests/capability_contracts.rs"
[[test]]
name = "ci_script_frozen_contract_coupling"
path = "tests/ci_script_frozen_contract_coupling.rs"
[[test]]
name = "demos_orphan_risk"
path = "tests/demos_orphan_risk.rs"
[[test]]
name = "dialect_lookup_install"
path = "tests/dialect_lookup_install.rs"
[[test]]
name = "duplicate_plan_wording"
path = "tests/duplicate_plan_wording.rs"
[[test]]
name = "execution_plan"
path = "tests/execution_plan.rs"
[[test]]
name = "expr_builder_surface"
path = "tests/expr_builder_surface.rs"
[[test]]
name = "extern_registry_adversarial"
path = "tests/extern_registry_adversarial.rs"
[[test]]
name = "extern_registry_fresh_a"
path = "tests/extern_registry_fresh_a.rs"
[[test]]
name = "extern_registry_fresh_b"
path = "tests/extern_registry_fresh_b.rs"
[[test]]
name = "extern_registry_perf"
path = "tests/extern_registry_perf.rs"
[[test]]
name = "extern_registry_query"
path = "tests/extern_registry_query.rs"
[[test]]
name = "feature_matrix_drift"
path = "tests/feature_matrix_drift.rs"
[[test]]
name = "fingerprint_perf_contracts"
path = "tests/fingerprint_perf_contracts.rs"
[[test]]
name = "fusion_atomic_aliasing"
path = "tests/fusion_atomic_aliasing.rs"
[[test]]
name = "fusion_stress"
path = "tests/fusion_stress.rs"
[[test]]
name = "graph_invariants"
path = "tests/graph_invariants.rs"
[[test]]
name = "linear_type_validation"
path = "tests/linear_type_validation.rs"
[[test]]
name = "memory_ordering"
path = "tests/memory_ordering.rs"
[[test]]
name = "opaque_payload_endian"
path = "tests/opaque_payload_endian.rs"
[[test]]
name = "opaque_wire_round_trip"
path = "tests/opaque_wire_round_trip.rs"
[[test]]
name = "optimizer_idempotence_proptest"
path = "tests/optimizer_idempotence_proptest.rs"
[[test]]
name = "optimizer_perf_regression"
path = "tests/optimizer_perf_regression.rs"
[[test]]
name = "optimizer_reference_parity_smoke"
path = "tests/optimizer_reference_parity_smoke.rs"
[[test]]
name = "organization_contracts"
path = "tests/organization_contracts.rs"
[[test]]
name = "output_set_roundtrip"
path = "tests/output_set_roundtrip.rs"
[[test]]
name = "oversized_test_modules"
path = "tests/oversized_test_modules.rs"
[[test]]
name = "plan_of_record_competition"
path = "tests/plan_of_record_competition.rs"
[[test]]
name = "prefix_boundary"
path = "tests/prefix_boundary.rs"
[[test]]
name = "program_builder_invariants"
path = "tests/program_builder_invariants.rs"
[[test]]
name = "program_canonical_commutative"
path = "tests/program_canonical_commutative.rs"
[[test]]
name = "program_meta_surface"
path = "tests/program_meta_surface.rs"
[[test]]
name = "program_stats_proptest"
path = "tests/program_stats_proptest.rs"
[[test]]
name = "region_inline_invalidates"
path = "tests/region_inline_invalidates.rs"
[[test]]
name = "scope_cow"
path = "tests/scope_cow.rs"
[[test]]
name = "serial_envelope"
path = "tests/serial_envelope.rs"
[[test]]
name = "serial_envelope_boundary"
path = "tests/serial_envelope_boundary.rs"
[[test]]
name = "serial_envelope_corruption"
path = "tests/serial_envelope_corruption.rs"
[[test]]
name = "shape_predicate_evaluation"
path = "tests/shape_predicate_evaluation.rs"
[[test]]
name = "terminal_wire_round_trip"
path = "tests/terminal_wire_round_trip.rs"
[[test]]
name = "text_format_boundary"
path = "tests/text_format_boundary.rs"
[[test]]
name = "validation_contract_gaps"
path = "tests/validation_contract_gaps.rs"
[[test]]
name = "validation_depth_limits"
path = "tests/validation_depth_limits.rs"
[[test]]
name = "validation_edge_cases"
path = "tests/validation_edge_cases.rs"
[[test]]
name = "validation_findings_12_20"
path = "tests/validation_findings_12_20.rs"
[[test]]
name = "validation_output_markers"
path = "tests/validation_output_markers.rs"
[[test]]
name = "validation_rejection_contract"
path = "tests/validation_rejection_contract.rs"
[[test]]
name = "validator_error_docs"
path = "tests/validator_error_docs.rs"
[[test]]
name = "validator_uniformity"
path = "tests/validator_uniformity.rs"
[[test]]
name = "vast_invariants"
path = "tests/vast_invariants.rs"
[[test]]
name = "vast_layout_overflow_contracts"
path = "tests/vast_layout_overflow_contracts.rs"
[[test]]
name = "vast_proptest"
path = "tests/vast_proptest.rs"
[[test]]
name = "visitor_walk"
path = "tests/visitor_walk.rs"
[[test]]
name = "wildcard_pub_use_workspace"
path = "tests/wildcard_pub_use_workspace.rs"
[[test]]
name = "wire_decode_corruption"
path = "tests/wire_decode_corruption.rs"
[[test]]
name = "wire_decode_oom_guard"
path = "tests/wire_decode_oom_guard.rs"
[[test]]
name = "wire_format_corpus"
path = "tests/wire_format_corpus.rs"
[[test]]
name = "wire_roundtrip_exhaustive"
path = "tests/wire_roundtrip_exhaustive.rs"
[[test]]
name = "wire_roundtrip_non_composable"
path = "tests/wire_roundtrip_non_composable.rs"
[[test]]
name = "wire_roundtrip_proptest"
path = "tests/wire_roundtrip_proptest.rs"
[[test]]
name = "wire_version_mismatch"
path = "tests/wire_version_mismatch.rs"
[[test]]
name = "workspace_naming_footguns"
path = "tests/workspace_naming_footguns.rs"
[[test]]
name = "workspace_structure_contracts"
path = "tests/workspace_structure_contracts.rs"
[dependencies.arrayvec]
version = "=0.7.6"
[dependencies.blake3]
version = "=1.8.4"
[dependencies.bumpalo]
version = "=3.20.2"
[dependencies.bytemuck]
version = "=1.25.0"
features = ["derive"]
[dependencies.dashmap]
version = "6.1.0"
[dependencies.hashbrown]
version = "=0.17.0"
[dependencies.im]
version = "=15.1.0"
[dependencies.inventory]
version = "=0.3.17"
[dependencies.itoa]
version = "=1.0.15"
[dependencies.lasso]
version = "0.7.3"
features = ["multi-threaded"]
[dependencies.libm]
version = "=0.2.15"
[dependencies.rustc-hash]
version = "=1.1.0"
[dependencies.ryu]
version = "=1.0.20"
[dependencies.serde]
version = "=1.0.228"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "=1.0.149"
[dependencies.smallvec]
version = "=1.14.0"
features = ["serde"]
[dependencies.thiserror]
version = "=2.0.18"
[dependencies.toml]
version = "=0.8.23"
[dependencies.tracing]
version = "=0.1.44"
[dependencies.vyre-macros]
version = "0.4.1"
[dependencies.vyre-spec]
version = "0.4.1"
[dev-dependencies.criterion]
version = "=0.5.1"
features = ["html_reports"]
[dev-dependencies.proptest]
version = "=1.9.0"
[lints.clippy]
cast_lossless = "allow"
cast_possible_truncation = "allow"
erasing_op = "allow"
identity_op = "allow"
[lints.rust]
missing_docs = "deny"
unreachable_pub = "warn"
unsafe_code = "deny"
[lints.rust.nonstandard_style]
level = "warn"
priority = -1
[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1
[lints.rustdoc]
broken_intra_doc_links = "deny"
private_intra_doc_links = "warn"