[package]
edition = "2024"
rust-version = "1.96"
name = "truefix-core"
version = "0.1.4"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "FIX message model, field types, and SOH codec (BodyLength/CheckSum)."
readme = "README.md"
license = "Apache-2.0 OR MIT"
repository = "https://github.com/truefix-labs/truefix"
resolver = "2"
[lib]
name = "truefix_core"
path = "src/lib.rs"
[[test]]
name = "audit006_codec_strictness"
path = "tests/audit006_codec_strictness.rs"
[[test]]
name = "audit006_field_diagnostics"
path = "tests/audit006_field_diagnostics.rs"
[[test]]
name = "begin_string_format"
path = "tests/begin_string_format.rs"
[[test]]
name = "checksum_position_verification"
path = "tests/checksum_position_verification.rs"
[[test]]
name = "data_field_verification"
path = "tests/data_field_verification.rs"
[[test]]
name = "decode_max_body_len_consistency"
path = "tests/decode_max_body_len_consistency.rs"
[[test]]
name = "decode_requires_msg_type"
path = "tests/decode_requires_msg_type.rs"
[[test]]
name = "encoded_leg_pairs"
path = "tests/encoded_leg_pairs.rs"
[[test]]
name = "field_order"
path = "tests/field_order.rs"
[[test]]
name = "field_order_encode"
path = "tests/field_order_encode.rs"
[[test]]
name = "field_types"
path = "tests/field_types.rs"
[[test]]
name = "fieldmap_set_removes_duplicates"
path = "tests/fieldmap_set_removes_duplicates.rs"
[[test]]
name = "fixt_header_tags"
path = "tests/fixt_header_tags.rs"
[[test]]
name = "frame_checksum_overflow_hardening"
path = "tests/frame_checksum_overflow_hardening.rs"
[[test]]
name = "framing_bounds"
path = "tests/framing_bounds.rs"
[[test]]
name = "garbled"
path = "tests/garbled.rs"
[[test]]
name = "group_count_round_trip"
path = "tests/group_count_round_trip.rs"
[[test]]
name = "group_restructure"
path = "tests/group_restructure.rs"
[[test]]
name = "groups"
path = "tests/groups.rs"
[[test]]
name = "header_trailer_groups"
path = "tests/header_trailer_groups.rs"
[[test]]
name = "members_api"
path = "tests/members_api.rs"
[[test]]
name = "reference_vectors"
path = "tests/reference_vectors.rs"
[[test]]
name = "render_members_ordered_no_dup"
path = "tests/render_members_ordered_no_dup.rs"
[[test]]
name = "reverse_route"
path = "tests/reverse_route.rs"
[[test]]
name = "roundtrip"
path = "tests/roundtrip.rs"
[[test]]
name = "scratch_audit_verify2"
path = "tests/scratch_audit_verify2.rs"
[[test]]
name = "signature_length"
path = "tests/signature_length.rs"
[[test]]
name = "tag_zero_rejected"
path = "tests/tag_zero_rejected.rs"
[[test]]
name = "timestamp_leniency"
path = "tests/timestamp_leniency.rs"
[[test]]
name = "versions"
path = "tests/versions.rs"
[[bench]]
name = "codec"
path = "benches/codec.rs"
harness = false
[dependencies.memchr]
version = "2"
[dependencies.rust_decimal]
version = "1"
[dependencies.thiserror]
version = "2"
[dependencies.time]
version = "0.3"
features = [
"formatting",
"parsing",
"macros",
]
[lints.rust]
unsafe_code = "forbid"