Avatar for the wasm-bindgen user
wasm-bindgen
wasm-bindgen
BlogDocsChangelog

Performance History

Latest Results

refactor: drop redundant struct keying fields from schema Now that exported_classes is keyed by qualified_name (#5154) and the wrap/unwrap aux imports route through that key, three fields carry no information that is not already derivable from (name, js_namespace): * AuxStruct.rust_name / Struct.rust_name (wire schema) — used to be the map key, replaced by qualified_name; no remaining cli-support reader after #5154/#5160, and no diagnostic surfacing in error messages or log output. * AuxStruct.qualified_name / AuxEnum.qualified_name — derivable on demand via wasm_bindgen_shared::qualified_name(js_namespace, name); storing it duplicates the (name, js_namespace) pair that AuxStruct already carries. * ExportedClass.qualified_name — duplicates the exported_classes map key. Three or_else fallback chains that exercised the pre-#5154 `rust_name` vs `qualified_name` disagreement collapse to direct uses of the key. The ancestors tuple shrinks from `(identifier, rust_name, qualified)` to `(identifier, qualified)` for the same reason: the rust_name slot was for the upcast-symbol parent half, which #5154 unified onto qualified_name on both sides via extends_js_class / extends_js_namespace. The release that ships #5154 is already a breaking schema bump (two new fields on Struct: extends_js_class / extends_js_namespace), so dropping rust_name in the same cycle costs nothing additional and avoids carrying a dead field forever. Schema hash re-approved.
ZhaoXiangXML:fix/wrap-exported-class-qualified-name
7 days ago
refactor: drop redundant struct keying fields from schema Now that exported_classes is keyed by qualified_name (#5154) and the wrap/unwrap aux imports route through that key, three fields carry no information that is not already derivable from (name, js_namespace): * AuxStruct.rust_name / Struct.rust_name (wire schema) — used to be the map key, replaced by qualified_name; no remaining cli-support reader after #5154/#5160, and no diagnostic surfacing in error messages or log output. * AuxStruct.qualified_name / AuxEnum.qualified_name — derivable on demand via wasm_bindgen_shared::qualified_name(js_namespace, name); storing it duplicates the (name, js_namespace) pair that AuxStruct already carries. * ExportedClass.qualified_name — duplicates the exported_classes map key. Three or_else fallback chains that exercised the pre-#5154 `rust_name` vs `qualified_name` disagreement collapse to direct uses of the key. The ancestors tuple shrinks from `(identifier, rust_name, qualified)` to `(identifier, qualified)` for the same reason: the rust_name slot was for the upcast-symbol parent half, which #5154 unified onto qualified_name on both sides via extends_js_class / extends_js_namespace. The release that ships #5154 is already a breaking schema bump (two new fields on Struct: extends_js_class / extends_js_namespace), so dropping rust_name in the same cycle costs nothing additional and avoids carrying a dead field forever. Schema hash re-approved.
ZhaoXiangXML:fix/wrap-exported-class-qualified-name
7 days ago

Latest Branches

CodSpeed Performance Gauge
-11%
fix: key WrapInExportedClass/UnwrapExportedClass by qualified_name (renamed-struct .into() duplicate class)#5160
7 days ago
5e0d7be
ZhaoXiangXML:fix/wrap-exported-class-qualified-name
CodSpeed Performance Gauge
-3%
build(deps): update shlex requirement from 1 to 2#5159
10 days ago
dc28cf2
dependabot/cargo/shlex-2
CodSpeed Performance Gauge
-27%
© 2026 CodSpeed Technology
Home Terms Privacy Docs