Vendor crabrl-fork source and remove submodule linkage

- Replace `rust/crabrl-fork` gitlink with tracked source files
- Add workspace notes documenting why the fork is vendored
- Update ignore rules for vendored fork build artifacts
This commit is contained in:
2026-03-17 19:55:38 -04:00
parent f4a0014572
commit ea130d3299
35 changed files with 6451 additions and 1 deletions

View File

@@ -0,0 +1,72 @@
[package]
name = "crabrl"
version = "0.1.0"
edition = "2021"
authors = ["Stefano Amorelli <stefano@amorelli.tech>"]
description = "High-performance XBRL parser and validator"
license = "AGPL-3.0"
repository = "https://github.com/stefanoamorelli/crabrl"
keywords = ["xbrl", "parser", "finance", "sec", "edgar"]
categories = ["parser-implementations", "finance", "command-line-utilities"]
[dependencies]
# Core
quick-xml = "0.36"
chrono = { version = "0.4", features = ["serde"] }
compact_str = { version = "0.8", features = ["serde"] }
# Performance
ahash = "0.8"
parking_lot = "0.12"
memchr = "2.7"
bumpalo = "3.16"
string-interner = "0.18"
rayon = { version = "1.10", optional = true }
memmap2 = { version = "0.9", optional = true }
mimalloc = { version = "0.1", default-features = false }
bitflags = "2.6"
# Async support
tokio = { version = "1.40", features = ["fs", "io-util"], optional = true }
async-stream = { version = "0.3", optional = true }
# CLI
clap = { version = "4.5", features = ["derive"], optional = true }
colored = { version = "2.1", optional = true }
# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# Error handling
thiserror = "2.0"
anyhow = "1.0"
[dev-dependencies]
criterion = "0.5"
pretty_assertions = "1.4"
tempfile = "3.15"
[[bin]]
name = "crabrl"
required-features = ["cli"]
[[bench]]
name = "parser"
harness = false
[features]
default = ["cli", "parallel"]
cli = ["clap", "colored"]
parallel = ["rayon"]
mmap = ["memmap2"]
async = ["tokio", "async-stream"]
[profile.release]
lto = "fat"
codegen-units = 1
opt-level = 3
strip = true
[profile.bench]
inherits = "release"