78 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.39.0] - 2024-12-04
-
f2f31a8traverse: [BREAKING] Remove unsound APIs (#7514) (overlookmotel) -
b0e1c03ast: [BREAKING] AddStringLiteral::rawfield (#7393) (Boshen)
Features
a784a82oxc_transformer: Support jsx pragma that are long member expressions (#7538) (IWANABETHATGUY)a23ce15oxc_transformer: Replace_global_define for assignmentTarget (#7505) (IWANABETHATGUY)3539f56transformer/class-properties: Support for transformingTaggedTemplateExpresssion(#7504) (Dunqing)
Bug Fixes
64f92e9oxc_transform: Oxc dot define is postfix of some MemberExpr (#7640) (IWANABETHATGUY)6af8659oxc_transformer: Correct generateThisExprandimport.metain jsx pragma (#7553) (IWANABETHATGUY)58a125ftransformer/async-to-generator: Correct theSymbolFlagsof function id in module (#7470) (Dunqing)eb825edtransformer/class-properties: Replace references to class name with temp var in static prop initializers (#7610) (overlookmotel)0eadd9ftransformer/class-properties: Create temp var for class where required (#7516) (overlookmotel)199076btransformer/class-properties: Transform private property accesses in static prop initializers (#7483) (overlookmotel)37842c1transformer/object-rest-spread: Generate catch variable binding with correctSymbolFlags(#7469) (Dunqing)
Performance
7ebe8c2transformer: UseFxDashMapfor browser query cache (#7521) (overlookmotel)5ca6eeatransformer/class-properties: Inline visitor methods (#7485) (overlookmotel)3b1e63etransformer/jsx: No string comparisons generating pragma expression (#7620) (overlookmotel)
Documentation
370d4b9transformer/class-properties: Add missing docs (#7588) (overlookmotel)
Refactor
d21448bsemantic, transformer: SimplifyFxIndexMaptype aliases (#7524) (overlookmotel)7d1c12etransformer/class-properties: Rename misleadingly-named method (#7609) (overlookmotel)802233dtransformer/class-properties: Remove pointless method (#7592) (overlookmotel)a07f278transformer/class-properties:PrivatePropsStacktype (#7589) (overlookmotel)7bd6350transformer/class-properties: Move creating temp var out of main loop (#7587) (overlookmotel)ebd11fbtransformer/class-properties: Exittransform_classfaster if nothing to do (#7586) (overlookmotel)dccff38transformer/class-properties:ResolvedPrivateProptype (#7532) (overlookmotel)367b6c8transformer/class-properties:shortcut_static_classtakeSymbolId(#7531) (overlookmotel)ab1214dtransformer/class-properties: Renameclass_binding(#7533) (overlookmotel)d5aaee7transformer/class-properties: Remove defunct comments (#7527) (overlookmotel)968863btransformer/class-properties: Move transform logic ofcalleeofCallExpressiontotransform_private_field_callee(#7503) (Dunqing)5261547transformer/class-properties: Remove a branch fromtransform_call_expression_impl(#7507) (overlookmotel)1c4b29ctransformer/class-properties: Correct comments (#7506) (overlookmotel)8ad52betransformer/jsx:Pragma::parsetake a&str(#7619) (overlookmotel)ef62b9dtransformer/react-refresh: Usegenerate_uid_in_current_hoist_scopeto add hoisted binding (#7492) (Dunqing)
Testing
71b3437oxc_transformer: Define works differently with esbuild (#7593) (翠 / green)2158c38transformer/jsx: Move tests setup into a macro (#7618) (overlookmotel)
[0.38.0] - 2024-11-26
bb2c0c2transformer: [BREAKING] ReturnStringas error instead of OxcDiagnostic (#7424) (Boshen)
Features
59e7e46napi/transform: AddTransformOptions::targetAPI (#7426) (Boshen)e9f9e82oxc_transformer: Replace_global_define ThisExpression (#7443) (IWANABETHATGUY)8797849oxc_transformer: Replace_global_define destructuring assignment optimization (#7449) (IWANABETHATGUY)4bb1dcaoxc_transformer: ReplaceGlobalDefines for ChainExpr (#7433) (IWANABETHATGUY)d8c0931oxc_transformer: Use better diagnostic message forReplaceGlobalDefinesPlugin(#7439) (dalaoshu)21614f2oxc_transformer: ReplaceGlobalDefinesPlugin for ComputedMemberExpr (#7431) (IWANABETHATGUY)9778298transformer: Class properties transform (#7011) (overlookmotel)
Bug Fixes
7ff9f13transformer: Correct all ReferenceFlags (#7410) (Dunqing)4d6bd07transformer/async-generator-functions: Correct all binding scope id (#7425) (Dunqing)97de0b7transformer/class-properties: Transformthisin static prop initializers (#7481) (overlookmotel)d2745dftransformer/class-properties: Stop searching forsuper()inTSModuleBlocks (#7480) (overlookmotel)
Performance
e26916ctransformer/optional-chaining: Markenter_expressionas inline (#7390) (Dunqing)
Documentation
2a5954atransformer/class-properties: Document transform options (#7478) (overlookmotel)
Refactor
e5d49dbtransformer/class-properties: Placeholder method for transforming private field assignment patterns (#7482) (overlookmotel)abb0e0etransformer/class-properties: Rename var (#7477) (overlookmotel)25823c8transformer/class-properties: Safer use ofGetAddress(#7474) (overlookmotel)3396b69transformer/exponentiation-operator: Correct comment (#7476) (overlookmotel)eb39a50transformer/logic-assignment: Shorten code (#7419) (overlookmotel)6fd0fcbtransformer/object-rest-spread: Avoid multiple symbol lookups (#7420) (overlookmotel)52784d2transformer/optional-chaining: Avoid multiple symbol lookups (#7421) (overlookmotel)
Styling
111d722transformer/optional-chaining: Code style nit (#7468) (overlookmotel)
[0.37.0] - 2024-11-21
-
f059b0east: [BREAKING] Add missingChainExpressionfromTSNonNullExpression(#7377) (Boshen) -
41a0e60ast: [BREAKING] Removeimpl GetAddress for Function(#7343) (overlookmotel) -
1cbc624traverse: [BREAKING] RenameTraverseCtxmethods for creatingIdentifierReferences (#7300) (overlookmotel) -
e84ea2ctraverse: [BREAKING] RemoveTraverseCtx::clone_identifier_reference(#7266) (overlookmotel) -
44375a5ast: [BREAKING] RenameTSEnumMemberNameenum variants (#7250) (overlookmotel)
Features
39afb48allocator: IntroduceVec::from_array_in(#7331) (overlookmotel)d608012transform_conformance: Snapshot our transformed outputs (#7358) (Boshen)224775ctransformer: Transform object rest spread (#7003) (Boshen)885e37ftransformer: Optional Chaining (#6990) (Boshen)6a98ef1transformer: AddCompilerAssumptionstoTransformContext(#7369) (Boshen)faf8ddetraverse: Add methods for creatingExpression::Identifiers (#7301) (overlookmotel)
Bug Fixes
b57d00dtasks/compat_data: Fix misplaced features (#7284) (Boshen)c5f4ee7transformer: Correct code comments (#7247) (overlookmotel)389b84etransformer/arrow-function: Handle unicode when capitalizing property name (#7311) (overlookmotel)7d75130transformer/async-to-generator:argumentsisn't correct after transformation (#7234) (Dunqing)5b5c8a9transformer/nullish-coalescing: Correct span (#7269) (overlookmotel)
Performance
510b95dtransformer: UseAstBuilder::vec_from_array(#7333) (overlookmotel)e09d2dftransformer/arrow-function: Create super method binding names lazily (#7313) (overlookmotel)0a24703transformer/arrow-function: Optimizegenerate_super_binding_name(#7312) (overlookmotel)44fd962transformer/arrow-functions: Move arguments transform checks to aid inlining (#7322) (overlookmotel)26d3e96transformer/arrow-functions: Store state of whether arguments needs transform (#7321) (overlookmotel)
Documentation
e219ae8transformer/nullish-coalescing: Clarify doc comment (#7268) (overlookmotel)
Refactor
4acf2dbtransformer: Helper loader methods takeSpan(#7304) (overlookmotel)871e19btransformer/arrow-function: Comments on possible improvement (#7320) (overlookmotel)ea08c1ftransformer/arrow-function: Reserve correct capacity forVec(#7319) (overlookmotel)5cfe0b6transformer/arrow-function:generate_super_binding_nametake&strand&TraverseCtx(#7310) (overlookmotel)5d85386transformer/arrow-functions: UseIndexMapforsupergetter/setters (#7317) (overlookmotel)9f5ae56transformer/nullish-coalescing: Split main logic into separate function (#7273) (overlookmotel)345fbb9transformer/nullish-coalescing: Avoid repeated symbol lookups (#7272) (overlookmotel)
[0.36.0] - 2024-11-09
-
b11ed2cast: [BREAKING] Remove uselessObjectProperty::initfield (#7220) (Boshen) -
0e4adc1ast: [BREAKING] Remove invalid expressions fromTSEnumMemberName(#7219) (Boshen) -
846711ctransformer: [BREAKING] Change API to take a&TransformOptionsinstead ofTransformOptions(#7213) (Boshen) -
d1d1874ast: [BREAKING] Changecomment.spanto real position that contain//and/*(#7154) (Boshen) -
843bce4ast: [BREAKING]IdentifierReference::reference_idreturnReferenceId(#7126) (overlookmotel)
Features
ad3a2f5tasks/compat_data: Generate our own compat table (#7176) (Boshen)b4258eetransformer: Add defaultedModule::Preserveoption (#7225) (Boshen)324c3fetransformer: AddTransformOptions::moduleoption (#7188) (Boshen)a166a4atransformer: Add esbuild comma separated target API--target=es2020,chrome58(#7210) (Boshen)3a20b90transformer: Add es target toengineTargets(#7193) (Boshen)22898c8transformer: Warn BigInt when targeting < ES2020 (#7184) (Boshen)a579011transformer: Add featuresES2018NamedCapturingGroupsRegexandES2018LookbehindRegex(#7182) (Boshen)8573f79transformer: Turn on async_to_generator and async_generator_functions plugins in enable_all (#7135) (Dunqing)df77241transformer: EnableArrowFunctionConverterinasync-to-generatorandasync-generator-functionsplugins (#7113) (Dunqing)b6a5750transformer/arrow-function-converter: Move scope to changed scope forthis_varif scope have changed (#7125) (Dunqing)1910227transformer/async-to-generator: Support inferring the function name from the ObjectPropertyValue's key (#7201) (Dunqing)ffa8604transformer/async-to-generator: Do not transform await expression if is not inside async function (#7138) (Dunqing)e536d47transformer/babel: Add support for trying to get theModulefromBabelPlugins(#7218) (Dunqing)5cfdc05transformer/typescript: Support transformexport =andimport = require(...)when module is commonjs (#7206) (Dunqing)
Bug Fixes
c82b273transformer/async-generator-functions: Only transform object method in exit_function (#7200) (Dunqing)b2a888dtransformer/async-generator-functions: Incorrect transformation forfor awaitif it's not placed in a block (#7148) (Dunqing)19892edtransformer/async-generator-functions: Transform incorrectly forfor awaitif it's in LabeledStatement (#7147) (Dunqing)ede10dctransformer/async-to-generator: Incorrect transform when super expression is inside async method (#7171) (Dunqing)293d072transformer/async-to-generator: Only transform object method in exit_function (#7199) (Dunqing)ae692d7transformer/async_to_generator: Fix checking if function is class method (#7117) (overlookmotel)eea4ab8transformer/helper-loader: IncorrectSymbolFlagsfor default import whenSourceTypeis script (#7226) (Dunqing)
Refactor
de56083transformer: Addimpl TryFrom<EngineTargets> for EnvOptions(#7191) (Boshen)0a43c64transformer: MoveESTargetto its own file (#7189) (Boshen)0e1f12ctransformer: Remove unimplementedEnvOptions::bugfixes(#7162) (Boshen)a981caftransformer: AddEngineenum forEngineTargets(#7161) (Boshen)8340243transformer: RenameQuerytoBrowserslistQuery(#7143) (Boshen)481f7e6transformer: ChangeTargetstoEngineTargets(#7142) (Boshen)55e6989transformer: Deserialize engine target strings to specific keys (#7139) (Boshen)fdfd9a4transformer: Usescope_idetc methods (#7128) (overlookmotel)ff8bd50transformer: Move implementation of ArrowFunction to common/ArrowFunctionConverter (#7107) (Dunqing)4a515betransformer/arrow-function-coverter: Rename function name and add some comments to explain confusing parts. (#7203) (Dunqing)c307e1btransformer/arrow-functions: PassArenaBoxas function param (#7169) (overlookmotel)217d433transformer/arrow-functions: Remove unused&mut selffunction param (#7165) (overlookmotel)426df71transformer/arrow-functions: Usescope_idmethod (#7164) (overlookmotel)11c5e12transformer/arrow-functions: Correct comments (#7163) (overlookmotel)1238506transformer/async-generator-function: Remove inactive#[allow(clippy::unused_self)]attrs (#7167) (overlookmotel)84ee581transformer/async-generator-functions: Simplify identifying whether within an async generator function (#7170) (overlookmotel)1b12328transformer/async-generator-functions: Useclonenotclone_inonLabelIdentifier(#7172) (overlookmotel)cd1006ftransformer/async-generator-functions: Do not transform yield expression where inside generator function (#7134) (Dunqing)2c5734dtransformer/async-generator-functions: Do not transform await expression where inside ArrowFunctionExpression (#7132) (Dunqing)5ce83bdtransformer/async-generator-functions: Remove dead code for handle await expression (#7131) (Dunqing)e04ee97transformer/async-generator-functions: Move handling ofMethodDefinition's value toexit_function(#7106) (Dunqing)b57d5a5transformer/async-to-generator: Remove unused&selffunction param (#7166) (overlookmotel)f80085ctransformer/async-to-generator: Move handling ofMethodDefinition's value toexit_function(#7105) (Dunqing)e2241e6transformer/jsx-self: Remove unused&selffunction params (#7159) (overlookmotel)1dfd241transformer/optional-catch-binding: Remove inactive#[allow(clippy::unused_self)]attr (#7158) (overlookmotel)fd9b44ctransformer/typescript: Remove inactive#[allow(clippy::unused_self)]attr (#7160) (overlookmotel)
Styling
38a6df6transformer/arrow-functions: Semicolon after return statements (#7168) (overlookmotel)64b7e3atransformer/async-generator-functions: Importoxc_allocator::VecasArenaVec(#7173) (overlookmotel)
[0.35.0] - 2024-11-04
b8daab3transformer: [BREAKING] API toTryFrom<&EnvOptions> for TransformOptionsandTryFrom<&BabelOptions> TransformOptions(#7020) (Boshen)
Features
bfdbcf1transformer: AddEnvOptions::from_browerslist_queryAPI (#7098) (Boshen)21b8e49transformer: AddESTarget(#7091) (Boshen)fcaba4atransformer: AddTransformerOptions::envwithEnvOptions(#7037) (Boshen)1d906c6transformer: Class properties transform skeleton (#7038) (overlookmotel)934cb5etransformer: Addasync_generator_functionsplugin (#6573) (Dunqing)
Bug Fixes
a2244fftransformer/async-to-generator: Output is incorrect when arrow function without params (#7052) (Dunqing)
Refactor
7f1d1fetransform: DeserializeBabelPreests::envdirectly (#7051) (Boshen)76947e2transform: Refactor Babel Targets (#7026) (Boshen)d03e622transformer: Do not useAstBuilder::*_from_*methods (#7070) (overlookmotel)9d384adtransformer: Useidentifier_reference_with_reference_idbuilder method (#7056) (overlookmotel)4688a06transformer: Use*_with_scope_idbuilder methods where possible (#7055) (overlookmotel)7122e00transformer: Usectx.allocoverctx.ast.allocwhere possible (#7066) (overlookmotel)a3b68b4transformer: Flatten dir structure of options/babel/env (#7049) (Boshen)6d92f36transformer: DeserializeBabelOptions::compiler_assumptions(#7048) (Boshen)f83a760transformer: DeserializeBabelOptions::presets(#7047) (Boshen)52c20d6transformer: DeserializeBabelOptions::plugins(#7045) (Boshen)e921df6transformer: RenameEnvOptionstoBabelEnvOptions(#7036) (Boshen)af5140ftransformer: Isolate babel options logic (#7034) (Boshen)12aa910transformer: Clean upenv/targets/query.rs(#7033) (Boshen)3d174bbtransformer: Clean upBabelOptions(#7029) (Boshen)6284f84transformer: UseBrowserslist::Version(#7028) (Boshen)5b11cdftransformer: Clean up TransformerOptions (#7005) (Boshen)f0c87d4transformer: Mark all EnvOptions as not implemented (#7004) (Boshen)d9edef6transformer: Combine ObjectRestSpread into a single file (#7002) (Boshen)c945fe7transformer: Importoxc_allocator::BoxasArenaBox(#6999) (overlookmotel)fc1af2etransformer: Importoxc_allocator::VecasArenaVec(#6998) (overlookmotel)63e8bfetransformer: RenameAStringtoArenaString(#6997) (overlookmotel)562bb9atransformer/async-to-generator: Move transform methods toAsyncGeneratorExecutorand make it public (#6992) (Dunqing)e23f7e6transformer/common:VarDeclarationsinsert eithervarorletstatements (#7043) (overlookmotel)e5ecbb9transformer/jsx: Return&mut Tnot&mut ArenaBox<T>(#7001) (overlookmotel)9e66c29transformer/react-refresh: Small refactor (#6973) (overlookmotel)1ca8cd2transformer/react-refresh: Avoid panic forinitofVariableDeclaratorisn't aBindingIdentifier(#6937) (Dunqing)5f153actransformer/react-refresh: UseVarDeclarationsto insert declarators (#6884) (Dunqing)df3b089transformer/react-refresh: UseStatementInjectorto insert statements (#6881) (Dunqing)ae22671transformer/typescript: Pass&mut Tnot&mut ArenaBox<T>(#7000) (overlookmotel)
Styling
86ab091transformer/common: Split upStatementInjectorStoremethods into blocks (#7042) (overlookmotel)
Testing
6133a50transformer: Use a single integration test for faster compilation (#7099) (Boshen)
[0.34.0] - 2024-10-26
4618aa2transformer: [BREAKING] RenameTransformerOptions::reacttojsx(#6888) (Boshen)
Features
0d0bb17transformer: Complete the async-to-generator plugin (#6658) (Dunqing)
Bug Fixes
4dc5e51transformer: Only run typescript plugin for typescript source (#6889) (Boshen)076f5c3transformer/typescript: Retain ExportNamedDeclaration without specifiers and declaration (#6848) (Dunqing)
Refactor
423d54crust: Remove the annoyingclippy::wildcard_imports(#6860) (Boshen)2d95009transformer: ImplementDebugonStatementInjectorinternal types (#6886) (overlookmotel)c383c34transformer: MakeStatementInjectorStoremethods generic overGetAddress(#6885) (overlookmotel)1f29523transformer: Rename ReactJsx to Jsx (#6883) (Boshen)333b758transformer:StatementInjectorStoremethods take&Statementas target (#6858) (overlookmotel)c19996ctransformer: AddStatementInjectorStore::insert_many_beforemethod (#6857) (overlookmotel)7339ddetransformer:StatementInjectorStore::insert_many_aftertake an iterator (#6856) (overlookmotel)4348eaetransformer/typescript: Re-order visitor methods (#6864) (overlookmotel)3a56d59transformer/typescript: Insert assignments after super byStatementInjector(#6654) (Dunqing)60f487atraverse:TraverseCtx::generate_bindingtake anAtom(#6830) (overlookmotel)
[0.33.0] - 2024-10-24
-
4d2d214ast, transformer: [BREAKING] RemoveStringLiteral::newmethod (#6788) (overlookmotel) -
aeaa27aast, parser, transformer, traverse: [BREAKING] RemoveBindingIdentifier::newmethods (#6786) (overlookmotel) -
ecc9151ast, parser, transformer, traverse: [BREAKING] RemoveIdentifierReference::newmethods (#6785) (overlookmotel) -
c91ffbcast, transformer: [BREAKING] RemoveIdentifierName::newmethod (#6784) (overlookmotel) -
2bee4e2ast, transformer: [BREAKING] RemoveBlockStatement::newmethods (#6783) (overlookmotel) -
8032813regular_expression: [BREAKING] Migrate to new regexp parser API (#6741) (leaysgur)
Features
10484cdtransformer: Class static block transform (#6733) (overlookmotel)7fbca9dtransformer: IntroduceStatementInjectorhelper (#6653) (Dunqing)
Bug Fixes
1107770coverage: Inject babel helpers for transform (#6818) (Boshen)b711ee1transformer: After using StatementInjector, some statements disappeared (#6778) (Dunqing)
Documentation
ab03535transformer: Correct typos and reformat doc comments (#6758) (overlookmotel)
Refactor
ab8aa2fallocator: MoveGetAddresstrait intooxc_allocator(#6738) (overlookmotel)0e9b695ast: Changeplain_functionto acceptFunctionBodyas a required parameter (#6709) (Dunqing)b8dfa19transformer: Shorten code (#6809) (overlookmotel)759710atransformer: Methods only take&TraverseCtxwhere possible (#6812) (overlookmotel)06e06e3transformer: RenameOxcVectoAVec(#6737) (overlookmotel)e5f4b4atransformer/react-refresh: DereferenceScopeIdas soon as possible (#6820) (overlookmotel)57685b2transformer/react-refresh: UnwrapBindingIdentifier::symbol_id(#6817) (overlookmotel)4f6dc22transformer/react-refresh: Avoid re-creatingAtoms (#6816) (overlookmotel)8316069transformer/react-refresh: Shorten code by usingBoundIdentifier(#6815) (overlookmotel)fdd69e4transformer/typescript: UseTraverseCtx::generate_bindingto create a symbol (#6806) (Dunqing)
Styling
871b9f5transformer/react-refresh: Fix whitespace (#6813) (overlookmotel)
[0.32.0] - 2024-10-19
5200960oxc: [BREAKING] Remove passingTriviasaround (#6446) (Boshen)
Features
a01a5dftransformer: Pass TransformerCtx to async-to-generator plugin (#6633) (Dunqing)a9260cftransformer:async-to-generatorplugin. (#5590) (Ethan Goh)8fe1b0atransformer: Support helper loader (#6162) (Dunqing)ab51c2atransformer: SupportDefaultImportinModuleImports(#6434) (Dunqing)a3dea9ctransformer/async-to-generator: Handle arrow-function correctly (#6640) (Dunqing)41c8675transformer/object-rest-spread: Using helper loader (#6449) (Dunqing)
Bug Fixes
1d3d256transformer: Correctly trim JSX (#6639) (magic-akari)c6f2b5ftransformer:HelperLoadercommon transform: do not assumebabelHelpersis global (#6569) (overlookmotel)85d93edtransformer: Arrow function transform: correctly resolvethisin class accessor properties (#6386) (overlookmotel)
Performance
f70a413transformer: Object spread transform: do not lookupObjectbinding if not needed (#6570) (overlookmotel)
Documentation
f3451d7transformer/async-to-generator: Remove empty lines from doc comment (#6642) (overlookmotel)448388atransformer/module_imports: Update outdated comments (#6574) (Dunqing)
Refactor
856cab5ecmascript: Move ToInt32 fromoxc_syntaxtooxc_ecmascript(#6471) (Boshen)1ba2a24ecmascript: RemoveHasProtowhich is not part of the spec (#6470) (Boshen)435a89coxc: Remove uselessallocator.alloc(program)calls (#6571) (Boshen)9281234transformer: Shorten imports (#6643) (overlookmotel)3af0840transformer:HelperLoader: add import immediately (#6601) (overlookmotel)f81aa7ftransformer:HelperLoadercommon transform: comments (#6599) (overlookmotel)679cc68transformer:HelperLoadercommon transform: construct string directly in arena (#6596) (overlookmotel)c346ebbtransformer:HelperLoadercommon transform:Helperenum (#6595) (overlookmotel)7a028b3transformer: Remove unnecessary#![warn]attr (#6585) (overlookmotel)8c6afe0transformer: Reorder imports (#6582) (overlookmotel)779ff46transformer:HelperLoadercommon transform:Helperstruct (#6568) (overlookmotel)bc24a24transformer:HelperLoadercommon transform: use hashmapEntryAPI (#6567) (overlookmotel)9f02fc7transformer:HelperLoadercommon transform: re-order fields (#6565) (overlookmotel)50ecadetransformer:HelperLoadercommon transform: removeRcs (#6564) (overlookmotel)1c1e9fctransformer:HelperLoadercommon transform: reorder methods (#6563) (overlookmotel)c9054c8transformer: RenameImportKindtoImport(#6561) (overlookmotel)9542c4etransformer: Add more specific methods toModuleImportsStore(#6560) (overlookmotel)7e57a1dtransformer:ImportKinduseBoundIdentifier(#6559) (overlookmotel)602df9dtransformer: Re-order fields ofCommonandTransformCtx(#6562) (overlookmotel)390abcatransformer/async-to-generator: Usehelper_call_expr(#6634) (Dunqing)2ff917ftransformer/async-to-generator: Move internal methods below entry points (#6632) (Dunqing)
Styling
9d43a11transformer: Re-order dependencies (#6659) (overlookmotel)
[0.31.0] - 2024-10-08
-
01b878eparser: [BREAKING] UseBindingIdentifierfornamespacedeclaration names (#6003) (DonIsaac) -
020bb80codegen: [BREAKING] Change toCodegenReturn::codeandCodegenReturn::map(#6310) (Boshen) -
409dffctraverse: [BREAKING]generate_uidreturn aBoundIdentifier(#6294) (overlookmotel) -
5a73a66regular_expression: [BREAKING] Simplify public APIs (#6262) (leaysgur) -
4f6bc79transformer: [BREAKING] Removesource_typeparam fromTransformer::new(#6251) (overlookmotel) -
82ab689transformer,minifier: [BREAKING] Move define and inject plugin from minifier to transformer (#6199) (Boshen)
Features
c3c3447data_structures: Addoxc_data_structurescrate; add stack (#6206) (Boshen)51a78d5napi/transform: Rename all mention of React to Jsx; remove mention ofBinding(#6198) (Boshen)9e62396syntax_operations: Add crateoxc_ecmascript(#6202) (Boshen)cf20f3atransformer: Exponentiation transform: support private fields (#6345) (overlookmotel)
Bug Fixes
9736aa0oxc_transformer: Defineimport.metaandimport.meta.*(#6277) (IWANABETHATGUY)2bcd12atransformer: Exponentiation transform: fix reference flags (#6330) (overlookmotel)28cbfa7transformer: Exponentiation transform: fix temp var names (#6329) (overlookmotel)3a4bcc7transformer: Exponentiation transform: fix temp var names (#6318) (overlookmotel)ccb7bdctransformer: Exponentiation transform: do not replace object when private property (#6313) (overlookmotel)56d50cftransformer: Exponentiation transform: do not assumeMathis not a local var (#6302) (overlookmotel)bd81c51transformer: Exponentiation transform: fix duplicate symbols (#6300) (overlookmotel)06797b6transformer: Logical assignment operator transform: fix reference IDs (#6289) (overlookmotel)4b42047transformer: Fix memory leak inReplaceGlobalDefines(#6224) (overlookmotel)a28926ftransformer: Fix insertingrequirewithfrontoption (#6188) (overlookmotel)b92fe84transformer:NonEmptyStack::pushwrite value before updating cursor (#6169) (overlookmotel)
Performance
788e444transformer: Parse options from comments only once (#6152) (overlookmotel)da2b2a4transformer: Look upSymbolIdforrequireonly once (#6192) (overlookmotel)40bd919transformer: Faster parsing JSX pragmas from comments (#6151) (overlookmotel)
Documentation
eb1d0b8transformer: Exponentiation transform: update doc comments (#6315) (overlookmotel)
Refactor
bd5fb5atransformer: Exponentiation transform: rename methods (#6344) (overlookmotel)4aa4e6btransformer: Exponentiation transform: do not wrap inSequenceExpressionif not needed (#6343) (overlookmotel)a15235atransformer: Exponentiation transform: no cloning (#6338) (overlookmotel)7d93b25transformer: Exponentiation transform: split into 2 paths (#6316) (overlookmotel)15cc8aftransformer: Exponentiation transform: break up into functions (#6301) (overlookmotel)7f5a94btransformer: UseOption::get_or_insert_with(#6299) (overlookmotel)0cea6e9transformer: Exponentiation transform: reduce identifier cloning (#6297) (overlookmotel)ac7a3edtransformer: Logical assignment transform: reduce identifier cloning (#6296) (overlookmotel)527f7c8transformer: Nullish coalescing transform: no cloning identifier references (#6295) (overlookmotel)7b62966transformer: MoveBoundIdentifierintooxc_traversecrate (#6293) (overlookmotel)c7fbf68transformer: Logical assignment operator transform: no cloning identifier references (#6290) (overlookmotel)f0a74catransformer: Prefercreate_bound_reference_idtocreate_reference_id(#6282) (overlookmotel)ba3e85btransformer: Fix spelling (#6279) (overlookmotel)bc757c8transformer: Move functionality of common transforms into stores (#6243) (overlookmotel)1c31932transformer: Rename var inVarDeclarationscommon transform (#6242) (overlookmotel)0400ff9transformer:VarDeclarationscommon transform: check if at top level withctx.parent()(#6231) (overlookmotel)235cdbatransformer: Use AstBuilder instance from TraverseCtx (#6209) (overlookmotel)a7ed29etransformer: Insertimportstatement orrequiredepending on source type (#6191) (overlookmotel)4c63f0etransformer: Rename methods (#6190) (overlookmotel)900cb46transformer: ConvertModuleImportsinto common transform (#6186) (overlookmotel)00e2802transformer: IntroduceTopLevelStatementscommon transform (#6185) (overlookmotel)70d4c56transformer: RenameVarDeclarationsStoremethods (#6184) (overlookmotel)81be545transformer: Exportvar_declarationsmodule fromcommonmodule (#6183) (overlookmotel)02fedf5transformer: Shorten import (#6180) (overlookmotel)f2ac584transformer: Use TraverseCtx's ast in ModuleImports (#6175) (Dunqing)21b08batransformer: SharedVarDeclarations(#6170) (overlookmotel)0dd9a2etraverse: Add helper methods toBoundIdentifier(#6341) (overlookmotel)
[0.30.5] - 2024-09-29
Bug Fixes
bfd1988transformer/react: Should not collect use-hooks if it's a nested member expression (#6143) (Dunqing)
Refactor
375bebetransformer: Improve parsing React pragmas (#6138) (overlookmotel)0836f6btransformer: Move parsing pragmas into TS transform (#6137) (overlookmotel)30424fatransformer: TS transforms only store options they need (#6135) (overlookmotel)
[0.30.4] - 2024-09-28
Bug Fixes
64d4756transformer: Fix debug assertion inStack(#6106) (overlookmotel)
Refactor
7bc3988transformer: Remove dead code (#6124) (overlookmotel)07fe45btransformer: Exponentiation operator: convert to match (#6123) (overlookmotel)4387845transformer: ShareTypeScriptOptionswith ref notRc(#6121) (overlookmotel)09e41c2transformer: ShareTransformCtxwith ref notRc(#6118) (overlookmotel)58fd6ebtransformer: Pre-allocate more stack space (#6095) (overlookmotel)9ac80bdtransformer: Add wrapper aroundNonNull(#6115) (overlookmotel)c50500etransformer: Move common stack functionality intoStackCommontrait (#6114) (overlookmotel)9839059transformer: SimplifyStackCapacitytrait (#6113) (overlookmotel)
[0.30.2] - 2024-09-27
Features
60c52baast: Allow passing span tovoid_0method (#6065) (Dunqing)28da771transformer: Do not transform**with bigint literals (#6023) (Boshen)
Bug Fixes
c8682e9semantic,codegen,transformer: Handle definite!operator in variable declarator (#6019) (Boshen)
Performance
85aff19transformer: IntroduceStack(#6093) (overlookmotel)ad4ef31transformer: IntroduceNonEmptyStack(#6092) (overlookmotel)
Refactor
e60ce50transformer: AddSparseStack::with_capacitymethod (#6094) (overlookmotel)1399d2ctransformer: MoveSparseStackdefinition into folder (#6091) (overlookmotel)6bd29ddtransformer: Add more debug assertions (#6090) (overlookmotel)c90b9bftransformer: RenameSparseStackmethods (#6089) (overlookmotel)2b380c8transformer: Remove unsuedself.ctx(#6022) (Boshen)
Testing
a4cec75transformer: Enable tests (#6032) (overlookmotel)
[0.30.1] - 2024-09-24
Performance
7b90d79transformer:SparseStackalways keep minimum 1 entry (#5962) (overlookmotel)28fe80atransformer: Logical assignment operator transform useSparseStack(#5960) (overlookmotel)9f7d4b7transformer: Exponentiation operator transform useSparseStack(#5959) (overlookmotel)5dc0154transformer: Nullish coalescing operator transform useSparseStack(#5942) (overlookmotel)618e89etransformer: Arrow function transform: reduce stack memory usage (#5940) (overlookmotel)
Documentation
860f108transformer: Add to arrow functions transform docs (#5989) (overlookmotel)
Refactor
f02bf51transformer: Arrow function transform: remove unnecessary assertion (#6002) (overlookmotel)
[0.30.0] - 2024-09-23
c96b712syntax: [BREAKING] RemoveSymbolFlags::ArrowFunction(#5857) (overlookmotel)
Features
3230ae5semantic: AddSemanticBuilder::with_excess_capacity(#5762) (overlookmotel)a07f03atransformer: SyncProgram::source_typeafter transform (#5887) (Boshen)
Bug Fixes
87323c6transformer: Arrow function transform: prevent stack getting out of sync (#5941) (overlookmotel)4e9e838transformer: Fix arrow function transform (#5933) (overlookmotel)4d5c4f6transformer: Fix reference flags in logical assignment operator transform (#5903) (overlookmotel)d335a67transformer: Fix references in logical assignment operator transform (#5896) (overlookmotel)9758c1atransformer: JSX source: addvar _jsxFileNamestatement (#5894) (overlookmotel)49ee1dctransformer: Arrow function transform handlethisin arrow function in class static block (#5848) (overlookmotel)172fa03transformer: Fix stacks in arrow function transform (#5828) (overlookmotel)d74c7fatransformer: RemoveAstBuilder::copyfrom arrow functions transform (#5825) (overlookmotel)3cc38dftransformer/react: React refresh panics when encounterusehook (#5768) (Dunqing)
Performance
ff7d9c1transformer: Arrow function transform: calculate whetherthisis in arrow function lazily (#5850) (Dunqing)fd70c4btransformer: Arrow function transform more efficient scope search (#5842) (overlookmotel)56703a3transformer: Make branch more predictable in arrow function transform (#5833) (overlookmotel)36e698btransformer: Calltransform_jsxinexit_expressionrather thanenter_expression(#5751) (Dunqing)aac8316transformer/react: Improveis_componentish_name's implementation (#5769) (Dunqing)
Documentation
7085829transformer: Arrow function transform: comment about incomplete implementation (#5945) (overlookmotel)66b4688transformer: React: convert docs to standard format (#5891) (overlookmotel)7f05eedtransformer: Add comment about missing features in arrow function transform (#5855) (overlookmotel)8770647transformer: Correct docs for arrow function transform (#5854) (overlookmotel)
Refactor
155d7fctransformer: Arrow function transform: ignore type fields when finding enclosing arrow function (#5944) (overlookmotel)2cf5607transformer: Split up logical assignment operator transform into functions (#5902) (overlookmotel)41fbe15transformer: Internal functions notpubin logical assignment operator transform (#5898) (overlookmotel)b11d91ctransformer: Remove nested match in logical assignment operator transform (#5897) (overlookmotel)52c9903transformer: JSX: useAstBuilder::vec_from_iter(#5862) (overlookmotel)74364adtransformer: JSX: mergetransform_jsx_attribute_itemintotransform_jsx(#5861) (overlookmotel)d2eaa7dtransformer: Reorder match arms in JSX transform (#5860) (overlookmotel)58a8327transformer: Simplify match in JSX transform (#5859) (overlookmotel)b9c4564transformer: Transformer example output semantic + transformer errors (#5852) (overlookmotel)03e02a0transformer: Comment about potential improvement to arrow function transform (#5841) (overlookmotel)40cdad5transformer: Remove repeat code in arrow function transform (#5837) (overlookmotel)3dd188ctransformer: DerefSymbolIdimmediately (#5836) (overlookmotel)03a9e1atransformer: Reorder methods in arrow function transform (#5830) (overlookmotel)4d97184transformer: Rename vars in arrow function transform (#5827) (overlookmotel)01c5b7ctransformer: Shorten code in arrow functions transform (#5826) (overlookmotel)85ac3f7transformer: Arrow functions transform do not wrap function expressions in parentheses (#5824) (overlookmotel)1c1353btransformer: Use AstBuilder instead of using struct constructor (#5778) (Boshen)
[0.29.0] - 2024-09-13
Features
953fe17ast: ProvideNONEtype for AST builder calls (#5737) (overlookmotel)
Bug Fixes
- 77d9170 transformer/react: IsStaticChildren should be false when there is only one child (#5745) (Dunqing)
Refactor
4bdc202rust: Remove some #[allow(unused)] (#5716) (Boshen)cc0408bsemantic: S/AstNodeId/NodeId (#5740) (Boshen)
[0.28.0] - 2024-09-11
-
ee4fb42ast: [BREAKING] Reduce size ofWithClausebyBoxing it (#5677) (Boshen) -
b060525semantic: [BREAKING] Removesource_typeargument fromSemanticBuilder::new(#5553) (Boshen)
Features
95a6d99transformer: Enable the react refresh plugin in enable_all (#5630) (Dunqing)7b543dftransformer/react: Handlerefresh_sigandrefresh_regoptions correctly (#5638) (Dunqing)
Bug Fixes
1bc08e2coverage: Parse babel unambiguously (#5579) (Boshen)919d17ftransform_conformance: Only print semantic mismatch errors when output is correct (#5589) (Boshen)505d064transformer: JSX transform delete references forJSXClosingElements (#5560) (overlookmotel)9b7ecc7transformer: RegExp transform only set span on final expression (#5508) (overlookmotel)d1ece19transformer: RegExp transform handleTerm::Quantifier(#5501) (overlookmotel)a1afd48transformer/react: Incorrect scope_id for var hoisted in fast refresh plugin (#5695) (Dunqing)f2f5e5atransformer/react: Missing scope_id for function in fast refresh plugin (#5693) (Dunqing)a891c31transformer/react: Refresh plugin has incorrect reference flags (#5656) (Dunqing)3e8b96ftransformer/react: The refresh plugin cannot handle member expressions with React hooks (#5655) (Dunqing)0739b5ftransformer/react: Don't transform declaration of function overloads (#5642) (Dunqing)3bf6aaftransformer/react: Supportemit_full_signaturesoption in refresh plugin (#5629) (Dunqing)36d864atransformer/react: Don't transform if the variable does not have a value reference (#5528) (Dunqing)
Performance
Documentation
9282647transformer: Comment on RegExp transform for potential improvement (#5514) (overlookmotel)
Refactor
0ac420dlinter: Use meaningful names for diagnostic parameters (#5564) (Don Isaac)ce71982transformer: Shorten code in JSX transform (#5554) (overlookmotel)758a10ctransformer: RegExp transform reuse var (#5527) (overlookmotel)fad0a05transformer: RegExp transform unbox early (#5504) (overlookmotel)
[0.27.0] - 2024-09-06
cba93f5ast: [BREAKING] AddThisExpressionvariants toJSXElementNameandJSXMemberExpressionObject(#5466) (overlookmotel)
Features
32d4bbbtransformer: AddTransformOptions::enable_allmethod (#5495) (Boshen)c59d8b3transformer: Support all /regex/ tonew RegExptransforms (#5387) (Dunqing)
Bug Fixes
8f9627dtransformer: RegExp transform do not transform invalid regexps (#5494) (overlookmotel)2060efctransformer: RegExp transform don't transform all RegExps (#5486) (overlookmotel)cfe5497transformer: Do not create double reference in JSX transform (#5414) (overlookmotel)0617249transformer/nullish-coalescing-operator: Incorrect reference flags (#5408) (Dunqing)
Performance
ed8937etransformer: Memoize rope instance (#5518) (Dunqing)bfab091transformer: Store needed options only onRegExp(#5484) (overlookmotel)b4765aftransformer: Pre-calculate if unsupported patterns in RegExp transform (#5483) (overlookmotel)182ab91transformer: Pre-calculate unsupported flags in RegExp transform (#5482) (overlookmotel)
Refactor
a96866dtransformer: Re-order imports (#5499) (overlookmotel)6abde0atransformer: Clarify match in RegExp transform (#5498) (overlookmotel)09c522atransformer: RegExp transform report pattern parsing errors (#5496) (overlookmotel)dd19823transformer: RegExp transform do not take ownership ofPatternthen reallocate it (#5492) (overlookmotel)2514cc9transformer/react: Move all entry points to implementation of Traverse trait (#5473) (Dunqing)c984219transformer/typescript: Move all entry points to implementation of Traverse trait (#5422) (Dunqing)
[0.26.0] - 2024-09-03
-
1aa49afast: [BREAKING] RemoveJSXMemberExpressionObject::Identifiervariant (#5358) (Dunqing) -
32f7300ast: [BREAKING] AddJSXElementName::IdentifierReferenceandJSXMemberExpressionObject::IdentifierReference(#5223) (Dunqing) -
23e8456traverse: [BREAKING]TraverseCtx::ancestorwith level 0 = equivalent toparent(#5294) (overlookmotel) -
582ce9etraverse: [BREAKING]TraverseCtx::ancestorreturnAncestor::Noneif out of bounds (#5286) (overlookmotel)
Features
f81e8a1linter: Addoxc/no-async-endpoint-handlers(#5364) (DonIsaac)d04857btransformer: SupportTargets::from_querymethod (#5336) (Dunqing)3d4a64ctransformer: MakeTargetspublic (#5335) (Dunqing)0eb7602transformer: SupportTransformOptions::from_preset_envAPI (#5323) (Dunqing)08dc0adtransformer: Addobject-spreadplugin (#3133) (magic-akari)01c0c3etransformer: Add remaining options to transformer options (#5169) (Boshen)056c667transformer/arrow-functions: The output that usesthisinside blocks doesn't match Babel (#5188) (Dunqing)0abfc50transformer/typescript: Supportrewrite_import_extensionsoption (#5399) (Dunqing)
Bug Fixes
35f03dbtransformer:ArrowfunctionExpression's expression is true but has more than one body statement (#5366) (Dunqing)8d6b05ctransformer: Class property with typescript value should not be removed (#5298) (Boshen)47e69a8transformer-optional-catch-binding: Theunusedbinding is not in the correct scope (#5066) (Dunqing)94ff94ctransformer/arrow-functions: Reachesunreachablewhen<this.foo>is inside an arrow function (#5356) (Dunqing)f8bb022transformer/arrow-functions: RemoveSymbolFlags::ArrowFunction(#5190) (Dunqing)d9ba5adtransformer/arrow-functions: Correct scope for_this(#5189) (Dunqing)3acb3f6transformer/react: Mismatch output caused by incorrect transformation ordering (#5255) (Dunqing)5754c89transformer/typescript: Remove accessibility fromAccessorProperty(#5292) (Dunqing)
Performance
a1523c6transformer: Remove an allocation from arrow functions transform (#5412) (overlookmotel)
Documentation
8334bd4transformer: Add documentation forTargets::get_targets(#5337) (Dunqing)d51a954transformer: Add documentation for arrow-functions plugin (#5186) (Dunqing)
Refactor
960e1d5ast: RenameIdentifierReference::new_with_reference_id(#5157) (overlookmotel)0de844dtransformer: Remove unnecessary code from JSX transform (#5339) (overlookmotel)5136f01transformer: Remove unnecessary type annotation (#5131) (overlookmotel)260c9d2transformer/es2015: Move all entry points to implementation of Traverse trait (#5187) (Dunqing)1645115transformer/object-reset-spread: Make plugin initialization unconditional (#5319) (Dunqing)d2666fetransformer/object-rest-spread: Move plugin-relates files toobject_rest_spreadmod (#5320) (Dunqing)7e2a7aftransformer/react: RemoveCalculateSignatureKeyimplementation from refresh (#5289) (Dunqing)
[0.25.0] - 2024-08-23
-
78f135dast: [BREAKING] RemoveReferenceFlagfromIdentifierReference(#5077) (Boshen) -
5f4c9absemantic: [BREAKING] RenameSymbolTable::get_flagtoget_flags(#5030) (overlookmotel) -
58bf215semantic: [BREAKING] RenameReference::flagandflag_mutmethods to plural (#5025) (overlookmotel) -
c4c08a7ast: [BREAKING] RenameIdentifierReference::reference_flagsfield (#5024) (overlookmotel) -
d262a58syntax: [BREAKING] RenameReferenceFlagtoReferenceFlags(#5023) (overlookmotel) -
c30e2e9semantic: [BREAKING]Reference::flagmethod returnReferenceFlag(#5019) (overlookmotel) -
f88970bast: [BREAKING] Change order of fields in CallExpression (#4859) (Burlin)
Features
4b49cf8transformer: Always pass in symbols and scopes (#5087) (Boshen)f51d3f9transformer/nullish-coalescing-operator: Handles nullish coalescing expression in the FormalParamter (#4975) (Dunqing)f794870transformer/nullish-coalescing-operator: Generate the correct binding name (#4974) (Dunqing)72ff2c6transformer/nullish-coalescing-operator: Add comments in top of file (#4972) (Dunqing)
Bug Fixes
6ffbd78transformer: Remove anAstBuilder::copycall from TS namespace transform (#4987) (overlookmotel)a8dfddatransformer: Remove anAstBuilder::copycall from TS module transform (#4986) (overlookmotel)1467eb3transformer: Remove anAstBuilder::copycall from TS enum transform (#4985) (overlookmotel)1365febtransformer: Remove anAstBuilder::copycall for TSAssignmentTargettransform (#4984) (overlookmotel)edacf93transformer: Remove anAstBuilder::copycall (#4983) (overlookmotel)3b35332transformer/logical-assignment-operators: Fix semantic errors (#5047) (Dunqing)
Documentation
178d1bdtransformer: Add documentation for exponentiation-operator plugin (#5084) (Dunqing)d50eb72transformer: Add documentation foroptional-catch-bindingplugin (#5064) (Dunqing)4425b17transformer: Add documentation forlogical-assignment-operatorsplugin (#5012) (Dunqing)1bd5853transformer: Updated README re: order of methods (#4993) (overlookmotel)
Refactor
cca7440ast: ReplaceAstBuilder::move_statement_vecwithmove_vec(#4988) (overlookmotel)96422b6ast: Make AstBuilder non-exhaustive (#4925) (DonIsaac)ca70cc7linter, mangler, parser, semantic, transformer, traverse, wasm: Rename variousflagvars toflags(#5028) (overlookmotel)8d15e65transformer: Useinto_member_expression(#5006) (overlookmotel)4796ecetransformer: TS annotations transform usemove_expression(#4982) (overlookmotel)a9fcf29transformer/es2016: Move all entry points to implementation of Traverse trait (#5085) (Dunqing)deda6actransformer/es2019: Move all entry points to implementation of Traverse trait (#5065) (Dunqing)9df2f80transformer/es2020: Move all entry points to implementation of Traverse trait (#4973) (Dunqing)3f9433ctransformer/es2021: Move all entry points to implementation of Traverse trait (#5013) (Dunqing)c60a50dtransformer/exponentiation-operator: Use built-inctx.clone_identifier_reference(#5086) (Dunqing)bcc8da9transformer/logical-assignment-operator: Usectx.clone_identifier_reference(#5014) (Dunqing)38d4434transformer/nullish-coalescing-operator: Move internal methods to bottom of the file (#4996) (Dunqing)
[0.24.3] - 2024-08-18
Features
d49fb16oxc_codegen: Support generate range leading comments (#4898) (IWANABETHATGUY)f1fcddetransformer: Support react fast refresh (#4587) (Dunqing)0d79122transformer: Support logical-assignment-operators plugin (#4890) (Dunqing)ab1d08ctransformer: Supportoptional-catch-bindingplugin (#4885) (Dunqing)69da9fdtransformer: Support nullish-coalescing-operator plugin (#4884) (Dunqing)3a66e58transformer: Support exponentiation operator plugin (#4876) (Dunqing)f88cbcdtransformer: AddBoundIdentifier::new_uid_in_current_scopemethod (#4903) (overlookmotel)1e6d0fetransformer: Add methods toBoundIdentifier(#4897) (overlookmotel)
Bug Fixes
2476dcetransformer: Remove anast.copyfromNullishCoalescingOperatortransform (#4913) (overlookmotel)248a757transformer/typescript: Typescript syntax withinSimpleAssignmentTargetwithMemberExpressionsis not stripped (#4920) (Dunqing)
Documentation
9c700edtransformer: Add README including style guide (#4899) (overlookmotel)
Refactor
1eb59d2ast, isolated_declarations, transformer: MarkAstBuilder::copyas an unsafe function (#4907) (overlookmotel)452187atransformer: RenameBoundIdentifier::new_uid_in_root_scope(#4902) (overlookmotel)707a01ftransformer: Re-orderBoundIdentifiermethods (#4896) (overlookmotel)117dff2transformer: Improve comments forBoundIdentifierhelper (#4895) (overlookmotel)
[0.24.2] - 2024-08-12
Bug Fixes
62f759ctransformer/typescript: Generated assignment for constructor arguments with access modifiers should be injected to the top of the constructor (#4808) (Dunqing)
[0.24.0] - 2024-08-08
-
75f2207traverse: [BREAKING] Replacefind_scopewithancestor_scopesreturning iterator (#4693) (overlookmotel) -
506709ftraverse: [BREAKING] Replacefind_ancestorwithancestorsreturning iterator (#4692) (overlookmotel)
Bug Fixes
4797eaatransformer: Strip TS statements from for in/of statement bodies (#4686) (overlookmotel)5327acdtransformer/react: TherequireIdentifierReference does not have areference_id(#4658) (Dunqing)3987665transformer/typescript: Incorrect enum-relatedsymbol_id/reference_id(#4660) (Dunqing)4efd54btransformer/typescript: IncorrectSymbolFlagsfor jsx imports (#4549) (Dunqing)
Refactor
83546d3traverse: Enter node before entering scope (#4684) (overlookmotel)
[0.23.1] - 2024-08-06
Bug Fixes
5327acdtransformer/react: TherequireIdentifierReference does not have areference_id(#4658) (Dunqing)3987665transformer/typescript: Incorrect enum-relatedsymbol_id/reference_id(#4660) (Dunqing)4efd54btransformer/typescript: IncorrectSymbolFlagsfor jsx imports (#4549) (Dunqing)
[0.23.0] - 2024-08-01
Bug Fixes
d5c4b19parser: Fix enum member parsing (#4543) (DonIsaac)
Refactor
96602bftransformer/typescript: Determine whether to removeExportSpeiciferbyReferenceFlags(#4513) (Dunqing)
[0.22.1] - 2024-07-27
Bug Fixes
c04b9aatransformer: Add toSymbolTable::declarationsfor all symbols (#4460) (overlookmotel)ecdee88transformer/typescript: Incorrect eliminate exports when the referenced symbol is both value and type (#4507) (Dunqing)
Refactor
f17254asemantic: Populatedeclarationsfield inSymbolTable::create_symbol(#4461) (overlookmotel)
[0.22.0] - 2024-07-23
85a7ceasemantic: [BREAKING] Remove name fromreference(#4329) (Dunqing)
Refactor
[0.21.0] - 2024-07-18
Features
7eb960dtransformer: Decode xml character entity&#xhhhhand&#nnnn;(#4235) (Boshen)
Refactor
a197e01transformer/typescript: Remove unnecessary code (#4321) (Dunqing)
[0.20.0] - 2024-07-11
5731e39ast: [BREAKING] Store span details inside comment struct (#4132) (Luca Bruno)
Bug Fixes
48947a2ast: Putdecoratorsbefore everything else. (#4143) (rzvxa)
Refactor
[0.19.0] - 2024-07-09
b936162ast/ast_builder: [BREAKING] Shorter allocator utility method names. (#4122) (rzvxa)
Refactor
[0.18.0] - 2024-07-09
d347aedast: [BREAKING] Generateast_builder.rs. (#3890) (rzvxa)
Features
[0.17.2] - 2024-07-08
Bug Fixes
4413e2dtransformer: Missing initializer for readonly consructor properties (#4103) (Don Isaac)
[0.17.0] - 2024-07-05
Bug Fixes
aaac2d8codegen: Preserve parentheses from AST instead calculating from operator precedence (#4055) (Boshen)
[0.16.3] - 2024-07-02
Bug Fixes
bdee156transformer/typescript:declare classincorrectly preserved as runtime class (#3997) (Dunqing)a50ce3dtransformer/typescript: Missing initializer for class constructor arguments withprivateandprotectedmodifier (#3996) (Dunqing)
[0.16.2] - 2024-06-30
Performance
1eac3d2semantic: UseAtom<'a>forReferences (#3972) (Don Isaac)
Refactor
5845057transformer: Pass in symbols and scopes (#3978) (Boshen)
[0.16.1] - 2024-06-29
Refactor
2705df9linter: Improve diagnostic labeling (#3960) (DonIsaac)
[0.16.0] - 2024-06-26
-
1f85f1aast: [BREAKING] Revert addingspanfield to theBindingPatterntype. (#3899) (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
5501d5ctransformer/typescript: Transformimport {} from "mod"to import"mod"(#3866) (Dunqing)
Bug Fixes
08fcfb3transformer: Fix spans and scopes in TS enum transform (#3911) (overlookmotel)17ad8f7transformer: Create new scopes for new blocks in TS transform (#3908) (overlookmotel)d76f34btransformer: TODO comments for missing scopes (#3837) (overlookmotel)e470731transformer: TS transform handle when type exports first (#3833) (overlookmotel)d774e54transformer: TS transform generate do not copy statements (#3832) (overlookmotel)ff1da27transformer: Correct comment in example (#3831) (overlookmotel)6dcc3f4transformer: Fix TS annotation transform scopes (#3816) (overlookmotel)aea3e9atransformer: Correct spans for TS annotations transform (#3782) (overlookmotel)
Performance
4f7ff7eDo not pass&Atomto functions (#3818) (overlookmotel)
Refactor
363d3d5ast: Add span field to theBindingPatterntype. (#3855) (rzvxa)5ef28b7transformer: Shorten code (#3912) (overlookmotel)d9f268dtransformer: Shorten TS transform code (#3836) (overlookmotel)21b0d01transformer: Pass ref to function (#3781) (overlookmotel)7c44703transformer: Remove needlesspubon TS enum transform methods (#3774) (overlookmotel)22c56d7transformer: Move TSImportEqualsDeclaration transform code (#3764) (overlookmotel)cd56aa9transformer: Simplify TS export assignment transform (#3762) (overlookmotel)512740dtransformer: Move and simplify TS enum transform entry point (#3760) (overlookmotel)
[0.15.0] - 2024-06-18
5c38a0fcodegen: [BREAKING] New code gen API (#3740) (Boshen)
Features
750a534coverage: Transformer idempotency test (#3691) (Boshen)4f2db46transformer-dts:--isolatedDeclarationsdts transform (#3664) (Dunqing)
Bug Fixes
59666e0transformer: Do not rename accessible identifier references (#3623) (Dunqing)
[0.14.0] - 2024-06-12
Bug Fixes
35e267btransformer: Arrow function transform use UIDs for_thisvars (#3634) (overlookmotel)39bdebctransformer: Arrow func transform maintain scope ID (#3633) (overlookmotel)5cb7e6atransformer: Arrow func transform use correct spans (#3630) (overlookmotel)0c4ccb4transformer: Arrow function transform alter</this>(#3627) (overlookmotel)8d237c4transformer: JSX source calculate correct column when Unicode chars (#3615) (overlookmotel)9e8f4d6transformer: Do not add__sourcefor generated nodes (#3614) (overlookmotel)0fb4c35transformer: Use UID for JSX source filename var (#3612) (overlookmotel)
Performance
3a59294transformer: React display name transform reduce Atom allocations (#3616) (overlookmotel)f4c1389transformer: CreateVecwith capacity (#3613) (overlookmotel)
Refactor
08f1010ast: MakeAstBuilderCopy(#3602) (overlookmotel)89bcbd5transformer: MoveBoundIdentifierinto helpers (#3610) (overlookmotel)5793ff1transformer: Replace&’a TriviaswithRc<Trivias>(#3580) (Dunqing)509871ftransformer: Comment for unimplementedspecoption in arrow fns transform (#3618) (overlookmotel)4b2e3a7transformer: Fix indentation (#3617) (overlookmotel)3467e3dtransformer: Remove outdated comment (#3606) (overlookmotel)a799225transformer: Flatten file structure for React transform (#3604) (overlookmotel)70f31a8transformer: Reduce branching in JSX transform (#3596) (overlookmotel)3ae567dtransformer: Remove dead code (#3588) (overlookmotel)60cbdectraverse:generate_uid_in_root_scopemethod (#3611) (overlookmotel)
[0.13.4] - 2024-06-07
Features
646b993coverage/transformer: Handle @jsx option (#3553) (Dunqing)a939dddtransformer/typescript: Remove more typescript ast nodes (#3563) (Dunqing)e8a20f8transformer/typescript: Remove typescript ast nodes (#3559) (Dunqing)ee9a215transformer/typescript: Handle namespace directive correctly (#3532) (Dunqing)
Bug Fixes
f6939cbtransformer: Storereact_importerinBindingsin JSX transform (#3551) (overlookmotel)7982b93transformer: Correct spans for JSX transform (#3549) (overlookmotel)c00598btransformer: JSX setreference_idon refs to imports (#3524) (overlookmotel)
Performance
37cdc13transformer: Faster checks if JSX plugin enabled (#3577) (overlookmotel)9f467b8transformer: Avoid fragment update where possible (#3535) (overlookmotel)ac394f0transformer: JSX parse pragma only once (#3534) (overlookmotel)
Refactor
f2113aetransformer: Reduce cloning and referencingRcs (#3576) (overlookmotel)0948124transformer: PassRcs by value (#3550) (overlookmotel)e4d74actransformer: Removeupdate_fragmentfrom JSX transform (#3541) (overlookmotel)73b7864transformer: Combine import and usage in JSX transform (#3540) (overlookmotel)6978269transformer/typescript: Replace reference collector with symbols references (#3533) (Dunqing)
[0.13.3] - 2024-06-04
Bug Fixes
591c54btransformer: JSX setsymbol_idon imports (#3523) (overlookmotel)837776etransformer: TS namespace transform do not track var decl names (#3501) (overlookmotel)8d2befftransformer: Use correct scope for TS namespaces (#3489) (overlookmotel)8e4f335transformer: Output empty file for TS definition files (#3500) (overlookmotel)
Performance
91519d9transformer: React JSX reduce allocations (#3522) (overlookmotel)f3a755ctransformer: React JSX reuse sameAtoms (#3521) (overlookmotel)
Refactor
7bbd3datraverse:generate_uidreturnSymbolId(#3520) (overlookmotel)
[0.13.2] - 2024-06-03
Features
0cdb45aoxc_codegen: Preserve annotate comment (#3465) (IWANABETHATGUY)574629etasks/coverage: Turn on idempotency testing for transformer (#3470) (Dunqing)816a782transformer: Supporttargetsoption of preset-env (#3371) (Dunqing)92df98btransformer/typescript: Report error that do not allow namespaces (#3448) (Dunqing)a6b073atransformer/typescript: Report error for namespace exporting non-const (#3447) (Dunqing)150255ctransformer/typescript: If within a block scope, use let to declare enum name (#3446) (Dunqing)e80552ctransformer/typescript: If binding exists, variable declarations are not created for namespace name (#3445) (Dunqing)241e8d1transformer/typescript: If the binding exists, the identifier reference is not renamed (#3387) (Dunqing)
Bug Fixes
90b0f6dtransformer: Use UIDs for React imports (#3431) (overlookmotel)d4371e8transformer: Use UIDs in TS namespace transforms (#3395) (overlookmotel)baed1catransformer/jsx-source: Add filename statement only after inserting the source object (#3469) (Dunqing)b4fd1adtransformer/typescript: Variable declarations are not created when a function has a binding with the same name (#3460) (Dunqing)
Refactor
55bbde2ast: Move scope fromTSModuleBlocktoTSModuleDeclaration(#3488) (overlookmotel)84fecebtransformer: Explicit skip TS statements in TS namespace transform (#3479) (overlookmotel)7f7b5eatransformer: Shorter code in TS namespace transform (#3478) (overlookmotel)7e7b452transformer: Panic on illegal cases in TS namespace transform (#3477) (overlookmotel)8e089a9transformer: Rename var (#3476) (overlookmotel)0f69ffdtransformer: Shorten code in TS namespace transform (#3468) (overlookmotel)deef86atransformer: Remove unreachable code from TS namespace transform (#3475) (overlookmotel)9dc58d5transformer/typescript: Use a memory-safe implementation instead (#3481) (Dunqing)1a50b86typescript/namespace: Reuse TSModuleBlock's scope id (#3459) (Dunqing)
[0.13.1] - 2024-05-22
Features
e2c6fe0transformer: Report errors when options have unknown fields (#3322) (Dunqing)9ee962atransformer: Supportfrom_babel_optionsin TransformOptions (#3301) (Dunqing)b9d69adtransformer: Do not add self attribute in react/jsx plugin (#3287) (Dunqing)421107atraverse: Pass&mut TraverseCtxto visitors (#3312) (overlookmotel)
Bug Fixes
b4fa27atransformer: Do no add __self when the jsx is inside constructor (#3258) (Dunqing)
Refactor
c9d84afdiagnostics: S/warning/warn (Boshen)e7a6595transformer: Correct spelling of var name (#3369) (overlookmotel)dad47a5transformer: Improve indentation (#3282) (overlookmotel)05c71d2traverse:Traverseproduce scopes tree usingSemantic(#3304) (overlookmotel)
[0.13.0] - 2024-05-14
Features
f1ccbd4syntax: AddToInt32trait for f64 (#3132) (Boshen)870d11fsyntax: AddToJsStringtrait for f64 (#3131) (Boshen)34dd53ctransformer: Report ambient module cannot be nested error (#3253) (Dunqing)1b29e63transformer: Do not elide jsx imports if a jsx element appears somewhere (#3237) (Dunqing)905ee3ftransformer: Add arrow-functions plugin (#3083) (Dunqing)78875b7transformer: Implement typescript namespace (#3025) (Boshen)a52e321transformer/jsx-source: Get the correct lineNumber and columnNumber from the span. (#3142) (Dunqing)18d853btransformer/react: Support development mode (#3143) (Dunqing)be8fabetransformer/react: Enable jsx plugin when development is true (#3141) (Dunqing)
Bug Fixes
9590eb0transform: Implementtransform-react-display-namewith bottom-up lookup (#3183) (overlookmotel)6ac8a84transformer: Correctly jsx-self inside arrow-function (#3224) (Dunqing)b589496transformer/arrow-functions: Should not transformthisin class (#3129) (Dunqing)
Refactor
7e1fe36ast: Squash nested enums (#3115) (overlookmotel)a8af5desyntax: Move number related functions to number module (#3130) (Boshen)be958cetransform: Transformer useTraverse(#3182) (overlookmotel)7067f9ctransformer: Clean up more diagnostics (Boshen)d351f2dtransformer: Unify diagnostics (Boshen)9525653transformer: Remove no-op scopes code (#3210) (overlookmotel)a63a45dtransformer: Remove the requirement ofSemantic(#3140) (Boshen)843318ctransformer/typescript: Reimplementation of Enum conversion based on Babel (#3102) (Dunqing)-d8173e1Remove all usages ofInto<Error>(Boshen)
[0.12.5] - 2024-04-22
Performance
6c82961ast: Box typescript enum variants. (#3065) (Ali Rezvani)48e2088ast: Box enum variants (#3058) (overlookmotel)383b449ast: BoxImportDeclarationSpecifierenum variants (#3061) (overlookmotel)
[0.12.4] - 2024-04-19
Features
b6b63actransform_conformance: Skip tests with plugin.js (#2978) (Boshen)ef602aftransform_conformance: Skip plugins we don't support yet (#2967) (Boshen)85a3653transformer: Add "_jsxFileName" variable in jsx source plugin (#3000) (Boshen)e43c245transformer: Add import helpers to manage module imports (#2996) (Boshen)c211f1etransformer: Add diagnostics to react transform (#2974) (Boshen)3a6eae1transformer: Apply jsx self and source plugin inside jsx transform (#2966) (Boshen)bd9fc6dtransformer: React jsx transform (#2961) (Boshen)e673550transformer: Start on TypeScript annotation removal (#2951) (Miles Johnson)e651e50transformer: Add the most basic plugin toggles (#2950) (Boshen)1475477transformer: Implement react-jsx-source (#2948) (Boshen)f903a22transformer: Implement react-jsx-self (#2946) (Boshen)0c04bf7transformer: Transform TypeScript namespace (#2942) (Boshen)3419306transformer: Add filename (#2941) (Boshen)b72bdcatransformer/react: Reports duplicate __self/__source prop error (#3009) (Dunqing)3831147transformer/typescript: Report error for export = (#3021) (Dunqing)7416de2transformer/typescript: Reports error for import lib = require(...); (#3020) (Dunqing)e14ac17transformer/typescript: Insert this assignment after the super call (#3018) (Dunqing)afb1dd4transformer/typescript: Support for transform TSImportEqualsDeclaration (#2998) (Dunqing)6732e8btransformer/typescript: Support for transform enum (#2997) (Dunqing)6a53fa3transformer/typescript: Correct elide imports/exports statements (#2995) (Dunqing)
Bug Fixes
722d4c2transformer:TypeScriptOptionsdeserialize should fallback to default (#3012) (Boshen)6704546transformer: Reactdevelopmentdefault value should be false (#3002) (Boshen)c7e70c8transformer: Deserialize ReactJsxRuntime with camelCase (#2972) (Boshen)10814d5transformer: Turn on react preset by default (#2968) (Boshen)35e3b0ftransformer: Fix incorrect jsx whitespace text handling (#2969) (Boshen)99e038ctransformer/typescript: Modifiers should not be removed (#3005) (Dunqing)
Refactor
82e00bctransformer: Remove boilerplate code around decorators to reduce noise (#2991) (Boshen)60ccbb1transformer: Clean up some code (#2949) (Boshen)
[0.12.3] - 2024-04-11
Features
02adc76transformer: Implement plugin-transform-react-display-name top-down (#2937) (Boshen)255c74ctransformer: Add transform context to all plugins (#2931) (Boshen)79ca6fetransformer: Add transform callback methods (#2929) (Boshen)d65eab3transformer: Add react preset (#2921) (Boshen)
[0.12.1] - 2024-04-03
Features
7710d8ctransformer: Add compiler assumptions (#2872) (Boshen)7034bcctransformer: Add proposal-decorators (#2868) (Boshen)ffadcb0transformer: Add react plugins (#2867) (Boshen)293b9f4transformer: Addtransform-typescriptboilerplate (#2866) (Boshen)
Bug Fixes
21a5e44transformer: Add serde "derive" feature to fix compile error (Boshen)
[0.11.0] - 2024-03-30
Features
243131dtransformer: Numeric separator plugin. (#2795) (Ali Rezvani)56493bdtransformer: Add transform literal for numeric literals. (#2797) (Ali Rezvani)398a034transformer/typescript: Removeverbatim_module_syntaxoption (#2796) (Dunqing)
Bug Fixes
b76b02dparser: Add support for empty module declaration (#2834) (Ali Rezvani)528744ctransformer: Optional-catch-binding unused variable side effect (#2822) (Ali Rezvani)
Refactor
fc38783ast: Add walk_mut functions (#2776) (Ali Rezvani)813226bast: Get rid of unsafe transmutation in VisitMut trait. (#2764) (Ali Rezvani)d9b77d8sourcemap: Change sourcemap name to take a reference (#2779) (underfin)fe12617transformer: Pass options via context. (#2794) (Ali Rezvani)
[0.10.0] - 2024-03-14
Features
4f9dd98span: RemoveFrom<String>andFrom<Cow>API because they create memory leak (#2628) (Boshen)308b780transformer/decorators: Handling the coexistence of class decorators and member decorators (#2636) (Dunqing)
Bug Fixes
2a235d3ast: Parsewith_clausein re-export declaration (#2634) (magic-akari)
Refactor
0f86333ast: RefactorTriviasAPI - have less noise around it (#2692) (Boshen)-0646bf3RenameCompactStringtoCompactStr(#2619) (overlookmotel)
[0.9.0] - 2024-03-05
Features
3efbbb2ast: Add "abstract" type toMethodDefinitionandPropertyDefinition(#2536) (Boshen)f760108transformer: Call build module record (#2529) (Dunqing)6d43e85transformer/typescript: Support transform constructor method (#2551) (Dunqing)
Bug Fixes
258b9b1ast: Support FormalParameter.override (#2577) (Arnaud Barré)7a12514transformer/decorators: Missing check private function (#2607) (Dunqing)
Refactor
ef932a3codegen: Clean up API around building sourcemaps (#2602) (Boshen)2c2256atransformer/typescript: Improve implementation of remove import/export (#2530) (Dunqing)
[0.8.0] - 2024-02-26
Features
70295a5ast: Update arrow_expression to arrow_function_expression (#2496) (Dunqing)e6d536ccodegen: Configurable typescript codegen (#2443) (Andrew McClenaghan)cd75c1ctransformer/decorators: Insert only one private in expression (#2486) (Dunqing)3d008abtransformer/decorators: Insert instanceBrand function (#2480) (Dunqing)2628c97transformer/decorators: Transform getter function (#2473) (Dunqing)
Refactor
540f917ast: RemoveTSEnumBody(#2509) (Boshen)d08abc6ast: S/NumberLiteral/NumericLiteral to align with estree (Boshen)e6b391aast: S/ArrowExpression/ArrowFunctionExpression to align estree (Boshen)27b2c21transformer/decorators: If it is a private method definition, transform it (#2427) (Dunqing)4b11183transformer/decorators: Move get_decorator_info inside the decorators (#2426) (Dunqing)
[0.6.0] - 2024-02-03
Features
2578bb3ast: Remove generator property from ArrowFunction (#2260) (Dunqing)165f948ast: Remove expression property from Function (#2247) (Dunqing)9e598fftransformer: Add decorators plugin (#2139) (Dunqing)02c18d8transformer/decorators: Support for static and private member decorators (#2246) (Dunqing)ba85b09transformer/decorators: Support method decorator and is not static (#2238) (Dunqing)a79988dtransformer/decorators: Support static member (#2235) (Dunqing)3b85e18transformer/decorators: Ensure property key consistency (#2233) (Dunqing)e5719e9transformer/decorators: Support transform member decorators (#2171) (Dunqing)7f89bfetransformer/decorators: Support version 2023-05 (#2152) (Dunqing)04b401ctransformer/decorators: Support transform the class decorators in export declaration (#2145) (Dunqing)b5b2ef3transformer/typescript: Improve function parameters name (#2079) (Dunqing)7711f7atransformer/typescript: Support only_remove_type_imports option (#2077) (Dunqing)f5bf5detransformer/typescript: Support transform exported TSModuleBlock (#2076) (Dunqing)56ca8b6transformer/typescript: Support transform namespace (#2075) (Dunqing)b89e84ctransformer/typescript: Keep imports if import specifiers is empty (#2058) (Dunqing)3413bb3transformer/typescript: Remove type-related exports (#2056) (Dunqing)95d741atransformer/typescript: Remove type only imports/exports correctly (#2055) (Dunqing)6c7f983transformer/typescript: Remove export specifier that import_kind is type (#2015) (Dunqing)ead4e8dtransformer/typescript: Remove import if only have type reference (#2001) (Dunqing)2794064transfrom: Transform-json-strings (#2168) (underfin)
Bug Fixes
777352etransformer: Always create valid identifiers (#2131) (overlookmotel)
Refactor
b261e86ast: Improve simple_assignment_target_identifier and simple_assignment_target_member_expression method (#2153) (Dunqing)ee949fctransformer: Useis_identifier_part(overlookmotel)040ee19transformer: Useis_identifier_namefromoxc_syntax(overlookmotel)de6d2f5transformer/decorators: Optimizing code with ast.private_field (#2249) (Dunqing)51cecbbtransformer/decorators: Align the implementation of all versions (#2159) (Dunqing)2e78b91transformer/typescript: Move the ExportNamedDeclaration logic to its function (#2074) (Dunqing)
[0.5.0] - 2024-01-12
Features
78b427btransform: Support es2015 new target (#1967) (underfin)6a7e4betransformer: Call enter_node/leave_node in visit_xxx (#1990) (Dunqing)afb2c50transformer: Support for transform TSImportEqualsDeclaration (#1994) (Dunqing)ae27a8dtransformer: Add partial support for babel-plugin-transform-instanceof (#1802) (秦宇航)f58b627transformer: Add arrow_functions plugin (#1663) (Dunqing)e331cc2transformer: Duplicate keys (#1649) (Ken-HH24)864176atransformer/react-jsx: Returns ThisExpression when identifier is this (#1661) (Dunqing)
Refactor
a2858edast: IntroduceThisParameter(#1728) (magic-akari)
[0.4.0] - 2023-12-08
Features
c6ad660semantic: Support scope descendents starting from a certain scope. (#1629) (Miles Johnson)92c1d9dtransform: TypeScript Enum (#1173) (magic-akari)6cbc5ddtransformer: Start onfunction_nametransform. (#1510) (Miles Johnson)c034eeetransformer: Handle invalid react jsx runtime (#1502) (IWANABETHATGUY)f66e4d8transformer: Add transform property-literal plugin (#1458) (IWANABETHATGUY)f0e452atransformer: Support importSource option in react_jsx (#1115) (Dunqing)b6393f0transformer/react: Handle babel 8 breaking removed-options (#1489) (IWANABETHATGUY)7f01d48transformer/react-jsx: Setautomaticto the default value forruntime(#1270) (Dunqing)1eef241transformer/react-jsx: Support for throwing SpreadChildrenAreNotSupported error (#1234) (Dunqing)39e6087transformer/react-jsx: Support for throwing ImportSourceCannotBeSet error (#1224) (Dunqing)b7e8febtransformer/react-jsx: Support throw valueless-key error (#1221) (Dunqing)a22ced7transformer/react-jsx: ImplementthrowIfNamespaceoption (#1220) (Dunqing)d9b4504transformer/react-jsx: When the source type is a script, use require to import the react (#1207) (Dunqing)8c624abtransformer/react-jsx: Throw thepragma and pragmaFrag cannot be set when runtime is automaticerror (#1196) (Dunqing)7d85492transformer/react-jsx: Support thesourceTypeis ascript(#1192) (Dunqing)28c0b85transformer/react-jsx: Support@jsxFragannotation (#1189) (Dunqing)633c469transformer/react-jsx: Support@jsxannotation (#1182) (Dunqing)3cb7c0btransformer/react-jsx: SupportpragmaFragoption (#1181) (Dunqing)4ed0813transformer/react-jsx: Supportpragmaoption (#1180) (Dunqing)bf23d87transformer/react-jsx: Support@jsxImportSourceannotation (#1179) (Dunqing)
Bug Fixes
4824236transformer/react-jsx: Missing import jsxs in nested fragment (#1218) (Dunqing)a0f40cbtransformer/react-jsx: Missing default options when plugin without config (#1219) (Dunqing)3e15fa6transformer/react-jsx: Undetectable comments in multiline comments (#1211) (Dunqing)b65094btransformer/react-jsx: No need to wrap the Array when there is only one correct child element (#1205) (Dunqing)
Refactor
1a576f6rust: Move to workspace lint table (#1444) (Boshen)d62631etransformer/react-jsx: Use extend instead of for-in with push (#1236) (Dunqing)47ba874transformer/react-jsx: Improve SpreadChildrenAreNotSupported error implementation (#1235) (Dunqing)
[0.3.0] - 2023-11-06
Features
e0ca09bcodegen: Implement the basics of non-minifying codegen (#987) (Boshen)2e2b758playground: Add transform and minify (#993) (Boshen)f60fd65transfomer: Implement react has_key_after_props_spread (#1075) (Boshen)f71cb9ftransform: Support TemplateLiteral of babel/plugin-transform-template-literals (#1132) (Wenzhe Wang)b5bfc36transform: Transform jsx element name (#1070) (Wenzhe Wang)09df8e6transform: Sticky-regex (#968) (Wenzhe Wang)ce79bc1transform_conformance: Move Formatter to codegen (#986) (Boshen)46d2623transform_conformance: Add jsx and ts tests (Boshen)e8a4e81transformer: Implement some of jsx decode entities (#1086) (Boshen)0856111transformer: Implement more of react transform attributes (#1081) (Boshen)96332c8transformer: Import jsxs when children is static (#1080) (Boshen)d411258transformer: Finish transform jsx attribute value (#1078) (Boshen)5fb27fbtransformer: Implement key extraction for react automatic (#1077) (Boshen)394ed35transformer: Implement react get_attribute_name (#1076) (Boshen)d6ba891transformer: Add propsnullto React.createElement (#1074) (Boshen)e16e7e4transformer: Implement react transform attributes (#1071) (Boshen)d8f1a7ftransformer: Start implementing react jsx transform (#1057) (Boshen)1b64e48transformer: Strip implicit type import for typescript (#1058) (magic-akari)af1a76btransformer: Implement some of needs_explicit_esm for typescript (#1047) (Boshen)d31a667transformer: Dropthisparameter from typescript functions (#1019) (Boshen)dfee853transformer: Add utils to make logical_assignment_operators pass (#1017) (Boshen)678db1dtransformer: ES2020 Nullish Coalescing Operator (#1004) (Boshen)c060621transformer: Add unit tests and test coverage (#1001) (Boshen)0f72066transformer: Finish 2016 exponentiation operator (#996) (Boshen)dc08c94transformer: RegexpFlags (#977) (magic-akari)9ad2634transformer: Class Static Block (#962) (magic-akari)21066a9transformer: Shorthand Properties (#960) (magic-akari)5973e5atransformer: Setup typescript and react transformers (#930) (Boshen)5863f8ftransformer: Logical assignment operators (#923) (Boshen)f4cea34transformer: Add babel conformance test suite (#920) (Boshen)419d5aatransformer: Transformer prototype (#918) (Boshen)1051f15transformer/jsx: Escape xhtml in jsx attributes (#1088) (Boshen)203cf37transformer/react: Read comment pragma @jsxRuntime classic / automatic (#1133) (Boshen)262631dtransformer/react: Implement fixup_whitespace_and_decode_entities (#1091) (Boshen)1b3b100transformer_conformance: Read plugins options from babeloptions.json(#1006) (Boshen)
Bug Fixes
6295f9cast: Jsx attribute value and text child should be jsx string (#1089) (Boshen)a455c81linter: Revert changes to JSX attribute strings (#1101) (Boshen)fe4a5edtransformer: Fix position of inserted react import statement (#1082) (Boshen)1ad2dcatransformer/react_jsx: Add imports to the top body (#1087) (Boshen)
Refactor
4787220ast: Clean up some methods (Boshen)903854dast: Fix the lifetime annotations around Vist and VisitMut (#973) (Boshen)70189f9ast: Change the arguments order for somenewfunctions (Boshen)801d78aminifier: Make the minifier api only accept an ast (#990) (Boshen)052661dtransform_conformance: Improve report format (Boshen)69150d8transformer: Move Semantic into Transformer (#1130) (Boshen)c7a04f4transformer: Remove returning None from transform functions (#1079) (Boshen)d9ba532transformer: Add an empty SPAN utility for creating AST nodes (#1067) (Boshen)46a5c42transformer: Add TransformerCtx struct for easier access to symbols and scopes (Boshen)1e1050ftransformer: Clean up the transformer constructor code (Boshen)