All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
1.2.1 - 2019-07-20
1.2.0 - 2019-03-14
1.0.4 - 2019-01-30
1.0.3 - 2019-01-11
- Added
Microgrammar.matchIterator
convenience generator method - Added
Microgrammar.fromDefinitionsAs
andfromStringsAs
methods for convenient type inference
- Stronger type inference to ensure that
Microgrammar
definitions match returned match interfaces
1.0.1 - 2018-11-09
1.0.0-M.4 - 2018-09-16
1.0.0-M.1 - 2018-08-28
- Prepare for 1.0.0 release.
0.9.1 - 2018-08-22
- Add Concat to index.
0.9.0 - 2018-08-22
- Include "main" and "types" in package.json.
- BREAKING Reorganize package to be have standard Node.js layout.
- Update TypeScript and its configuration.
- Removed TSLint rules that are already part of tslint:recommended.
- Do not run tests more than once.
0.8.1 - 2018-08-12
index.ts
file
- TypeDoc generation
0.8.0 - 2018-08-07
- Documentation
- Declaration map
- Allow multiple calls to
init()
. - Update dependencies.
- Tighten up TSLint rules and de-lint.
0.7.0 - 2017-10-03
Stricter release
- Publish master and PR builds to Atomist NPM registry
- Make TypeScript compilation more strict
0.6.2 - 2017-09-24
Update bugfix release.
- Guard for undefined access in some cases in microgrammar updates
0.6.1 - 2017-09-16
Circular reference support release.
- It's now possible to set definition members after initial
construction, to enable circular references. See
Concat.lazy
Concat
constructor is now private. UseConcat.of
static function instead
0.6.0 - 2017-07-30
Listener and fromString
improvement release.
- Added listener mechanism and state machine support to
InputState
- Added
firstOf
convenience function to createAlt
instances - Added nesting support via
fromString
function forMicrogrammar.fromString
- Introduced
FromStringOptions
to customizeMicrogrammar.fromString
behavior - Added
FromStringOptions.ellipsis
option forMicrogrammar.fromString
specs to skip over intervening content without binding. Defaults to...
. - Added
FromStringOptions.componentPrefix
option forMicrogrammar.fromString
specs to specify component prefix. Defaults to former$
.
- Breaking Unified "block" support to a handle C family languages in a consistent manner, rather than just Java
- Fixed
skipTo
where target matcher is a non-terminal - Fixed
Integer
to accept 0 but not accept a pattern with a leading 0
0.5.1 - 2017-07-09
Bug fix - remove cycle
- Breaking
Break
is now for internal use, to avoid cycle withConcat
. Use functions inSkip
to achieveBreak
behavior.
0.5.0 - 2017-07-09
Config and context overhaul release
- Added
flatten
method for working withOpt
- Tiered contexts for current parse and current match
- Convenience functions
atLeastOne
andzeroOrMore
for working with repetition RestOfLine
convenience matcher function
- Breaking Configuration properties are now added to definition literals directly
- Breaking
Regex
now adds a start anchor if none is specified - Breaking
Concat
moved tomatchers
directory as it should not be used directly by end users in most cases - Matches should now support JSON stringification with circularity
0.4.1 - 2017-07-04
Bugfix
Literal
andSpan
were not fully implementing thematchPrefix
of theMatchingLogic
interface
0.4.0 - 2017-07-02
API clarification release
exactMatch
method onMicrogrammar
to insist on matching entire input.
- Breaking Introduced
matchers
package. Brokeskip
andsnobol
functionality into own packages under it. Movedjava
under it. - Breaking Introduced
spi
andinternal
packages to clearly specify user API - Breaking Matcher properties with names starting with
_
are no longer bound to the pattern match
0.3.11 - 2017-06-29
Performance release
- Various performance improvements
0.2.0 - 2017-06-21
Alt release
- Make Alt accept any number of alternatives
0.1.0 - 2017-06-20
Initial release