Cargo Features

[dependencies]
ass-core = { version = "0.1.1", default-features = false, features = ["minimal", "full", "std", "nostd", "analysis", "plugins", "stream", "unicode-wrap", "serde", "simd", "simd-full", "arena", "benches"] }
default = full

Default: Full-featured parser for desktop applications (matches ass-editor)

minimal = analysis, nostd, plugins, stream

--- Main Core Flavors (unified with ass-editor) ---

Provides the absolute minimum for a functional, performant parser. This is suitable for lightweight integrations or when only core parsing is needed. It enables alloc-only dependencies, making it compatible with nostd.

full default = analysis, arena, plugins, serde, simd, std, stream, unicode-wrap

Provides all features for a rich, full-featured ASS subtitle parser. This includes the same core features as minimal but with std support instead of nostd, plus advanced capabilities like SIMD, arena allocation, unicode support, and serialization. It explicitly enables std support.

std full

--- Granular Features (typically enabled by 'minimal' or 'full') ---

Platform support (mutually exclusive)
Standard library support (enabled by 'full')

nostd minimal?

nostd compatibility (mutually exclusive with std)

Enables hashbrown ^0.14

Feature-gated dependencies

analysis full minimal?

Core functionality (enabled by 'minimal')
Enable linting and deep analysis

Affects ass-core::analysis

plugins full minimal?

Extension registry support

Affects tags::parse_override_block_with_registry, ass-core::plugin

stream full minimal?

Chunked/streaming input support

Affects parser::streaming, script::ScriptDelta, script::calculate_delta, script::ScriptDeltaOwned

unicode-wrap full

Advanced features (enabled by 'full')
Unicode linebreak support for libass 0.17.4+ compatibility

serde full

Serialization support

Enables serde

simd full simd-full?

Performance optimizations (enabled by 'full')
SIMD-accelerated parsing

Enables wide ^0.7

Affects tokenizer::simd

simd-full = simd

Extended SIMD for UUencode/hex parsing (20-40% faster)

arena full

Arena allocation for parsing

Enables bumpalo

benches

Development features
Benchmark integration

Enables criterion ^0.5

Required by check-perf-regression, memory-profile and validate-bench-results binaries