Skip to content

Releases: sebastienros/esprima-dotnet

v3.0.0-beta-10

14 Jan 09:46
22d85dd

Choose a tag to compare

v3.0.0-beta-10 Pre-release
Pre-release

What's Changed

  • Remove Data member from PropertyKind and make it non-Flags by @lahma in #349
  • Update GitHub Actions checkout to v3 by @lahma in #352
  • Update test suite and add excluded features by @lahma in #355
  • Support accessor keyword in class properties by @jogibear9988 in #353
  • Fix minor issues related to class auto accessors by @adams85 in #360
  • Class and import related parsing fixes by @jogibear9988 in #356
  • Implement top-level await in modules feature by @adams85 in #361
  • Additional improvements to class parsing by @adams85 in #362
  • Fix super access related problems by @lahma in #363
  • Support ES2015/Unicode15.0 identifiers by @lahma in #366
  • Add more class parsing validation by @lahma in #367
  • Fix AST to JavaScript bug in the parenthesizing logic of ForStatement by @adams85 in #369

Full Changelog: v3.0.0-beta-9...v3.0.0-beta-10

v3.0.0-beta-9

15 Oct 17:30
a863d11

Choose a tag to compare

v3.0.0-beta-9 Pre-release
Pre-release

What's Changed

  • Fix AOT-related issues by reverting to per-instance cached delegates in JavaScriptParser by @adams85 in #346
  • Revise usage of string operations which are culture-sensitive by default by @Xicy in #347
  • Allow end users to directly instantiate Scanner using a ParserOptions instance by @adams85 in #348

Full Changelog: v3.0.0-beta-8...v3.0.0-beta-9

v3.0.0-beta-8

02 Oct 08:18
db41af3

Choose a tag to compare

v3.0.0-beta-8 Pre-release
Pre-release

What's Changed

  • Add SkipLocalsInit attribute by @lahma in #339
  • Improve Character method performance by @lahma in #340
  • Upgrade testing libraries and sync test262 commit with Jint by @lahma in #341
  • Add support for RegEx d and v flags by @lahma in #343

Full Changelog: v3.0.0.0-beta-7...v3.0.0-beta-8

v3.0.0-beta-7

15 Oct 20:15
e672bc5

Choose a tag to compare

v3.0.0-beta-7 Pre-release
Pre-release

What's Changed

  • Allow end users to observe JSX token's value by @adams85 in #331
  • A few additional minor corrections by @adams85 in #333
  • Update and enhance sample project by @adams85 in #334
  • Allow attaching user-defined data to nodes without dictionary lookup by @adams85 in #338

Full Changelog: v3.0.0-beta-6...v3.0.0.0-beta-7

v3.0.0-beta-6

26 Aug 08:59
c9c1e08

Choose a tag to compare

v3.0.0-beta-6 Pre-release
Pre-release

This release contains (hopefully) the final parser API and some performance improvements.

What's Changed

  • Clean up string matcher output in cases where no single-character discriminator exists by @adams85 in #325
  • Revision of parser public API by @adams85 in #327
  • Minor code quality/consistency improvements by @adams85 in #329
  • Improve Token layout and reduce stack frame size for hot paths by @lahma in #328

Full Changelog: v3.0.0-beta-5...v3.0.0-beta-6

v3.0.0-beta-5

21 Aug 10:18
2bb3fa7

Choose a tag to compare

v3.0.0-beta-5 Pre-release
Pre-release

This was a release focusing on reducing allocations and improving performance. Below you can see difference to earlier beta.

BenchmarkDotNet=v0.13.1, OS=Windows 10.0.22621
AMD Ryzen 9 5950X, 1 CPU, 32 logical and 16 physical cores
.NET SDK=6.0.400
  [Host]    : .NET 6.0.8 (6.0.822.36306), X64 RyuJIT
  MediumRun : .NET 6.0.8 (6.0.822.36306), X64 RyuJIT

Job=MediumRun  IterationCount=15  LaunchCount=2  
WarmupCount=10  
Method NuGetReferences FileName Mean Error StdDev Median Gen 0 Gen 1 Gen 2 Allocated
ParseProgram Esprima 3.0.0-beta-4 angular-1.2.5 11.346 ms 0.1194 ms 0.1750 ms 11.416 ms 890.6250 390.6250 - 14,694 KB
ParseProgram Esprima 3.0.0-beta-5 angular-1.2.5 9.905 ms 0.0482 ms 0.0707 ms 9.927 ms 250.0000 109.3750 - 4,320 KB
ParseProgram Esprima 3.0.0-beta-4 backbone-1.1.0 1.302 ms 0.0119 ms 0.0175 ms 1.305 ms 142.5781 70.3125 - 2,336 KB
ParseProgram Esprima 3.0.0-beta-5 backbone-1.1.0 1.345 ms 0.0118 ms 0.0166 ms 1.343 ms 41.0156 15.6250 - 679 KB
ParseProgram Esprima 3.0.0-beta-4 jquery-1.9.1 8.765 ms 0.0731 ms 0.1095 ms 8.764 ms 781.2500 359.3750 - 12,845 KB
ParseProgram Esprima 3.0.0-beta-5 jquery-1.9.1 7.716 ms 0.0410 ms 0.0613 ms 7.715 ms 226.5625 78.1250 - 3,769 KB
ParseProgram Esprima 3.0.0-beta-4 jquery.mobile-1.4.2 15.584 ms 0.1786 ms 0.2618 ms 15.428 ms 1218.7500 593.7500 62.5000 20,092 KB
ParseProgram Esprima 3.0.0-beta-5 jquery.mobile-1.4.2 11.843 ms 0.0340 ms 0.0509 ms 11.846 ms 343.7500 171.8750 - 5,803 KB
ParseProgram Esprima 3.0.0-beta-4 mootools-1.4.5 6.716 ms 0.0100 ms 0.0141 ms 6.715 ms 640.6250 304.6875 - 10,564 KB
ParseProgram Esprima 3.0.0-beta-5 mootools-1.4.5 6.277 ms 0.0070 ms 0.0104 ms 6.278 ms 187.5000 85.9375 - 3,094 KB
ParseProgram Esprima 3.0.0-beta-4 underscore-1.5.2 1.070 ms 0.0056 ms 0.0083 ms 1.071 ms 123.0469 46.8750 - 2,033 KB
ParseProgram Esprima 3.0.0-beta-5 underscore-1.5.2 1.134 ms 0.0098 ms 0.0144 ms 1.127 ms 33.2031 15.6250 - 573 KB
ParseProgram Esprima 3.0.0-beta-4 yui-3.12.0 6.116 ms 0.0329 ms 0.0492 ms 6.121 ms 585.9375 257.8125 - 9,665 KB
ParseProgram Esprima 3.0.0-beta-5 yui-3.12.0 5.697 ms 0.0111 ms 0.0163 ms 5.693 ms 171.8750 85.9375 - 2,860 KB

What's Changed

  • Create explicit Token constructors, Token and Marker as struct by @lahma in #236
  • Change FileParsingBenchmark to use parsing defaults by @lahma in #308
  • Remove invalid hash addition to private identifier name by @lahma in #309
  • Refinements around tokens and comments by @adams85 in #310
  • Minor improvements to AST by @adams85 in #311
  • Improve ToString() formatting in Range and Location by @adams85 in #312
  • Reduce memory allocations in JavaScriptParser by @lahma in #313
  • Support ROS input and returning matched string in StringMatcher by @lahma in #315
  • Clean up generation logic and output of StringMatcher by @adams85 in #317
  • Further parser optimizations by @adams85 in #318
  • Fix bracketing of optional chaining expressions in AstToJavascriptConverter by @adams85 in #320
  • Improve StringMatcher generated code performance by @lahma in #319
  • Implement string pooling in scanner/parser by @adams85 in #314
  • Implement Parse/TryParse in Range, Position and Location by @adams85 in #323
  • Use separate StringMatcher for TryGetInternedString by @lahma in #324

Full Changelog: v3.0.0-beta-4...v3.0.0-beta-5

v3.0.0-beta-4

09 Aug 16:46
9339f16

Choose a tag to compare

v3.0.0-beta-4 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v3.0.0-beta-3...v3.0.0-beta-4

v3.0.0-beta-3

20 Jul 16:59
1cd493f

Choose a tag to compare

v3.0.0-beta-3 Pre-release
Pre-release

What's Changed

  • Run test262 diff on PR, update GitHubActionsTestLogger by @lahma in #276
  • Provide a way for inheritors to dispatch visitation of their custom nodes to AstVisitor.VisitExtension by @adams85 in #278
  • Add a general purpose field for associating additional data/context with Node by @adams85 in #283
  • Add public methods for converting operators back to tokens by @adams85 in #285
  • Move max assignment depth into the parser options by @CharlieEriksen in #287
  • Revise Node.ChildNodes by @adams85 in #284
  • Fix enumeration/visitiation of reused node instances by @adams85 in #289
  • Rewrite ChildNodesEnumerationHelpersGenerator into incremental generator to improve performance by @adams85 in #290
  • Create StringMatcherGenerator by @lahma in #293
  • Bump Newtonsoft.Json from 12.0.3 to 13.0.1 in /test/Esprima.Tests by @dependabot in #280
  • Bump Newtonsoft.Json from 12.0.3 to 13.0.1 in /samples/Esprima.Sample by @dependabot in #281
  • Use StringMatcherGenerator in JavascriptParser by @lahma in #294
  • Convert to js by @jogibear9988 in #291

New Contributors

Full Changelog: v3.0.0-beta-2...v3.0.0-beta-3

v3.0.0-beta-2

13 Jun 15:03
22942c5

Choose a tag to compare

v3.0.0-beta-2 Pre-release
Pre-release

What's Changed

  • Add hashbang support by @lahma in #246
  • Use GitHubActionsTestLogger by @lahma in #247
  • Update GitHubActionsTestLogger to latest preview by @lahma in #249
  • Fix DescendantNodes to cope with null nodes by @lahma in #250
  • JsxElement ChildNodes nullability and Ancestor node nullability fix by @Xicy in #251
  • Astvisitor updated for changing ast by @Xicy in #243
  • fixed TemplateLiteral ChildNodes order by @Xicy in #252
  • Revision of the API for visiting and changing AST by @adams85 in #253
  • Treat warnings as errors in test project by @lahma in #256
  • Import Assertions implementation by @Xicy in #254
  • Decorators support by @Xicy in #259
  • Fix escaped unicode characters in get set property by @Xicy in #260
  • Refactor JSX parsing into an isolated extension on top of standard JS parsing by @adams85 in #258
  • Minor build-related improvements by @adams85 in #261
  • Test262 build process improvement by @adams85 in #262
  • Update AstJson by @adams85 in #257
  • Minor corrections to AST by @adams85 in #263
  • Fix bug in UpdateWith methods by @adams85 in #269
  • Improve test compatibility by @adams85 in #268
  • Change fields to properties in AST public API by @adams85 in #270
  • Fix Node.ChildNodes inconsistencies by @adams85 in #271
  • Fix incorrect range and location of dynamic import expressions by @adams85 in #272
  • Finalize AST API for v3.0 by @adams85 in #273
  • Sort VisitXXX methods alphabetically by @adams85 in #274

Full Changelog: v3.0.0-beta-1...v3.0.0-beta-2

3.0.0 beta 1

21 May 08:50
332e5eb

Choose a tag to compare

3.0.0 beta 1 Pre-release
Pre-release

What's Changed

  • Upgrade to official NUnit + use net462 by @lahma in #231
  • Fix some class private identifier parsing issues by @lahma in #233
  • Replace hasProto token with ref bool by @lahma in #234
  • Fix some numeric parsing related issues by @lahma in #232
  • Update staging.yml by @lahma in #235
  • ImportDeclarationSpecifier AST correction by @adams85 in #238
  • AstVisitor corrections by @adams85 in #239
  • Use preview-GITHUB_RUN_NUMBER for MyGet feed version by @lahma in #237
  • Change TryStatement's Block and Finalizer to concrete BlockStatement by @lahma in #241
  • Implemented JSX Parser by @Xicy in #240
  • Seal classes, enable implicit usings and fix compilation warnings by @lahma in #244
  • Allow supplying match timeout to regex by @lahma in #242
  • Fix import.meta support by @lahma in #245

New Contributors

  • @Xicy made their first contribution in #240

Full Changelog: v2.1.3...v3.0.0-beta-1