UNPKG

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