Permalink
Commits on Aug 1, 2017
  1. Merge pull request #3 from ReneNyffenegger/fixUsage

    Change 'Usage text' to accurately reflect command line parameters
    committed on GitHub Aug 1, 2017
  2. Change 'Usage text'

    If the package is loaded with -MParse::RecDescent the 'dying' message
    now reads
      Usage: perl -MParse::RecDescent - <grammerfile> <classname> [runtimeclassname]
    instead
      Usage: perl -MLocalTest - <grammerfile> <classname> [runtimeclassname]
    René Nyffenegger committed Aug 1, 2017
Commits on Apr 4, 2017
  1. Fix misuse of require to include MYMETA.pl, prep for v1.967015

    I had originally used 'do' to include MYMETA.pl in both Build.PL and
    Makefile.PL.  Just before release I changed that to 'require', not
    realizing that require only returns scalars. The metadata is just
    present in both files now.
    
    This is a CPAN metadata-only change.
    committed Apr 4, 2017
Commits on Apr 1, 2017
  1. Add pm_to_blib to .gitignore

    committed Apr 1, 2017
  2. Update tests to assume '.' is not in @INC (#120415)

    Makes Parse::RecDescent perl-5.26.0 ready.
    committed Apr 1, 2017
  3. Provide repository and bugtracker entries in MYMETA.* (#110403)

    Provide repository and bugtracker entries in MYMETA.* (RT.cpan.org
    
    Resources are shared between Build.PL and Makefile.PL via MYMETA.pl.
    committed Apr 1, 2017
  4. Prevent CPAN from indexing pre-compiled parsers

    Precompiled parsers end up in the Parse::RecDescent namespace.  Other
    packages that publish pre-compiled parsers in this namespace shouldn't
    allow CPAN to index them, as most other authors won't have access to
    that namespace.
    
    Add a newline to the package declartion.
    
    https://rt.cpan.org/Ticket/Display.html?id=110404
    committed Apr 1, 2017
Commits on Sep 27, 2015
  1. Fix Data::Dumper dependency, bump version to 1.967013

    Wrap Data::Dumper->Dump() to localize some $Data::Dumper::VARS to
    control the dumped output. In particular, Data::Dumper::Terse=1 was
    reported to break parser generation. (RT.cpan.org #107355, thanks
    Sherrard!)
    committed Sep 27, 2015
Commits on Sep 13, 2015
  1. Fix reproducible builds, bump version to 1.967012.

    Reference Data::Dumper::Sortkeys, not SortKeys. Actually produces
    reproducible precompiled parsers now. (RT.cpan.org #107061, thanks
    Slaven!)
    committed Sep 13, 2015
Commits on Sep 12, 2015
  1. Ensure a 1:1 mapping for input->output

    Sort hash keys and rulenames when generating code. This keeps the output
    text for a given input text the same, reducing differences in automated
    builds. (RT.cpan.org #102160, thanks Reiner!)
    committed Sep 12, 2015
  2. Correct some typos in the documentation.

    (RT.cpan.org #87185, thanks dsteinbrunner!)
    committed Sep 12, 2015
Commits on Jul 8, 2013
  1. Bump version to 1.967_010 for release.

    Document changes in global <skip> directive, update skip.t.
    committed Jul 8, 2013
Commits on Apr 2, 2013
  1. Ensure that the generated parser evals the global skip directive like…

    … all in-rule skip directives.
    committed Apr 2, 2013
Commits on Mar 26, 2012
  1. Support common runtimes for Precompiled parsers.

    Base the standalone precompiled parser's runtime name on the parser's
    class, rather than use the fixed "Parse::RecDescent::_Runtime".  This
    prevents "already defined" warnings when two standalone precompiled
    parsers are used.
    
    Add support for allowing precompiled parsers to share a common runtime
    via the Precompile({-runtime_class}) option and the
    PrecompiledRuntime() function.
    
    Warn on creation of Precompiled parsers that depend on
    Parse::RecDescent.
    committed Mar 26, 2012
Commits on Mar 25, 2012
Commits on Mar 16, 2012
  1. Bump version to 1.967009 for release.

    Fix a typo in Changes (1.967_008 was labeled 1.967_007)
    committed Mar 16, 2012
Commits on Mar 14, 2012
  1. Fix for RT #74593: restore _parserepeat calling convection.

    Parse::RecDescent 1.966_002 introduced a bug fix that changed the
    calling convention for the internal function _parserepeat.  This
    function was also used by Precompiled parsers distributed as parts of
    other modules on CPAN, like Mail::IMAPClient and Module::ExtractUse.
    
    This change restores the old old _parserepeat calling convention,
    placing the new $_itempos argument at the end of the list.  An
    unfortunate side effect of this change is that Precompiled parsers
    that used versions 1.966_002 - 1.967_007 will break with this change.
    
    Additionally, some Precompiled parsers available in CPAN modules (like
    Module::ExtractUse) pre-dated Parse::RecDescent's setting of the
    _precompiled member in the returned $parser.  Recent changes to
    DESTROY to fix some memory leaks for dynamically generated parsers end
    up removing those precompiled parser's functions.  Now
    Parse::RecDescent sets _not_precompiled on runtime-generated parsers.
    New precompiled parsers should delete this key prior to writing out
    the parser.
    
    LocalWords:  parserepeat
    committed Mar 14, 2012
Commits on Feb 23, 2012
Commits on Feb 21, 2012
  1. Ensure circular references between rules don't leak in DESTROY.

    Some grammars may contain circular references between rules, such as:
    
      a: 'ID' | b
      b: '(' a ')'
    
    Unless these references are broken, the subs stay around on stash
    deletion below.  Iterate through the stash entries and for each
    defined code reference, set it to reference sub {} instead.
    committed Feb 21, 2012
  2. Add a workaround for a memory leak involving Perl's handling of @ISA.

    Perl has a bug that creates a circular reference between @ISA and that
    variable's stash:
    
      https://rt.perl.org/rt3/Ticket/Display.html?id=92708
    
    Emptying the array before deleting the stash seems to prevent the
    leak.
    committed Feb 21, 2012
Commits on Feb 19, 2012
  1. Fix a circular reference memory leak. (RT.cpan.org #53710)

    The use of $AUTOLOAD in sub AUTOLOAD{} in the generated parser's
    namespace causes a circular reference, documented in perl5 RT #110248.
    Applied the workaround documented there, to use ${"AUTOLOAD"} instead
    of $AUTOLOAD.  This forces a GLOB lookup, which takes slightly longer,
    at the expense of not leaking memory.  Since the GLOB lookup only
    happens on "external" calls into the parser, this shouldn't be a big
    performance hit for most grammars, unless they are called VERY often.
    committed Feb 19, 2012
  2. Improvements to prerequisites.

    Revised Text::Balanced to require version 1.95, necessary for t/skip.t
    to pass.  (RT.cpan.org #74787).  Allows install on Perl 5.8.0 (with an
    upgraded Text::Balanced).
    
    Removed unused version.pm.
    committed Feb 19, 2012
  3. Updated Changes entry for 1.966_001 to indicate that

    redirect_reporting_to() was removed.
    committed Feb 19, 2012
Commits on Feb 11, 2012
Commits on Feb 9, 2012
  1. Bump version to 1.967_005. Fix ExtUtils::MakeMaker dependency.

    Added JTBRAUN@CPAN.org as author in Build.PL.
    
    Added ExtUtils::MakeMaker build/configure version
    requirements. (RT.cpan.org #74787, Thanks POPEL!)
    committed Feb 9, 2012