UNPKG

9.36 kBMarkdownView Raw
1# 3.10.1 (2019-03-31)
2
3* Fix parsing of `a<b>c` in TypeScript. ([#438])
4* Add support for new TypeScript 3.4 syntax, other parser improvements. ([#439], [#440])
5* Elide TS `import =` statements that are only used as a type ([#441])
6* Properly handle async arrow functions with multiline type parameters ([#443])
7
8# 3.10.0 (2019-03-11)
9
10* Fix bug where `/*/` was being parsed incorrectly. ([#430])
11* Properly parse and compile JSX spread children. ([#431])
12* Implement TypeScript export elision for exported types. ([#433])
13
14# 3.9.6 (2019-03-01)
15
16* Fix Flow bug where `implements` caused the class name to be incorrectly recognized. ([#409])
17* Correctly handle `!:` in TS variable declarations. ([#410])
18* Move more import code into helper functions in prep for some upcoming changes.
19* Fix bug where some JSX component names were incorrectly turned into strings. ([#425]) (Yang Zhang)
20
21# 3.9.5 (2019-01-13)
22
23* Fix bug when processing a declaration that looks like an export assignment. ([#402])
24* Fix TS import elision for JSX fragments and custom pragmas. ([#403])
25* Treat reserved words as invalid identifiers when handling enums. ([#405])
26
27# 3.9.4 (2019-01-07)
28
29* Avoid false positive when detecting if a class has a superclass. ([#399])
30
31# 3.9.3 (2019-01-06)
32
33* Fix syntax error on arrow functions with multiline return types. ([#393])
34
35# 3.9.2 (2019-01-02)
36
37* Fix crash on optional arrow function params without type annotations. ([#389])
38* Usability bug fixes for website. ([#390])
39
40# 3.9.1 (2018-12-31)
41
42* Fix react-hot-loader transform syntax error with some export styles. ([#384])
43* Fix website to properly show react-hot-loader Babel transform output. ([#386])
44
45# 3.9.0 (2018-12-30)
46
47* Add a react-hot-loader transform. ([#376])
48* Add support for dynamic `import()` syntax in TS types. ([#380])
49* Many improvements to the website, including faster initial pageloads.
50* Small performance improvements.
51
52# 3.8.1 (2018-12-03)
53
54* Fix infinite loop when a file ends with a short identifier ([#363])
55* Small perf improvements.
56
57# 3.8.0 (2018-11-25)
58
59* Various simplifications in prep for compiling the project with AssemblyScript.
60* Performance improvements, varying from 10% to 70% better performance depending
61 on use case.
62* Fix infinite loop in flow `declare module` parsing ([#359])
63
64# 3.7.1 (2018-11-18)
65
66* Fix crash on empty export expressions ([#338])
67* Fix crash on TypeScript `declare global` ([#339])
68* Fix crash when using overloaded constructors in TypeScript ([#340])
69* Fix TypeScript import elision when imported names are shadowed by variables
70 ([#342])
71* Fix import name transform to work in code without semicolons ([#337])
72 (Alec Larson)
73
74# 3.7.0 (2018-11-11)
75
76* Fix perf regression in TypeScript parsing ([#327])
77* Fix broken line numbers in syntax errors, improve parser backtracking
78 performance ([#331])
79* Add Parser features and bugfixes from the Babel parser, including TypeScript
80 3.0 support ([#333])
81
82# 3.6.0 (2018-10-29)
83
84* Add CLI support for jsx pragmas ([#321]) (Josiah Savary)
85* Allow super.method() calls in constructor ([#324]) (Erik Arvidsson)
86
87# 3.5.0 (2018-09-30)
88
89* Change class field implementation to use initializer methods ([#313])
90* Update TypeScript and Flow support to include new language features recently
91 supported by Babel. ([#314], [#315], [#316])
92* Properly handle function name inference in named exports ([#317])
93
94# 3.4.2 (2018-08-27)
95
96* Implement destructuring in export declarations ([#305])
97* Properly handle function name inference in named exports ([#308])
98
99# 3.4.1 (2018-07-06)
100
101* Quote shorthand prop keys that contain a hyphen ([#292]) (Kevin Gao)
102* Fix infinite loop on incomplete JSX. ([#296])
103
104# 3.4.0 (2018-07-01)
105
106* Add a sucrase-node CLI that wraps node. ([#288])
107* Allow exported generator functions. ([#290])
108
109# 3.3.0 (2018-06-28)
110
111* Add a --out-extension option to the CLI. ([#282])
112* Add a -q/--quiet option in the CLI and use it in the build script. ([#284])
113* Don't emit semicolons in class bodies. ([#285])
114* Fix ugly emitted comments when removing code between tokens. ([#286])
115
116# 3.2.1 (2018-06-27)
117
118* Allow TS type parameters on object member methods. ([#276])
119* Simplify identity source map generator. ([#265])
120* Fix crash on destructured params in arrow function types. ([#278])
121* Remove @flow directives from comments when the flow transform is enabled.
122 ([#279])
123
124# 3.2.0 (2018-06-25)
125
126* Fix crash when using JSX elements as props. ([#268]) (Erik Arvidsson)
127* Fix incorrect compilation of TypeScript optional class properties with an
128 initializer. ([#264])
129* Fix crash on class fields that don't end in a semicolon. ([#271])
130* Allow trailing commas after rest elements. ([#272])
131* Don't crash on class bodies with an index signature. ([#273])
132* Allow member expression identifiers when determining React displayName.
133 ([#274])
134* Add production option and use it for JSX. ([#270]) (Erik Arvidsson)
135* Fix off-by-one error in parsing JSX fragments. ([#275])
136
137# 3.1.0 (2018-06-18)
138
139* Add basic support for source maps ([#257], [#261])
140
141# 3.0.1 (2018-06-11)
142
143* Fix crash in `getVersion`.
144
145# 3.0.0 (2018-06-10)
146
147### Breaking Changes
148
149* `transform` now returns an object ([#244]). You now should write
150 `transform(...).code` instead of just `transform(...)`. `code` is the only
151 property for now, but this allows Sucrase to return source maps and possibly
152 other values.
153* The package's `dist` folder has been restructured, so direct internal module
154 imports may break.
155
156### Other changes
157
158* Overhaul build system to use Sucrase for everything ([#243])
159* Omit import helpers when unused ([#237]) (Alec Larson)
160* Fix files accidentally included in final package ([#233])
161* Various refactors and performance improvements.
162
163# 2.2.0 (2018-05-19)
164
165* Add support for JSX fragment syntax.
166* Add support for custom JSX pragmas rather than defaulting to
167 `React.createElement` and `React.Fragment`.
168
169[#233]: https://github.com/alangpierce/sucrase/pull/233
170[#237]: https://github.com/alangpierce/sucrase/pull/237
171[#243]: https://github.com/alangpierce/sucrase/pull/243
172[#244]: https://github.com/alangpierce/sucrase/pull/244
173[#257]: https://github.com/alangpierce/sucrase/pull/257
174[#261]: https://github.com/alangpierce/sucrase/pull/261
175[#264]: https://github.com/alangpierce/sucrase/pull/264
176[#265]: https://github.com/alangpierce/sucrase/pull/265
177[#268]: https://github.com/alangpierce/sucrase/pull/268
178[#270]: https://github.com/alangpierce/sucrase/pull/270
179[#271]: https://github.com/alangpierce/sucrase/pull/271
180[#272]: https://github.com/alangpierce/sucrase/pull/272
181[#273]: https://github.com/alangpierce/sucrase/pull/273
182[#274]: https://github.com/alangpierce/sucrase/pull/274
183[#275]: https://github.com/alangpierce/sucrase/pull/275
184[#276]: https://github.com/alangpierce/sucrase/pull/276
185[#278]: https://github.com/alangpierce/sucrase/pull/278
186[#279]: https://github.com/alangpierce/sucrase/pull/279
187[#282]: https://github.com/alangpierce/sucrase/pull/282
188[#284]: https://github.com/alangpierce/sucrase/pull/284
189[#285]: https://github.com/alangpierce/sucrase/pull/285
190[#286]: https://github.com/alangpierce/sucrase/pull/286
191[#288]: https://github.com/alangpierce/sucrase/pull/288
192[#290]: https://github.com/alangpierce/sucrase/pull/290
193[#292]: https://github.com/alangpierce/sucrase/pull/292
194[#296]: https://github.com/alangpierce/sucrase/pull/296
195[#305]: https://github.com/alangpierce/sucrase/pull/305
196[#308]: https://github.com/alangpierce/sucrase/pull/308
197[#313]: https://github.com/alangpierce/sucrase/pull/313
198[#314]: https://github.com/alangpierce/sucrase/pull/314
199[#315]: https://github.com/alangpierce/sucrase/pull/315
200[#316]: https://github.com/alangpierce/sucrase/pull/316
201[#317]: https://github.com/alangpierce/sucrase/pull/317
202[#321]: https://github.com/alangpierce/sucrase/pull/321
203[#324]: https://github.com/alangpierce/sucrase/pull/324
204[#327]: https://github.com/alangpierce/sucrase/pull/327
205[#331]: https://github.com/alangpierce/sucrase/pull/331
206[#333]: https://github.com/alangpierce/sucrase/pull/333
207[#337]: https://github.com/alangpierce/sucrase/pull/337
208[#338]: https://github.com/alangpierce/sucrase/pull/338
209[#339]: https://github.com/alangpierce/sucrase/pull/339
210[#340]: https://github.com/alangpierce/sucrase/pull/340
211[#342]: https://github.com/alangpierce/sucrase/pull/342
212[#359]: https://github.com/alangpierce/sucrase/pull/359
213[#363]: https://github.com/alangpierce/sucrase/pull/363
214[#376]: https://github.com/alangpierce/sucrase/pull/376
215[#380]: https://github.com/alangpierce/sucrase/pull/380
216[#384]: https://github.com/alangpierce/sucrase/pull/384
217[#386]: https://github.com/alangpierce/sucrase/pull/386
218[#389]: https://github.com/alangpierce/sucrase/pull/389
219[#390]: https://github.com/alangpierce/sucrase/pull/390
220[#393]: https://github.com/alangpierce/sucrase/pull/393
221[#399]: https://github.com/alangpierce/sucrase/pull/399
222[#402]: https://github.com/alangpierce/sucrase/pull/402
223[#403]: https://github.com/alangpierce/sucrase/pull/403
224[#405]: https://github.com/alangpierce/sucrase/pull/405
225[#409]: https://github.com/alangpierce/sucrase/pull/409
226[#410]: https://github.com/alangpierce/sucrase/pull/410
227[#425]: https://github.com/alangpierce/sucrase/pull/425
228[#430]: https://github.com/alangpierce/sucrase/pull/430
229[#431]: https://github.com/alangpierce/sucrase/pull/431
230[#433]: https://github.com/alangpierce/sucrase/pull/433