Replace the generated C++ legacy codec implementations with a small Rust wrapper around encoding_rs. This keeps the existing LibTextCodec API while moving label lookup, legacy decode/encode, validation, and streaming decoder state to Rust. The generated index data and generator are no longer needed. It also fixes several TextDecoder EOF cases due to a more correct implementation. encoding_rs finalizes decoders according to the Encoding Standard, so incomplete UTF-8/Big5 tails and malformed UTF-16 surrogate tails produce the required single replacement at end-of-queue instead of being dropped, buffered, or double-counted by our old hand-written decoders.
42 lines
1,008 B
TOML
42 lines
1,008 B
TOML
[workspace]
|
|
members = [
|
|
"Libraries/LibGfx/Rust",
|
|
"Libraries/LibJS/Rust",
|
|
"Libraries/LibRegex/Rust",
|
|
"Libraries/LibTextCodec/Rust",
|
|
"Libraries/LibUnicode/Rust",
|
|
"Libraries/LibURL/Rust",
|
|
"Libraries/LibWasm/Rust",
|
|
"Libraries/LibWeb/ContentBlocker/Rust",
|
|
"Libraries/LibWeb/Rust",
|
|
"Libraries/LibWeb/HTML/Parser/Rust",
|
|
]
|
|
exclude = [
|
|
"Libraries/LibJS/AsmIntGen",
|
|
]
|
|
resolver = "2"
|
|
|
|
[profile.release]
|
|
panic = "abort"
|
|
|
|
[profile.distribution]
|
|
inherits = "release"
|
|
incremental = false
|
|
codegen-units = 1
|
|
lto = true
|
|
|
|
[workspace.lints.clippy]
|
|
all = "deny" # includes lintgroups: correctness, suspicious, style, complexity, perf
|
|
# from clippy:nursery:
|
|
redundant_clone = "deny"
|
|
# from clippy:pedantic:
|
|
uninlined_format_args = "deny"
|
|
semicolon_if_nothing_returned = "deny"
|
|
manual_let_else = "deny"
|
|
unnecessary_wraps = "deny"
|
|
manual_assert = "deny"
|
|
ref_option = "deny"
|
|
elidable_lifetime_names = "deny"
|
|
unnested_or_patterns = "deny"
|
|
borrow_as_ptr = "deny"
|
|
explicit_iter_loop = "deny"
|