# changelog

author: Paul Howarth <paul@city-fan.org> - 1.215-1
changelog:
  - Updated to 1.215:
    - index_locations on an empty document no longer warns
    - Corrected a bug in line-spanning attribute support
    - Regression test for line-spanning attribute support
    - return { foo => 1 } should parse curlys as hash constructor, not block
      (CPAN RT#61305)
    - Fixed bug with map and regexp confusing PPI (CPAN RT#63943)
    - Updated copyright year to 2011 (ADAMK)
    - Fix bless {} probably contains a hash constructor (CPAN RT#64247)
    - Backed out glob fix
    - Fix cast can trump braces in PPI::Token::Symbol->symbol (CPAN RT#65199)


author: Paul Howarth <paul@city-fan.org> - 1.215-2
changelog:
  - Rebuild for perl 5.14.1 in Rawhide
  - Add support for perl_bootstrap macro
  - Explicitly BR: Class::Inspector and Test::More
  - Nobody else likes macros for commands
  - Fix dist tag for CentOS 6 and Scientific Linux


author: Paul Howarth <paul@city-fan.org> - 1.215-3
changelog:
  - Bump Params::Util version requirement to 1.00 as per upstream
  - Don't need to remove empty directories from buildroot
  - Don't need to fix permissions of files from tarball
  - Use a patch rather than scripted iconv to fix character encoding


author: Paul Howarth <paul@city-fan.org> - 1.215-5
changelog:
  - Classify buildreqs by usage
  - BR: perl(Carp), perl(constant), perl(Cwd), perl(Digest::MD5), perl(Exporter),
    perl(ExtUtils::MakeMaker), perl(File::Path), perl(File::Spec),
    perl(File::Spec::Functions), perl(File::Spec::Unix), perl(Pod::Simple),
    perl(Scalar::Util) and perl(Time::HiRes)
  - Drop support for old distributions prior to FC-3:
    - Don't need to define %{perl_vendorlib}
    - Use DESTDIR rather than PERL_INSTALL_ROOT


author: Paul Howarth <paul@city-fan.org> - 1.215-9
changelog:
  - Bump perl(Clone) version requirement to 0.30
  - Bump perl(File::Spec) version requirement to 0.84
  - Bump perl(Test::NoWarnings) version requirement to 0.084
  - Renumber patches to sync with Fedora package
  - Run-require Task::Weaken; see Changes for more details


author: Paul Howarth <paul@city-fan.org> - 1.218-1
changelog:
  - Update to 1.218
    - Fixes for various parsing and documentation bugs
    - 1MB limit on input document size removed
    - Moved repository to GitHub: https://github.com/adamkennedy/PPI
  - This release by MITHALDU → update source URL
  - Use %license where possible
  - Drop %defattr, redundant since rpm 4.4
  - Update patches as needed


author: Paul Howarth <paul@city-fan.org> - 1.220-1
changelog:
  - Update to 1.220
    - Incompatible behavior fixes on PPI::Statement::Sub->prototype
    - Improved parsing of various syntax elements
    - Code quality improvements
    - Various small documentation fixes
  - BR:/R: perl(Class::XSAccessor) for experimental PPI::XSAccessor
  - BR: perl(IO::All) and perl(Capture::Tiny) to quieten warnings for author
    code during module build
  - Fix line endings of new README.md file


author: Paul Howarth <paul@city-fan.org> - 1.220-7
changelog:
  - Fix FTBFS when perl is not in the minimal buildroot
  - BR: perl-generators where available
  - Simplify find command using -delete
  - Prefer %global over %define


author: Paul Howarth <paul@city-fan.org> - 0.043-1
changelog:
  - Update to 0.043
    - Beginning with version 0.035, PPIx::Regexp was incorrectly reporting the
      sense of modifiers when the same token both asserted and negated modifiers
      (e.g. '(?x-i:...)'); this release should correct the problem
    - Document policy when Perl changes in such a way that the proper parse for a
      regular expression changes; in this case the more modern parse is preferred
    - Parse white space inside bracketed character classes inside extended
      bracketed character classes (whew!) as literals, except for the space
      character itself and the horizontal tab; this tracks the corresponding
      change in Perl 5.23.4, and will be reverted if the corresponding Perl
      change does not make it into 5.24.0
    - Clear error when lexer identifies unknown token; those who peruse the
      changes in this release will see that a bunch of refactoring was done as
      part of this
    - Parse \U and friends as meta-characters inside \Q...\E; this turns out to
      be what Perl itself does, as shown by "perl -E 'say qr{\Q\Ufoo}'"
    - Do not end regex set prematurely on finding '])'; the problem is that '])'
      can occur within an extended bracketed character class if it contains
      grouping parentheses and the last item in a group is a regular bracketed
      character class and there is no white space between the end of the
      character class and the end of the group
    - Record parse failure if switch condition is unknown; the structure was
      being reblessed to PPIx::Regexp::Structure::Unknown, but the number of
      parse failures was not being incremented
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.044-1
changelog:
  - Update to 0.044
    - Recognize postfix dereference if desired, controlled by the Boolean
      argument 'postderef' passed to PPIx::Regexp->new(); the default is false,
      but will become true if postfix dereference becomes mainstream Perl 5
    - Add explain() and supporting methods main_structure() and in_regex_set();
      the explain() method returns a brief explanation of what the element does
    - Restrict recognition of back references in replacement strings to \number
      form, since Perl itself does not recognize \g{...} or \k{...} there
    - Allow nesting of \Q with \U, \L, and \F (the perlop docs say these nest
      with each other); playing with Perl suggests that \U, \L and \F supersede
      each other, but that they as a group nest with \Q in either order, so that
      if you specify \Q and one of the \U, \L, \F group, you need two \Es to turn
      them all back off
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.045-1
changelog:
  - Update to 0.045
    - Deprecate tokenizer method prior() in favour of prior_significant_token();
      this is not part of the public interface, so I suppose I could have just
      slam-dunked it, but ...
    - Add experimental ability to parse strings as well as regexes; the new
      functionality is controlled by the new new() argument 'parse', whose
      permitted values are 'regex' (the default), 'string', or 'guess'
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.046-1
changelog:
  - Update to 0.046
    - Add GitHub repository to metadata
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.047-1
changelog:
  - Update to 0.047
    - Recognize \b{lb}, introduced in 5.23.7; if this is retracted before 5.24,
      it will be removed outright
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.048-1
changelog:
  - Update to 0.048
    - Add option 'strict', like 'use re "strict"'
      In the presence of strict(), I opted to set perl_version_introduced to the
      version of Perl where the construct became an error
    - Parse '\N{}' as no-op
      The previous parse was a character class ('\N') followed by two literals
      ('{' and '}'), but perl5238delta said that it had been ignored up to that
      time; starting with 5.23.8 it is an error if 'use re strict' is in effect
    - Quash 'NOT a POSIX class ...' warning under 5.23.8
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.049-1
changelog:
  - Update to 0.049
    - Robustify PPIx::Regexp->perl_version_removed(); the problem here was that
      if the expression being parsed was sufficiently badly-formed,
      $self->delimiters() would be undef, throwing a warning
    - Correct dump of embedded modifiers (eg: (?i:...))
  - Simplify find command using -delete
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.050-1
changelog:
  - Update to 0.050
    - Parse bracketed substitution with embedded comment; this is something like
      s{foo}\n#{bar}\n{baz}, which is equivalent to s/foo/baz/
    - We now recognize postfix dereferences by default, since Perl does beginning
      with 5.24; in other words, default new() argument 'postderef' to true
    - Unterminated substitutions (i.e. 's//') should no longer cause an
      exception; instead, they parse as an unknown token
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 0.051-1
changelog:
  - Update to 0.051
    - Support whitespace inside [] if /xx in effect; starting with Perl 5.25.9, a
      space or tab appearing inside a bracketed character class is not
      significant if /xx is asserted
    - Further deprecate tokenizer method prior()
    - Add 'provides' data to ExtUtils::MakeMaker output
    - SOME unescaped literal '{' removed in 5.025001; after '.', Unicode classes,
      and bracketed classes (including extended), they are still legal
    - Make /\b{/ an error; Perl fails to parse the above, because once it sees
      the '\b{' it wants to find one of the extended boundary assertions (like
      \b{wb}), and declares an error when it does not
  - Update patch for building with Test::More < 0.88


author: Paul Howarth <paul@city-fan.org> - 1.001000-3
changelog:
  - Rebuild for perl 5.14.1 in Rawhide
  - Nobody else likes macros for commands
  - Fix dist tag for CentOS 6 and Scientific Linux


author: Paul Howarth <paul@city-fan.org> - 1.001000-5
changelog:
  - BR: perl(Exporter), perl(PPI) ≥ 1.208, and perl(Scalar::Util)
  - Run the extra tests too, unless we're bootstrapping
  - BR: aspell-en, perl(Perl::Critic::Policy::Miscellanea::RequireRcsKeywords),
    perl(Test::Distribution), perl(Test::Kwalitee), perl(Test::Perl::Critic),
    perl(Test::Pod) and perl(Test::Pod::Coverage) for the extra tests
  - Remove explicit dependency on perl(Exporter); auto-detected with rpm ≥ 4.9
    and not needed yet on any supported distribution
  - Don't need to remove empty directories from the buildroot
  - Drop support for old distributions prior to FC-3:
    - Don't need to define %{perl_vendorlib}
    - Use DESTDIR rather than PERL_INSTALL_ROOT


author: Paul Howarth <paul@city-fan.org> - 1.001000-16
changelog:
  - Avoid copyright.t more forcefully, as it is now upsetting Perl::Critic too
  - Run the release tests in the en_US locale for the benefit of the spellchecker
  - Use %license where possible
  - Drop %defattr, redundant since rpm 4.4


author: Paul Howarth <paul@city-fan.org> - 1.121-2
changelog:
  - xt/author/82_optional_modules.t shouldn't be trying to use Readonly::XS (#1092921)
  - Run the author tests using "Build test" rather than "Build authortest" because the
    latter ends up deleting META.yml and that causes the kwalitee test to fail
  - Drop %defattr, redundant since rpm 4.4


author: Paul Howarth <paul@city-fan.org> - 1.121-3
changelog:
  - Add upstream fix for Build.PL to work with current toolchain, and reinstate
    use of "Build authortest"


author: Paul Howarth <paul@city-fan.org> - 1.122-1
changelog:
  - Update to 1.122
    - Now requires PPI-1.218, which has numerous enahncements and bug fixes
    - Also now requires Readonly-2.00, which obviates the need for Readonly::XS
      to get fast constants
    - File::HomeDir, File::Which, and Term::ANSIColor are all required now
      instead of being optional or recommended; this simplifies our test code
      and ensures consistent optimal behavior for all users
    - Added two new policies: BuiltinFunctions::ProhibitUselessTopic and
      RegularExpressions::ProhibitUselessTopic
    - Updated the perlcritic.el script to use modern Emacs hooks (GH #556)
    - Removed all the internal RCS keyword boilerplate blocks that were never
      getting expanded
  - Use %license where possible
  - Drop upstreamed patches
  - Drop patch for building with old Term::ANSIColor, no longer needed


author: Paul Howarth <paul@city-fan.org> - 1.123-1
changelog:
  - Update to 1.123
    - Now requires PPI-1.220 which has numerous bug fixes; this may eliminate
      the need for some "## no critic" markers you inserted to work around those
      bugs - the "ProhibitUselessNoCritic" policy should help you find them
    - Fixed a typo in the Variables::ProhibitPerl4PackageNames message


author: Paul Howarth <paul@city-fan.org> - 1.124-1
changelog:
  - Update to 1.124
    - The ProhibitUnusedPrivateSubroutines policy can now ignore files that use
      particular modules with the 'skip_when_using' option, which allows, for
      example, skipping the policy for roles
    - The RequireUseStrict and RequireUseWarnings policies now regard Moose, Moo,
      Mouse, Dancer, Mojolicious, and several other modules as equivalent to the
      strict and warnings pragma
    - The RequireChecked* family of policies has been fixed to accommodate
      version numbers when use-ing the autodie pragma (GH #612)
  - Add patch to avoid the need for List::Util ≥ 1.33 (GH #626)


author: Paul Howarth <paul@city-fan.org> - 1.125-1
changelog:
  - Update to 1.125
    - Corrected dependency on List::Util::any() to List::MoreUtils::any()
    - Revised and updated documentation
  - Drop upstreamed patch for GH #626


author: Paul Howarth <paul@city-fan.org> - 1.126-1
changelog:
  - Update to 1.126
    - Added a policy: ControlStructures::ProhibitYadaOperator - Never use ... in
      production code
    - Fixed problems arising from having -b in your .perltidyrc file
    - Removed extra newline from policy names returned by P::C::Config->policies
    - 'fc' and 'say' are now covered by ProhibitUselessTopic
    - Add more strict/warnings importer modules
    - Path::Tiny is now recommended over File::Slurp
    - Micro-optimize by calling ->content() directly instead of going through the
      overloads
    - Square brackets are now allowed around your '## no critic' policy list


