+Ragel 6.6 - Dec 2, 2009
+=======================
+ -Applied a number of patches from Diego Elio 'Flameeyes' Pettenò. Should not
+ be modifying the program's arguments. Problem raised by const correctness in
+ gcc 4.4. Other const-correctness and include fixes provided.
+ -Fixed improper allocation of checks in makeIncludePathChecks.
+ -Fixed segfault when there are no machine instantiations.
+ -Fixed wrong line directives. Line directives need to use the fileName stored
+ in the InputLoc stuctures from the parse trees, not the root source file,
+ otherwise actions in included files will have the wrong source file names
+ associated with the text.
+ -Made a number of build system improvements. We locate the DIST file using
+ $srcdir and source it. It contains settings for build_parsers and
+ build_manual. This allows the user of a dist to enable only one.
+ -Added missing files to doc/Makefile.am and examples/Makefile.am.
+ -Added checks for pdflatex and fig2dev is build_manual is on.
+ -Use automake --foreign so we don't need to have INSTALL and NEWS present.
+ -Ragel VIM syntax files should be specialized by host language. Updated the
+ VIM syntax files.
+ -Just discovered that $srcdir is available in the configure script for
+ checking for the existence of a file created by dist-hook. This lets us write
+ a test that knows the difference between a distribution tarball and something
+ from the repos. The building of the parsers and the manual can now be
+ automatically turned off in a make dist tarball.
+ -Added examples to the dist. Added unicode2ragel.rb to EXTRA_DIST in contrib.
+ -Moved unicode2ragel.rb to the contrib directory.
+
+Ragel 6.5 - May 18, 2009
+========================
+ -Fixed a bug in graphviz generation. Ragel crashed when using -V and -M and
+ the specified machine referenced another machine that wasn't included in the
+ build.
+ -The name "CS" is in use on OpenSolaris, changed to vCS to ease compiling
+ Ragel there.
+ -Converted to automake.
+ -REALLY fixed a bug that was intended to be fixed in 6.4:
+ Fixed a problem reading hex numbers that have the high bit set when the
+ alphabet is signed and we are on 64 bit. This was reported by _why. The
+ fix was provided by Wialliam Morgan. The literal 0xffffffff was used for
+ a fully set long when -1L should be used instead.
+ A null patch (whitespace changes) must have gotten checked after I was
+ testing with and without the critical one-line patch and I forgot to enable
+ make sure it was enabled in the final checkin version.
+
+Ragel 6.4 - Mar 22, 2009
+========================
+ -Moved back to a single executable. The old intermediate format can still be
+ generated using the -x option. Ragel was split into frontend and backend
+ programs in version 5.0. This was done to encourage interoperability with
+ other tools. Since then, ragel has been made to work with qfsm, with ragel
+ producing the intermediate format and qfsm consuming it. However, there has
+ been no use of Ragel as a consumer of state machine data, with Ragel used as
+ a code generator for DFAs. This is not surprising given that much of the
+ complexity of Ragel is in the frontend, where the regular language to DFA
+ compilation happens. Since the full benefits of the split have not
+ materialized, and the split increases the complexity for users, Ragel has
+ been made once again into a single executable.
+ -Applied a fix to the documentation Makefile from John D. Mitchell.
+ -Use CXXFLAGS instead of CFLAGS for C++ compiling. Patch from Diego
+ 'Flameeyes' Pettenò.
+ -Added support for DESTDIR variable. Patch from Diego 'Flameeyes' Pettenò.
+ -Added a script called unicode2ragel.rb for generating unicode machines to
+ the examples directory. From Rakan El-Khalil.
+ -Fixed a copy-paste error in the documentation that was reported by Jose
+ Quinteiro.
+ -Added three new write commands:
+ write start;
+ write first_final;
+ write error;
+ These generate a reference to the start, first final and error state. When
+ there are many different machine specifications in one file it is easy to
+ get the prefix for these wrong (especially when you do a lot of copy-pasting
+ of boilerplate). The problem can be avoided by using write commands.
+ -Fixed a problem reading hex numbers that have the high bit set when the
+ alphabet is signed and we are on 64 bit. This was reported by _why. The fix
+ was provided by Wialliam Morgan. The literal 0xffffffff was used for a fully
+ set long when -1L should be used instead.
+
+Ragel 6.3 - Aug 29, 2008
+========================
+ -Fixed an assertion that is too strong. In the condition code we need to copy
+ transitions that have non-empty lmActionTable arrays so we don't assert
+ emptiness in the constructor. Lift out the assertion and copy the array in
+ the constructor.
+ -Fixed and improved multiple include prevention. We now track the entire
+ include history of a parser state to prevent duplicates.
+ -Fixed crash on failed lookup of goto/call/etc target.
+
Ragel 6.2 - May 9, 2008
=======================
-Bug fix: The lm_switch actions needs to set p from tokend when there is no
the eof transition to take. Instead add the transition to the end of the
transition list and store its position in a new var called pos. The pos var
is then used as the index.
- -Bug fix: an fnext followed by an fbreak in -G2 did not work. The fbreak was
- not aware that the fnext causes the cs variable to be forced active. In this
- case fbreak does not need to save cs because it is already current.
+ -Bug fix: an fnext followed by an fbreak in -G2 was not working. The fbreak
+ was not aware that the fnext causes the cs variable to be forced active. In
+ this case fbreak does not need to save cs because it is already current.
-Bug fix: need to compute the low and high character-space keys from the
condition-trans overlap when computing an expansion. Can't use the range
supplied from the condition overlap since they may not match. An incorrect
causing assertion failures because location info was not set. Fixed by
adding locations.
-Include and import file searching now searches for the file name given based
- on the location of the current file, not the program's current path.
+ on the location of the current file, not ragel's current path.
Additional search locations can be given using the -I option.
-Rubinius code generation was updated to the latest Rubinius. Patch from Evan
Phoenix.