@markw65/monkeyc-optimizer 1.0.20 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -235,3 +235,43 @@ More fixes found via open source projects.
235
235
 
236
236
  - Code cleanup
237
237
  - Called function cleanup
238
+
239
+ ### 1.0.21
240
+
241
+ - Bug fixes
242
+
243
+ - Parameters from the calling function should be treated just line locals when inlining
244
+ - Upgrade to @markw65/prettier-plugin-monkeyc@1.0.24
245
+ - fixes crash with comments following an attribute: `(:foo) /* comment */ function foo() {}`
246
+ - Fix issues with recursive inlining
247
+
248
+ ### 1.0.22
249
+
250
+ - Improvements
251
+
252
+ - Major rewrite of the symbol lookup mechanism, to match monkeyc as closely as possible
253
+
254
+ - Fix callee lookup to skip local variables
255
+ - Fix class lookup to first check all the super classes, then to check the context of each super class
256
+ - Fix module lookup to check both the module, and the context of the module
257
+ - Inject class and module names into themselves. So that Graphics.Graphics.COLOR_RED works.
258
+
259
+ - Add live diagnostics for missing symbols
260
+
261
+ - Bug fixes
262
+
263
+ - Recognize the the variable in a catch clause is a declaration
264
+
265
+ - Breaking change
266
+ - By popular demand, reversed the sense of `inline*foo`, so now it inlines when foo is _not_ declared as an excludeAnnotation
267
+
268
+ ### 1.0.23
269
+
270
+ - Bug Fixes
271
+
272
+ - Don't treat parameters to Method types as undeclared variables
273
+ - eg `var x as (Method(a as Number, b as Number) as Void)` should not report that `a` and `b` are undeclared
274
+
275
+ - Tests
276
+ - Various new tests for module/class/local resolution of symbols
277
+ - Make tests fail by default if the optimizer reports any undefined symbols, and add `@expects` or `checkInvalidSymbols=WARNING` as needed to prevent test failures.