2017-06-05 16:25:36 by Ryo ONODERA | Files touched by this commit (2298) |
Log message:
Recursive revbump from lang/perl5 5.26.0
|
2017-01-30 13:47:33 by Makoto Fujiwara | Files touched by this commit (2) |
Log message:
Updated devel/p5-PPIx-Regexp to 0.051
-------------------------------------
0.051 2017-01-29 T. R. Wyant
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 litaral '{' 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. So we check for this and rebless the
curly into an unknown token, not a literal.
|
2016-06-08 21:25:20 by Thomas Klausner | Files touched by this commit (2236) |
Log message:
Bump PKGREVISION for perl-5.24.
|
2016-05-27 15:37:06 by Wen Heping | Files touched by this commit (2) |
Log message:
Update to 0.050
Upstream changes:
0.050 2016-05-06 T. R. Wyant
Parse bracketed substitution with embedded comment. This is something
like s{foo}\n#{bar}\n{baz} which is equivalent to s/foo/baz/. PPI
gets this wrong, and we're not smart enough to fix up the PPI parse,
but if given this as text, we now parse it correctly.
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.
0.049 2016-04-19 T. R. Wyant
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:...))
|
2016-03-04 14:12:34 by Wen Heping | Files touched by this commit (2) |
Log message:
Update to 0.048
Upstream changes:
0.048 2016-02-29 T. R. Wyant
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
Add Makefile targets authortest and testcover.
0.047 2016-01-29 T. R. Wyant
Recognize \b{lb}, introduced in 5.23.7. If this is retracted before
5.24, it will be removed outright.
0.046 2016-01-08 T. R. Wyant
Add GitHub repository to mmetadata.
0.045 2015-12-31 T. R. Wyant
Deprecate tokenizer method prior() in favor of
prior_significant_token(). This is not part of the public interface,
so I suppose I could have just slam-dunked it, but ...
Add 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'. String parsing, and the 'string' and 'guess' values of
'parse', are experimental.
0.044 2015-12-08 T. R. Wyant
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 thet 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.
Restrict recognition of back references in replacement strings to
\number form, since Perl itself does not recognize \g{...} or
\k{...} there.
Recognize postfix dereference if desired. This is 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.
0.043 2015-11-18 T. R. Wyant
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.
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}'
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 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. This will be reverted if the
corresponding Perl change does not make it into 5.24.0.
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.
0.042 2015-10-09 T. R. Wyant
Report error rather than failing when parsing a string consisting
wholly of white space.
Group types were not being recognized if they contained the delimiter
character for the regexp (e.g. in qr<(?\<foo)> the look-behind
assertion was not recognized as such).
Correct mis-parse of ' s///'. Leading white space is supposed to be
acceptable, but the leading whitespace token caused
PPIx::Regexp::Lexer not to recognize the substitution as such.
Tokenizer was failing when the string to be parsed was so bad it was
trying to return the whole thing as a single
PPIx::Regexp::Token::Unknown.
PPIx::Regexp::Dumper now displays a message if a structure is missing
its end delimiter.
RT 107331 Produce parse error in the presence of trailing cruft.
Thanks to Klaus Rindfrey for catching this.
The tokenizer now does a preliminary scan for delimiting brackets
and modifiers. Anything after the modifiers except for white space
is now made into a PPIx::Regexp::Token::Unknown, resulting in a
parse failure being reported. The previous implementation simply
assumed a valid expression, and in the case of the expression in the
ticket blithely mismatched the delimiters and returned a parse
without failures, but which was manifestly bogus.
Tweak documentation in PPIx::Regexp.
|
2015-11-03 04:29:40 by Alistair G. Crooks | Files touched by this commit (1995) |
Log message:
Add SHA512 digests for distfiles for devel category
Issues found with existing distfiles:
distfiles/eclipse-sourceBuild-srcIncluded-3.0.1.zip
distfiles/fortran-utils-1.1.tar.gz
distfiles/ivykis-0.39.tar.gz
distfiles/enum-1.11.tar.gz
distfiles/pvs-3.2-libraries.tgz
distfiles/pvs-3.2-linux.tgz
distfiles/pvs-3.2-solaris.tgz
distfiles/pvs-3.2-system.tgz
No changes made to these distinfo files.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
|
2015-09-06 05:31:37 by Makoto Fujiwara | Files touched by this commit (2) |
Log message:
Update 0.039 to 0.041
----------------------
0.041 2015-07-02 T. R. Wyant
No changes since 0.041_02.
0.040_02 2015-06-25 T. R. Wyant
Report \C (match octet) as removed in 5.23.0.
0.040_01 2015-06-20 T. R. Wyant
Accept non-ASCII whitespace under /x. The Whitespace object can be
multiple characters; the perl_version_introduced() becomes
'5.021001' if any of them is a code point above 127.
The perl_version_removed() method now returns '5.021001' when called
on a PPIx::Regexp object produced by parsing '?foo?' (match once
without explicit 'm'). The object produced by parsing 'm?foo?' still
returns the minimum Perl version.
0.040 2015-05-31 T. R. Wyant
No changes since 0.039_02.
0.039_02 2015-05-24 T. R. Wyant
Do not parse unadorned parentheses as capture groups when /n is in
effect. Instead, they are parsed as PPIx::Regexp::Structure. Named
captures appear to be unaffected by /n.
Made a verbose dump a little more so. Specifically, dump
max_capture_group where relevant, and display dumped values a bit
more informatively.
0.039_01 2015-05-23 T. R. Wyant
Report /n (no captures) as having been added in 5.21.8.
|
2015-06-12 12:52:19 by Thomas Klausner | Files touched by this commit (3152) |
Log message:
Recursive PKGREVISION bump for all packages mentioning 'perl',
having a PKGNAME of p5-*, or depending such a package,
for perl-5.22.0.
|
2015-04-10 03:37:43 by Makoto Fujiwara | Files touched by this commit (2) |
Log message:
Update to 0.039
----------------
0.039 2015-04-02 T. R. Wyant
No changes since 0.038_01.
0.038_01 2015-03-26 T. R. Wyant
Recognize nested subscripts in interpolation.
Thanks to Andy Lester for finding this, which actually manifested in
Perl-Critic-Policy-Variables-ProhibitUnusedVarsStricter. The problem is
that the actual heuristics for finding the end of an interpolation are
undocumented, and I missed this rather-obvious case.
Add \b{g} (= \b{gcb})
|
2015-03-16 00:49:53 by Makoto Fujiwara | Files touched by this commit (2) |
Log message:
Update 0.037 to 0.038
---------------------
0.038 2015-03-09 T. R. Wyant
No changes since 0.037_01.
0.037_02 2015-03-01 T. R. Wyant
Make \b{foo} into an unknown token (and therefore an error. This
applies to \b{anything}, where 'anything' is anything bur 'gcb',
'wb', or 'sb'.
0.037_01 2015-02-25 T. R. Wyant
Handle the boundary assertions introduced in Perl 5.21.9: '\b{gcb}'
(grapheme cluster boundary), '\b{wb}' (word boundary), '\b{sb}'
(sentence boundary), and the corresponding '\B{...}' constructions.
Similar-looking things like '\b{foo}' are not recognized as
assertions, and end up being literals. This is less general than I
usually make things, but was done against the possibility that
(e.g.) '\b{foo}' might be introduced later, requiring
perl_version_released() to return a different number. Any of these
retracted prior to Perl 5.22.0 will simply be removed from
PPIx::Regexp.
|