## [0.22.0] - 2024-07-23 -85a7ceasemantic: [**BREAKING**] Remove name from `reference` (#4329) (Dunqing) -f68b659ast: [**BREAKING**] Reorder fields of `ArrowFunctionExpression` (#4364) (Dunqing) ### Features -d345b84ast: Add `#[ast]` attribute to non-visited AST types. (#4309) (rzvxa) -3c0c709linter: Add typescript-eslint/no-extraneous-class (#4357) (Jaden Rodriguez) -68efcd4linter/react-perf: Handle new objects and arrays in prop assignment patterns (#4396) (DonIsaac) -0deb027minfier: Dce `if (xxx) else if (false) { REMOVE }` (#4407) (Boshen) -e33ec18minifier: Compress `typeof foo == "undefined"` into `typeof foo > "u"` (#4412) (Boshen)-6068e6bAdd error codes to OxcDiagnostic (#4334) (DonIsaac) ### Bug Fixes -aece1dfast: Visit `Program`s `hashbang` field first (#4368) (overlookmotel) -44a10c4codegen: Object shorthand with parens `({x: (x)})` -> `({ x })` (#4391) (Boshen) -3d88f20codegen: Print shorthand for all `{ x }` variants (#4374) (Boshen) -e624dffcodegen,mangler: Do not print shorthand for `ObjectProperty` (#4350) (Boshen) -ac08de8linter/react_perf: Allow new objects, array, fns, etc in top scope (#4395) (DonIsaac) -267f7c4minifier: Skip `Object.defineProperty(exports, ...)` for `cjs-module-lexer` (#4409) (Boshen) -bc8d4e5semantic: Correct comment (#4410) (overlookmotel) -6ffce86semantic: Align `visit_arrow_function_expression` field visit order with ast (#4366) (Dunqing) -4cd5df0sourcemap: Avoid negative line if token_chunks has same prev_dst_line (#4348) (underfin) -f8565aetransformer/typescript: Unexpectedly removed class binding from ExportNamedDeclaration (#4351) (Dunqing)-ea33f94Impl PartialEq<str> for CompactStr (#4352) (DonIsaac) ### Performance -1b51511semantic: Use `Atom` instead of `CompactStr` for `UnresolvedReferencesStack` (#4401) (Dunqing) -40f9356semantic: Calculate number of nodes, scopes, symbols, references before visiting AST (#4367) (Dunqing) -da13d93semantic: Remove bounds checks on unresolved references stack (#4390) (overlookmotel) -e70c67bsemantic: Remove a branch from `add_scope` (#4384) (overlookmotel) -402006fsemantic: Simplify logic in `enter_scope` + `leave_scope` (#4383) (overlookmotel) -7469e01semantic: Remove branch from `Nodes::add_node` (#4361) (overlookmotel) -7eb2864traverse: Speed up finding UID binding name (#4356) (overlookmotel)-a207923Replace some CompactStr usages with Cows (#4377) (DonIsaac) ### Refactor -504daedallocator: Rename fn params for `Box::new_in` (#4431) (overlookmotel) -d213773ast: Replace serde rename "lowercase" with "camelCase" (#4376) (overlookmotel) -abfccbdast: Reduce `#[cfg_attr]` boilerplate in AST type defs (#4375) (overlookmotel) -5f1c7ecast: Rename the `visited_node` marker to `ast`. (#4289) (rzvxa) -58f6ec2ast: Enter node before scope (#4347) (Dunqing) -59aea73ast: Scope is created only if CatchClause has param (#4346) (Dunqing) -7a3e925ast_codegen: Better visit marker parsing. (#4371) (rzvxa) -0e1ea90isolated-declarations: Remove useless code from scope (#4420) (Dunqing) -7a75e0flinter: Use diagnostic codes in lint rules (#4349) (DonIsaac) -a2eabe1parser: Use error codes for ts diagnostics (#4335) (DonIsaac) -5d77b36semantic: `visit_program` visit `hashbang` field (#4370) (overlookmotel) -f7b9adasemantic: `Program` visitor leave scope before node (#4369) (overlookmotel) -729b288semantic: Shorten code (#4358) (overlookmotel) -21d0eeesemantic: Use error codes for ts diagnostics (#4336) (DonIsaac) Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>
13 KiB
Changelog
All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog, and this project does not adhere to Semantic Versioning until v1.0.0.
[0.22.0] - 2024-07-23
Bug Fixes
44a10c4codegen: Object shorthand with parens({x: (x)})->({ x })(#4391) (Boshen)3d88f20codegen: Print shorthand for all{ x }variants (#4374) (Boshen)e624dffcodegen,mangler: Do not print shorthand forObjectProperty(#4350) (Boshen)
[0.21.0] - 2024-07-18
Features
83c2c62codegen: Add option for choosing quotes; remove slowchoose_quotmethod (#4219) (Boshen)e3e663bmangler: Initialize crate and integrate into minifier (#4197) (Boshen)
Bug Fixes
bf3d8d3codegen: Print annotation comment inside parens for new and call expressions (#4290) (Boshen)084ab76codegen: Useryu-jsfor f64 to string (Boshen)e167ef7codegen: Print parenthesis properly (#4245) (Boshen)c65198fcodegen: Choose the right quote for jsx attribute string (#4236) (Boshen)be82c28codegen: PrintJSXAttributeValue::StringLiteraldirectly (#4231) (Boshen)3df9e69mangler: No shorthandBindingProperty; handle var hoisting and export variables (#4319) (Boshen)66b455aoxc_codegen: Avoid print same pure comments multiple time (#4230) (IWANABETHATGUY)-1c117ebAvoid print extra semicolon after accessor property (#4199) (IWANABETHATGUY)
Refactor
d1c4be0codegen: Clean up annotation_comment (Boshen)06197b8codegen: Separate tests (Boshen)aa22073codegen: Improve print API (#4196) (Boshen)
[0.20.0] - 2024-07-11
5731e39ast: [BREAKING] Store span details inside comment struct (#4132) (Luca Bruno)
Refactor
[0.18.0] - 2024-07-09
Features
365d9baoxc_codegen: Generate annotation comments beforeCallExpressionandNewExpression(#4119) (IWANABETHATGUY)
[0.17.2] - 2024-07-08
Bug Fixes
5472b7ccodegen: 256 indentations level is not enough for codegen (Boshen)
[0.17.1] - 2024-07-06
Bug Fixes
564a75acodegen: Missing TypeParameters in TSConstructSignature (#4063) (michaelm)
[0.17.0] - 2024-07-05
Features
7768d23isolated-declarations: Support optional class methods (#4035) (Egor Blinov)
Bug Fixes
aaac2d8codegen: Preserve parentheses from AST instead calculating from operator precedence (#4055) (Boshen)5e5b1b1codegen: Correct accessibility emit for class formal-parameters/methods/properties (#4042) (Egor Blinov)7844734codegen: Missing const keyword in TSTypeParamter (#4022) (Dunqing)6254a41codegen: Missing TypeParamters in TSCallSignature (#4021) (Dunqing)
[0.16.3] - 2024-07-02
Bug Fixes
23038adcodegen: PrintTSFunctionTypeinsideTSTypeAssertion(#3999) (Boshen)
[0.16.2] - 2024-06-30
Features
dc6d45east,codegen: AddTSParenthesizedTypeand print type parentheses correctly (#3979) (Boshen)
Bug Fixes
dac617dcodegen: Print some missing typescript attributes (#3980) (Boshen)
[0.16.1] - 2024-06-29
Bug Fixes
51e54f9codegen: Should printTSModuleDeclarationKindinstead of justmodule(#3957) (Dunqing)
[0.16.0] - 2024-06-26
-
6796891ast: [BREAKING] Rename all instances ofBigintLiteraltoBigIntLiteral. (#3898) (rzvxa) -
ae09a97ast: [BREAKING] RemoveModifiersfrom ts nodes (#3846) (Boshen) -
1af5ed3ast: [BREAKING] ReplaceModifierswithdeclareandconstonEnumDeclaration(#3845) (Boshen) -
0673677ast: [BREAKING] ReplaceModifierswithdeclareonFunction(#3844) (Boshen) -
ee6ec4east: [BREAKING] ReplaceModifierswithdeclareandabstractonClass(#3841) (Boshen) -
9b38119ast: [BREAKING] ReplaceModifierswithdeclareonVariableDeclaration(#3839) (Boshen) -
cfcef24ast: [BREAKING] Adddirectivesfield toTSModuleBlock(#3830) (Boshen) -
4456034ast: [BREAKING] AddIdentifierReferencetoExportSpecifier(#3820) (Boshen)
Features
5847e16ast,parser: Addintrinsickeyword (#3767) (Boshen)01da2f7codegen: Print TSThisParameter for TSCallSignatureDeclaration and TSMethodSignature (#3792) (Dunqing)2821e0ecodegen: Print readonly keyword for TSIndexSignature (#3791) (Dunqing)97575d8codegen: Print TSClassImplements and TSThisParameter (#3786) (Dunqing)
Bug Fixes
2766594codegen: Print type parameters for MethodDefinition (#3922) (Dunqing)
Performance
4f7ff7eDo not pass&Atomto functions (#3818) (overlookmotel)
Refactor
4cf3c76parser: Improve parsing of TypeScript types (#3903) (Boshen)
[0.15.0] - 2024-06-18
-
5c38a0fcodegen: [BREAKING] New code gen API (#3740) (Boshen) -
534242acodegen: [BREAKING] RemoveCodegenOptions::enable_typescript(#3674) (Boshen) -
0578eceast: [BREAKING] RemoveExportDefaultDeclarationKind::TSEnumDeclaration(#3666) (Dunqing)
Features
5a99d30codegen: Improve codegen formatting (#3735) (Boshen)bf9b38acodegen: Improve codegen formatting (#3731) (Boshen)4a004e2codegen: Print TSImport remaining fields (#3695) (Dunqing)a56cb1bcodegen: Print accessibility for MethodDefinition (#3690) (Dunqing)38a75e5coverage: Improve codegen (#3729) (Boshen)4f2db46transformer-dts:--isolatedDeclarationsdts transform (#3664) (Dunqing)
Bug Fixes
da1e2d0codegen: Improve typescript codegen (#3708) (Boshen)
Refactor
fa7a6bacodegen: Addgenmethod to ast nodes (#3687) (Boshen)09b92b6codegen: Movegen_tsintogento make searching things easier (#3680) (Boshen)815260eisolated-declarations: Decouple codegen (#3715) (Boshen)4f16664transformer_dts: Create aProgramfor codegen (#3679) (Boshen)
[0.14.0] - 2024-06-12
Refactor
f98f777linter: Add rule fixer (#3589) (Don Isaac)
[0.13.4] - 2024-06-07
Features
5c8e16ccoverage: Second transformer build does not print typescript (#3561) (Dunqing)
Bug Fixes
affb2c8codegen: Print indentation before directive (#3512) (Dunqing)
[0.13.3] - 2024-06-04
Bug Fixes
98c9029codegen: Should be double quote for jsx attribute value (#3516) (Dunqing)d8063b6codegen: Wrong escape string (#3514) (Dunqing)
Refactor
ddac2a0codegen: Reduce allocation for print_unquoted_str (#3525) (Dunqing)
[0.13.2] - 2024-06-03
Features
0cdb45aoxc_codegen: Preserve annotate comment (#3465) (IWANABETHATGUY)
[0.13.1] - 2024-05-22
Features
e2dd8acsyntax: Exportis_reserved_keywordandis_global_objectmethod (#3384) (Boshen)
Bug Fixes
a12ed0fcodegen: Using declaration in for statement (#3285) (Don Isaac)
Refactor
9ced605parser: Start porting arrow function parsing from tsc (#3340) (Boshen)e879685sourcemap: Using binary search to search original position (#3360) (underfin)
[0.13.0] - 2024-05-14
Features
eefb66fast: Add type to AccessorProperty to support TSAbractAccessorProperty (#3256) (Dunqing)
Bug Fixes
0ba7778parser: Correctly parse cls.fn = x (#3208) (Dunqing)
Refactor
7e1fe36ast: Squash nested enums (#3115) (overlookmotel)0185eb2ast: Remove duplicateTSNamedTupleMemberrepresentation (#3101) (overlookmotel)a8af5desyntax: Move number related functions to number module (#3130) (Boshen)
[0.12.5] - 2024-04-22
Features
92d709bast: AddCatchParameternode (#3049) (Boshen)
[0.12.4] - 2024-04-19
Features
fd5002bcodegen: Correctly print type-only imports/exports (#2993) (Dunqing)
[0.12.1] - 2024-04-03
Bug Fixes
28fae2esourcemap: Using serde_json::to_string to quote sourcemap string (#2889) (underfin)
Refactor
114f68ecodegen: Make codegen sourcemap builder clearer (#2894) (underfin)
[0.11.0] - 2024-03-30
Features
243131dtransformer: Numeric separator plugin. (#2795) (Ali Rezvani)-b199cb8Add oxc sourcemap crate (#2825) (underfin)-a2cfc86SourcemapVisualizer (#2773) (underfin)
Bug Fixes
6177c2fcodegen: Sourcemap token name should be original name (#2843) (underfin)b76b02dparser: Add support for empty module declaration (#2834) (Ali Rezvani)
Performance
2be5f9dcodegen: Avoid unnecessary copy (#2727) (underfin)d7004dasourcemap: Remove unnecessary binary search (#2728) (underfin)
Refactor
d9b77d8sourcemap: Change sourcemap name to take a reference (#2779) (underfin)
[0.10.0] - 2024-03-14
c3477deast: [BREAKING] Rename BigintLiteral to BigIntLiteral (#2659) (Arnaud Barré)
Bug Fixes
9609c34codegen:CallExpressionsourcemap (#2717) (underfin)b453a07parser: Parse named rest element in type tuple (#2655) (Arnaud Barré)
[0.9.0] - 2024-03-05
f66059east: [BREAKING] Align TSImportType with ESTree (#2578) (Arnaud Barré)
Features
20c7bf7ast: AddAssignmentTargetRest(#2601) (Boshen)3efbbb2ast: Add "abstract" type toMethodDefinitionandPropertyDefinition(#2536) (Boshen)8bb1084codegen: Add sourcemap (#2565) (Boshen)
Bug Fixes
ea30fd5codegen: Fix adding mapping to sourcemaps (#2590) (overlookmotel)fe29fa4codegen: Correct sourcemaps when Windows line breaks + unicode (#2584) (overlookmotel)517026bcodegen: Correct sourcemaps when unicode chars (#2583) (overlookmotel)
Performance
b7f5c63codegen: Speed up generating sourcemap mappings (#2597) (overlookmotel)42fa8ebcodegen: Speed up building sourcemap line tables (#2591) (overlookmotel)
Refactor
ef932a3codegen: Clean up API around building sourcemaps (#2602) (Boshen)
[0.8.0] - 2024-02-26
Features
6b3b260Codegen: Improve codegen (#2460) (Andrew McClenaghan)e6d536ccodegen: Configurable typescript codegen (#2443) (Andrew McClenaghan)
Bug Fixes
4327916codegen: Remove redundant semicolon in PropertyDefinition (#2511) (Dunqing)b5deb9acodegen: Whenasyncis on the left-hand side of a for-of, wrap it in parentheses (#2407) (Dunqing)384d5accodegen: Lower the level of precedence in TaggedTemplateExpression (#2391) (Wenzhe Wang)
Refactor
540f917ast: RemoveTSEnumBody(#2509) (Boshen)9087f71ast: S/TSThisKeyword/TSThisType to align with estree (Boshen)d08abc6ast: S/NumberLiteral/NumericLiteral to align with estree (Boshen)e6b391aast: S/ArrowExpression/ArrowFunctionExpression to align estree (Boshen)-a2c173dRemovepanic!from examples (#2454) (Boshen)
[0.7.0] - 2024-02-09
Features
55011e2codegen: Avoid printing comma in ArrayAssignmentTarget if the elements is empty (#2331) (Dunqing)
Bug Fixes
2eb489ecodegen: Format new expession + import expression with the correct parentheses (#2346) (Dunqing)721f6cbcodegen: Format new expression + call expression with the correct parentheses (#2330) (Boshen)
Refactor
1822cfeast: Fix BigInt memory leak by removing it (#2293) (Boshen)
[0.6.0] - 2024-02-03
Features
8ac0202codegen: Keep shorthand in ObjectPattern and ObjectProperty (#2265) (Dunqing)fa555cecodegen: Change back to read raw (#2222) (Wenzhe Wang)9333264codegen: Print TemplateLiteral withprint_str(#2207) (Wenzhe Wang)1ee6d8ccodegen: Move string test to codegen (#2150) (Wenzhe Wang)
Bug Fixes
0c225a4codegen: Print space before with clause in import (#2278) (Wenzhe Wang)d34650acodegen: Print necessary spaces forExportAllDeclaration(#2190) (Yunfei He)989ab88codegen: PrintDirectiveoriginal string (#2157) (underfin)29dc5e6codegen: Add parenthesis in binary expression by precedence (#2067) (Wenzhe Wang)
Refactor
766ca63ast: Rename RestElement to BindingRestElement (#2116) (Dunqing)
[0.5.0] - 2024-01-12
Refactor
a6717dbformatter,linter,codegen: Remove oxc_formatter (#1968) (Boshen)
[0.4.0] - 2023-12-08
Features
9ff0ffcast: Implement new proposal-import-attributes (#1476) (magic-akari)
Refactor
1a576f6rust: Move to workspace lint table (#1444) (Boshen)
[0.3.0] - 2023-11-06
Features
cef78accodegen: Indent inner class (#1085) (Wenzhe Wang)854b55acodegen: Json strings proposal (#1039) (Boshen)6c18b3ecodegen: Beauty class print (#995) (Wenzhe Wang)e0ca09bcodegen: Implement the basics of non-minifying codegen (#987) (Boshen)809f050codegen: Move minifying printer to codegen crate (#985) (Boshen)f28d96ccodegen: Initialize the codegen crate and struct (#983) (Boshen)2e2b758playground: Add transform and minify (#993) (Boshen)e8a4e81transformer: Implement some of jsx decode entities (#1086) (Boshen)af1a76btransformer: Implement some of needs_explicit_esm for typescript (#1047) (Boshen)dfee853transformer: Add utils to make logical_assignment_operators pass (#1017) (Boshen)678db1dtransformer: ES2020 Nullish Coalescing Operator (#1004) (Boshen)-094dfa5Support filter exec snap (#1084) (Wenzhe Wang)-0e91044Adjust the order of print semicolon (#1003) (Wenzhe Wang)
Bug Fixes
6295f9cast: Jsx attribute value and text child should be jsx string (#1089) (Boshen)f32bf27codegen: Fix some typescript codegen problems (#989) (Boshen)a455c81linter: Revert changes to JSX attribute strings (#1101) (Boshen)