Skip to content

Releases: GerHobbelt/jison

Issue Fix release

27 Aug 19:30
Compare
Choose a tag to compare

Mostly meant to fix #11, after an intermediate release 0.6.0-187 while we addressed this in conjunction with our development process and build processes.

Notes on this release

a few things have changed, though nothing major unless:

  • you're an avid user of %parse-params in your grammar files: from 0.6.0-xxx forward all %parse-params end up in the yy shared context object, saving us quite a bit of parameter passing call overhead in both parser and lexer, or
  • you expect the parseError() API this reference to point at the yy context: that is not true any more: this one will reference the current parser or lexer instance (to be precise: the instance that invoked this particular parseError()); yy is available inside parseError() via the hash parameter already.

(Let's just say that every day I work on JISON I become more convinced dividing this thing into 'modules', which then happen to require circular [development] dependencies, is, how shall I put it... looking super cute on paper but is a bloody nuisance in actual practice as you won't ever really work on only one module at a time; at least not when you're applying larger (functional) changes.)

transitional release; DO NOT USE

27 Aug 19:32
Compare
Choose a tag to compare
Pre-release

This is a transitional release while the build/dev process is adjusted for the new state of affairs where we use NPM 'scoped packages' instead of direct github master references.

Not everyone is using the npm package-lock.json feature which would otherwise solve this issue with much less fuss and much more nicely, but alas. 😢

0.4.18-170

10 Feb 23:53
Compare
Choose a tag to compare

0.4.18-168

10 Feb 23:54
Compare
Choose a tag to compare

0.4.17-121

22 Mar 17:51
Compare
Choose a tag to compare
0.4.17-121 Pre-release
Pre-release

New/improved:

  • leaner production code (any unused features and unused diagnostics tables are not included in the generated output)
  • -t debug mode works both ways: jison outputs diagnostic data while it compiles your grammar and your generated parser includes (switchable) diagnostics output code as well, allowing you to see the parser at work with any input you feed it and diagnose its behaviour. (yydebug mode)
  • -T / --output-debug-tables command line option added for when you dearly miss the nonterminals_ generator table in your parser (it is not used by the parser code itself but your 'outside' app code might be accessing this one (assuming you RTFC and read the comment docblock at the top of the generated parser(s)... ;-) )
  • %token ID "description bla bla" now works as expected: the describeSymbol() API will now pick up and produce the description for the given token (this can impact your error messages and maybe your diagnostics code too)
  • basic yyerrok and yyclearin support
  • cosmetic fixes