Skip to content

Releases: ohmjs/ohm

Ohm v17.1.0

27 Apr 10:14
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

New features:

  • Added extractExamples to the extras module, which can extract example inputs — written with a special comment syntax — from grammar definitions.

Ohm v17.0.4

04 Mar 15:59
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Fixes

  • [c2e552d]: Add _buildGrammar back to exports. (It's a private API used by the Ohm Editor.)
  • [4d9ee89]: Ensure ohm.version reports the correct value. Due to a change in the build scripts, it was stuck at '17.0.0'.

Ohm v17.0.3

03 Mar 16:41
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Release notes

Breaking changes:

  • [#424]: any now consumes an entire code point (i.e., a full Unicode character), not just a single, 16-bit code unit.
  • [55c787b]: The namespace helpers (namespace, extendNamespace) have been removed. (These were always optional.)
  • [bea0be9]: When used as an ES module, the main 'ohm-js' module now has only named exports (i.e., no default export). The same is true for ohm-js/extras.
  • [#395]: In generated type definitions, action dictionary types now inherit from BaseActionDict<T>, a new supertype of ActionDict<T>.
  • [9e32f8d]: ohm.util is removed from the public API. getLineAndColumn and getLineAndColumn have been moved into the extras module.
  • [#398]: Changed the default behavior toAST for the built-in list rules (ListOf and friends). Both the syntactic (ListOf, ...) and lexical versions (listOf, ...) are now represented as arrays, with the separators discarded. Previously, the syntactic versions were represented by arrays, but with separators included, and the lexical versions were represented as strings (just like other lexical rules).

Other notable changes:

  • [#416]: Fix crash when calling toString on a non-root node
  • [13c8991]: The deprecated grammarFromScriptElement and grammarsFromScriptElements functions have been entirely removed.
  • Improvements to the TypeScript types:
    • [#407]: Added types for the built-in asIteration operation
    • [#410]: Added types for Interval.getLineAndColumn
  • [#368]: The primitiveValue property of nodes, which was deprecated in Ohm v16, has now been completely removed.

Ohm v16.6.0

19 Dec 14:33
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Bug fixes

  • Fixed an issue with the Interval types: they no longer have an inputStream property; but they do have a sourceString property.

New features

  • Added type information for remaining methods of Interval

Ohm v16.5.0

19 Dec 11:16
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

New features

  • [#410] Added type information for Interval.getLineAndColumn()
  • [#407] Added type information for built-in asIteration operation

Ohm v16.4.0

02 Aug 11:06
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

New features

  • [#390] Added type information for ohm.pexprs

Ohm v16.3.4

02 May 18:00
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Bug fixes

  • Proper fix for #374.

Ohm v16.3.3

02 May 04:46
d3631fc
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Bug fixes

  • [#374] Fixed incorrect type annotation for Node.isOptional()

Ohm v16.3.2

23 Mar 11:11
6f2f498
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Bug fixes

Ohm v16.3.1

28 Feb 09:16
4dae27a
Compare
Choose a tag to compare

NPM
Browser bundles: ohm.jsohm.min.js

Bug fixes

  • [#366]: Fix #363 by removing imports of ohm-js from extras (it’s not required)