zf

zenflows testing
git clone https://s.sonu.ch/~srfsh/zf.git
Log | Files | Refs | Submodules | README | LICENSE

CHANGELOG.md (4045B)


      1 # Changelog for NimbleParsec
      2 
      3 ## v1.2.3 (2022-02-28)
      4 
      5 ### Enhancements
      6 
      7   * Allow `:export_combinator` in `defparsec`
      8 
      9 ## v1.2.2 (2022-02-12)
     10 
     11 ### Enhancements
     12 
     13   * Allow `rest` to be returned from post_traverse/pre_traverse
     14 
     15 ## v1.2.1 (2022-01-26)
     16 
     17 ### Bug fixes
     18 
     19   * Improve typespecs
     20 
     21 ## v1.2.0 (2021-11-07)
     22 
     23 ### Enhancements
     24 
     25   * Add generator support to `NimbleParsec`: it now generates code that matches a combinator
     26 
     27 ### Bug fixes
     28 
     29   * Fix using `eventually` with constructs that can accumulate
     30   * Fix lookahead combinators running in reverse order
     31   * Raise on invalid `min` for integer
     32 
     33 ## v1.1.0 (2020-10-02)
     34 
     35 ### Enhancements
     36 
     37   * Add `defcombinator` and support for remote `parsec`. This allows larger parsers to be broken over multiple modules to speed up compilation by leveraging parallelism.
     38 
     39 ## v1.0.0 (2020-09-25)
     40 
     41 ### Enhancements
     42 
     43   * Allow `byte_offset` to be given to `:line`
     44 
     45 ## v0.6.0 (2020-05-25)
     46 
     47 NimbleParsec v0.6.0 requires Elixir v1.6+.
     48 
     49 ### Bug fixes
     50 
     51   * Avoid unused variable warnings
     52 
     53 ## v0.5.3 (2019-12-11)
     54 
     55 ### Enhancements
     56 
     57   * Add `eventually/2` combinator
     58 
     59 ## v0.5.2 (2019-11-10)
     60 
     61 ### Enhancements
     62 
     63   * Optimize `repeat` with initial `lookahead`
     64   * Add `@spec` to `parsec/2`
     65 
     66 ## v0.5.1 (2019-08-04)
     67 
     68 ### Enhancements
     69 
     70   * Remove dialyzer warnings from emitted code
     71   * Optimize lookahead with choice
     72   * Support min: 0 on utf8_string/ascii_string
     73   * Remove compiler warnings in code generated by `mix nimble_parsec.compile`
     74   * Add `@spec` to combinators
     75 
     76 ## v0.5.0 (2018-12-12)
     77 
     78 ### Enhancements
     79 
     80   * Introduce `pre_traverse/3`
     81   * Introduce `lookahead/2` and `lookahead_not/2` which accepts combinators
     82   * Introduce `eos/1` (end of string combinator)
     83 
     84 ### Backwards incompatible changes
     85 
     86   * Deprecate `traverse/3` in favor of `post_traverse/3`
     87   * `repeat_until/3` has been removed in favor of `repeat/2` with `lookahead_not/2` (see `repeat_while/3` docs for an example)
     88   * `lookahead/2` with a call has been removed as it can be easily achieved with a `post_traverse/3`
     89 
     90 ## v0.4.0 (2018-08-10)
     91 
     92 ### Enhancements
     93 
     94   * Add `defcombinatorp` and clarify the role of `defparsecp`
     95 
     96 ## v0.3.2 (2018-06-02)
     97 
     98 ### Bug fixes
     99 
    100   * Fix compilation error for certain combinations of ascii_string/utf8_string + traverse
    101   * Respect the `label` construct when wrapping a `choice`
    102 
    103 ## v0.3.1 (2018-04-10)
    104 
    105 ### Bug fixes
    106 
    107   * Avoid exponential compilation time when line break is unknown
    108 
    109 ## v0.3.0 (2018-04-08)
    110 
    111 ### Enhancements
    112 
    113   * Add `unwrap`, `tag` and `unwrap_and_tag`
    114   * Add `nimble_parsec.compile` to compile parsers without a NimbleParsec dependency
    115 
    116 ## v0.2.2 (2018-03-08)
    117 
    118 ### Bug fix
    119 
    120   * Ensure multiple runtime traversals compose
    121 
    122 ## v0.2.1 (2018-03-04)
    123 
    124 ### Bug fix
    125 
    126   * Do not duplicate entries in integer/ascii_string/utf8_string
    127 
    128 ## v0.2.0 (2018-03-04)
    129 
    130 ### Enhancements
    131 
    132   * Support parser combinator contexts and return them in ok/error tuples
    133   * Add `ascii_string/3` and `utf_string/3` combinators
    134   * Add `lookahead/2` combinator
    135   * Rename `literal/2` to `string/2`
    136   * Add `line/2` and `byte_offset/2` combinators
    137   * The MFA given to `repeat_while/3` now receives the accumulator, context, line, and byte_offset values and must return `{:cont, context} | {:halt, context}`
    138   * The MFA given to `quoted_repeat_while/3` now receives the accumulator, context, line, and byte_offset values and must return `{:cont, context} | {:halt, context}`
    139   * The MFA given to `traverse/3` now receives the rest, accumulator, context, line, and byte_offset values and must return `{acc, context} | {:error, reason}`
    140   * The MFA given to `quoted_traverse/3` now receives the ASTs for the rest, accumulator, context, line, and byte_offset and must return `{acc, context} | {:error, reason}`
    141   * Instead of `line` as a positive integer, we now track `{line, line_offset}` where `line` is the same as before and `line_offset` is the byte offset after the new line
    142   * Instead of `column` as a positive integer, we now track `byte_offset` as a non-negative integer
    143 
    144 ## v0.1.0 (2018-03-02)
    145 
    146   * First release.