All Versions
Latest Version
Avg Release Cycle
151 days
Latest Release
1401 days ago

Changelog History

  • v1.8.2 Changes

    May 03, 2020

    ๐Ÿ›  JFlex 1.8.2 is a small bugfix release. There are no new features.

    • ๐Ÿ›  fix bug that prevented %7bit scanners from being generated (#756)
    • ๐Ÿ›  fix %eof{ and %eofthrow{ code generation (#743)
    • โšก๏ธ updated bazel build rule

    More detailed list of changes in milestone 1.8.2

  • v1.8.1 Changes

    February 28, 2020


  • v1.8.0 Changes

    February 26, 2020
    • Defend against spoon-feeding readers not fully populating the scanning buffer #543
    • โž• Add support for Unicode 10.0 #540 11.0 #555 12.0 #556 and 12.1 #563
    • ๐Ÿ‘ Unicode Emoji properties are supported for Unicode versions 8.0+ (#546)
    • Significantly decreased memory usage for unicode scanners from ~4MB to typical ~20kB. (#697)
    • Macro expressions in character classes are now allowed (#216, #654)
    • โž• Add @SuppressWarnings("FallThrough") on generated lexer #454
    • ๐Ÿ”ฆ Expose yyatEOF() in generated scanner API (#644)
    • yychar type has been changed from int to long for files > 2GB (#605)
    • Pipe action | now works for <<EOF>> (#201)
    • Explicitly use UTF-8 encoding for skeleton files and dot files (#470)
    • ๐Ÿ”Œ Maven plugin now correctly checks #include file time stamp (#694)
    • Slightly optimised character classes when ^ operator is used (#682)
    • Normalised character class order. This has no influence on how text is matched, but makes --dump output more comparable. (#650)
    • ๐Ÿ›  Fixed a bug in the negation ! operator that in rare circumstances would match not everything covered by the negation (#567).
    • The . expression now does not match unpaired surrogates, since these are not characters. (#544)
    • ๐Ÿ— Example specs now with build for ant, make, and maven
    • Introduced a code LexGenerator API. #428 #448
    • โž• Add the jflex source in generated code #371 #399
    • Code cleanup
    • โšก๏ธ Dep updates
      • Updated maven dependencies #409
      • Updated the Maven wrapper to 0.4.2 #382
    • ๐Ÿ‘ท Build system
      • retired ant build #432
      • now supporting Bazel build

    ๐Ÿ‘€ See all changes in milestone 1.8.0

  • v1.7.0 Changes

    September 21, 2018
    • Prerequisites
      • Compilation requires jdk7 and Maven 3.5.2
      • Execution requires jdk7 and Maven 3.0
      • Compilation of generated code requires jdk 5
    • CUP upgraded to 0.11b
    • ๐Ÿšš Option --inputstreamctor has been removed (#195)
    • Code health
      • Codebase has valid doclint (#206)
      • Maven plugins update to use Java annotations rather than javadoc at-clauses.
    • jflex --version or --info or --help now exits with error code 0 (#194)
    • ๐Ÿ‘ Unicode 8.0 and 9.0 are supported (#209)
    • ๐Ÿ“š documentation improvements (#152, #187, #215, #290)
    • โž• added an --encoding option to specify input/output encoding (#164)
    • ๐Ÿ‘‰ make jflex start script robust for other locales (#251)
    • report character position when %debug and %char are present (#207)

    ๐Ÿ‘€ See

  • v1.6.1 Changes

    November 09, 2017

    ๐Ÿš€ 1.6.1 is a maintenance release, fixing all known defects.

    ๐Ÿ”„ Changelog:

    • ๐Ÿšš JFlex development, wiki, and issue tracker moved to
    • ๐Ÿ›  Fixed issue #130, "in caseless mode, chars in regexps not accepted caselessly":
      Caseless option works again as intended.
    • ๐Ÿ›  Fixed issue #131, "re-enable scanning interactively or from a network byte stream":
      JFlex now throws an IOException when a Reader returns 0 characters.
    • ๐Ÿ†• New example, shows how to deal with Readers that return 0 characters.
    • ๐Ÿ’ป Command line scripts work again in repository version (contributed by Emma Strubell)
    • ๐Ÿ†• New options --warn-unused and --no-warn-unused that control warnings about unused macros.
    • ๐Ÿ›  Fixed issue #125: %apiprivate and %cup2 switches now no longer incompatible
    • ๐Ÿ›  Fix issue #133, "Error in skeleton.nested":
      Empty-string matches were taking precedence over EOF and caused non-termination.
      Now EOF is counted as the highest-priority empty match.
    • ๐Ÿ†• New warning when an expression matches the empty string (can lead to non-termination).
  • v1.6.0 Changes

    November 09, 2017
    • ๐Ÿ‘ Unicode 7.0 is supported.
    • In %unicode mode, supplementary code points are now handled properly.
      • Regular expressions are now code-point based, rather than code-unit/
        char based.
      • Input streams are read as code point sequences - properly paired
        surrogate code units are read as a single character.
      • All supported Unicode properties now match supplementary characters
        when Unicode 3.0 or above is specified, or when no version is
        0๏ธโƒฃ specified, causing the default Unicode version, Unicode 7.0 in this
        ๐Ÿš€ release, to be used.
    • ๐Ÿ†• New \u{...} escape sequence allows code points (and whitespace-separated
      sequences of code points) to be specified as 1-6 hexadecimal digit values.
    • ๐Ÿ–จ Characters in matches printed in %debug mode are now Unicode escaped
      (\uXXXX) when they are outside the range 32..127.
    • detect javadoc class comment when followed by annotation(s) (#128)
    • โœ‚ removed the "switch" and "table" code generation options
    • ๐Ÿ—„ Option --noinputstreamctor deprecated.
      0๏ธโƒฃ By default no InputStream constructor is included in the generated
      ๐Ÿ—„ scanner. The capability to include one is deprecated and will be
      โœ‚ removed in JFlex 1.7.
  • v1.5.2-SNAPSHOT

    November 08, 2017
  • v1.5.1

    March 21, 2014
  • v1.4.4-SNAPSHOT

    November 08, 2017