Hello community, here is the log from the commit of package perl-Text-Glob for openSUSE:Factory checked in at 2016-10-01 23:43:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Text-Glob (Old) and /work/SRC/openSUSE:Factory/.perl-Text-Glob.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Text-Glob" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Text-Glob/perl-Text-Glob.changes 2011-11-21 12:48:49.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.perl-Text-Glob.new/perl-Text-Glob.changes 2016-10-01 23:43:45.000000000 +0200 @@ -1,0 +2,10 @@ +Thu Sep 15 06:28:20 UTC 2016 - [email protected] + +- updated to 0.10 + see /usr/share/doc/packages/perl-Text-Glob/Changes + + 0.10 Wednesday 14th September, 2016 + Added ability to alter regex seperator (patch from Mark Fowler) + Switch distribution packaging back to ExtUtils::MakeMaker (RT#104876) + +------------------------------------------------------------------- Old: ---- Text-Glob-0.09.tar.gz New: ---- Text-Glob-0.10.tar.gz cpanspec.yml ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Text-Glob.spec ++++++ --- /var/tmp/diff_new_pack.1Odt4o/_old 2016-10-01 23:43:46.000000000 +0200 +++ /var/tmp/diff_new_pack.1Odt4o/_new 2016-10-01 23:43:46.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package perl-Text-Glob # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,48 +16,44 @@ # +Name: perl-Text-Glob +Version: 0.10 +Release: 0 %define cpan_name Text-Glob - -Name: perl-%cpan_name -Version: 0.09 -Release: 1 -Provides: %cpan_name +Summary: Match Globbing Patterns Against Text +License: Artistic-1.0 or GPL-1.0+ Group: Development/Libraries/Perl -License: Artistic-1.0 Url: http://search.cpan.org/dist/Text-Glob/ -Summary: Tools for working with paths and file specs across platforms -Source: %cpan_name-%{version}.tar.gz +Source0: http://www.cpan.org/authors/id/R/RC/RCLAMP/%{cpan_name}-%{version}.tar.gz +Source1: cpanspec.yml +BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build -%{perl_requires} BuildRequires: perl BuildRequires: perl-macros +%{perl_requires} %description -Text::Glob implements glob(3) style matching that can be used to match against text, rather than fetching names from a filesystem. If you want to do full file globbing use the File::Glob module instead. +Text::Glob implements glob(3) style matching that can be used to match +against text, rather than fetching names from a filesystem. If you want to +do full file globbing use the File::Glob module instead. %prep -%setup -q -n %cpan_name-%{version} +%setup -q -n %{cpan_name}-%{version} %build -perl Makefile.PL OPTIMIZE="$RPM_OPT_FLAGS -Wall" -make +%{__perl} Makefile.PL INSTALLDIRS=vendor +%{__make} %{?_smp_mflags} %check -make test +%{__make} test %install -make DESTDIR=$RPM_BUILD_ROOT install_vendor +%perl_make_install %perl_process_packlist +%perl_gen_filelist -%clean -# clean up the hard disc after build -rm -rf $RPM_BUILD_ROOT - -%files -%defattr(-,root,root) -%doc %{_mandir}/man?/* -%{perl_vendorlib}/Text -%{perl_vendorarch}/auto/Text -%doc Changes MANIFEST +%files -f %{name}.files +%defattr(-,root,root,755) +%doc Changes %changelog ++++++ Text-Glob-0.09.tar.gz -> Text-Glob-0.10.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/Build.PL new/Text-Glob-0.10/Build.PL --- old/Text-Glob-0.09/Build.PL 2011-02-22 16:08:30.000000000 +0100 +++ new/Text-Glob-0.10/Build.PL 1970-01-01 01:00:00.000000000 +0100 @@ -1,12 +0,0 @@ -use strict; -use Module::Build; - -Module::Build - ->new( module_name => "Text::Glob", - license => 'perl', - build_requires => { - 'Test::More' => 0, - }, - create_makefile_pl => 'traditional', - ) - ->create_build_script; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/Changes new/Text-Glob-0.10/Changes --- old/Text-Glob-0.09/Changes 2011-02-22 16:08:30.000000000 +0100 +++ new/Text-Glob-0.10/Changes 2016-09-14 11:44:08.000000000 +0200 @@ -1,3 +1,7 @@ +0.10 Wednesday 14th September, 2016 + Added ability to alter regex seperator (patch from Mark Fowler) + Switch distribution packaging back to ExtUtils::MakeMaker (RT#104876) + 0.09 Tuesday 22nd February, 2010 Compiled documentation fixes (collected by Tom Hukins from fixes on rt.cpan) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/MANIFEST new/Text-Glob-0.10/MANIFEST --- old/Text-Glob-0.09/MANIFEST 2011-02-22 16:08:30.000000000 +0100 +++ new/Text-Glob-0.10/MANIFEST 2016-09-14 11:44:16.000000000 +0200 @@ -1,7 +1,8 @@ Changes -MANIFEST lib/Text/Glob.pm Makefile.PL -Build.PL -META.yml +MANIFEST This list of files t/Text-Glob.t +t/Text-Glob_Sep.t +META.yml Module YAML meta-data (added by MakeMaker) +META.json Module JSON meta-data (added by MakeMaker) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/META.json new/Text-Glob-0.10/META.json --- old/Text-Glob-0.09/META.json 1970-01-01 01:00:00.000000000 +0100 +++ new/Text-Glob-0.10/META.json 2016-09-14 11:44:16.000000000 +0200 @@ -0,0 +1,54 @@ +{ + "abstract" : "match globbing patterns against text", + "author" : [ + "Richard Clamp <[email protected]>" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005", + "license" : [ + "perl_5" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "Text-Glob", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : { + "Exporter" : "0", + "constant" : "0", + "perl" : "5.00503" + } + }, + "test" : { + "requires" : { + "Test::More" : "0" + } + } + }, + "release_status" : "stable", + "resources" : { + "bugtracker" : { + "mailto" : "[email protected]" + } + }, + "version" : "0.10", + "x_serialization_backend" : "JSON::PP version 2.27300" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/META.yml new/Text-Glob-0.10/META.yml --- old/Text-Glob-0.09/META.yml 2011-02-22 16:08:30.000000000 +0100 +++ new/Text-Glob-0.10/META.yml 2016-09-14 11:44:15.000000000 +0200 @@ -3,19 +3,25 @@ author: - 'Richard Clamp <[email protected]>' build_requires: - Test::More: 0 + ExtUtils::MakeMaker: '0' + Test::More: '0' configure_requires: - Module::Build: 0.36 -generated_by: 'Module::Build version 0.3603' + ExtUtils::MakeMaker: '0' +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html - version: 1.4 + version: '1.4' name: Text-Glob -provides: - Text::Glob: - file: lib/Text/Glob.pm - version: 0.09 -resources: - license: http://dev.perl.org/licenses/ -version: 0.09 +no_index: + directory: + - t + - inc +requires: + Exporter: '0' + constant: '0' + perl: '5.00503' +resources: {} +version: '0.10' +x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/Makefile.PL new/Text-Glob-0.10/Makefile.PL --- old/Text-Glob-0.09/Makefile.PL 2011-02-22 16:08:30.000000000 +0100 +++ new/Text-Glob-0.10/Makefile.PL 2016-09-14 11:14:25.000000000 +0200 @@ -1,14 +1,51 @@ -# Note: this file was auto-generated by Module::Build::Compat version 0.3603 +use strict; +use warnings; use ExtUtils::MakeMaker; -WriteMakefile -( - 'PL_FILES' => {}, - 'INSTALLDIRS' => 'site', - 'NAME' => 'Text::Glob', - 'EXE_FILES' => [], - 'VERSION_FROM' => 'lib/Text/Glob.pm', - 'PREREQ_PM' => { - 'Test::More' => 0 - } - ) -; + +ExtUtils::MakeMaker->VERSION(6.98) if -f '.gitignore'; + +my %WriteMakefileArgs = ( + NAME => 'Text::Glob', + VERSION_FROM => 'lib/Text/Glob.pm', + ABSTRACT_FROM => 'lib/Text/Glob.pm', + AUTHOR => 'Richard Clamp <[email protected]>', + LICENSE => 'perl_5', + MIN_PERL_VERSION => '5.00503', + + CONFIGURE_REQUIRES => { + 'ExtUtils::MakeMaker' => '0', + }, + PREREQ_PM => { + 'Exporter' => '0', + 'constant' => '0', + }, + TEST_REQUIRES => { + 'Test::More' => '0', + }, + + META_MERGE => { + 'meta-spec' => { version => 2 }, + dynamic_config => 0, + resources => { + bugtracker => { + mailto => '[email protected]', + }, + }, + }, +); + +# degrade gracefully for older EUMM/older perls + +if (!eval { ExtUtils::MakeMaker->VERSION('6.6303') }) { + $WriteMakefileArgs{BUILD_REQUIRES} = $WriteMakefileArgs{TEST_REQUIRES}; + delete $WriteMakefileArgs{TEST_REQUIRES}; +} + +if (!eval { ExtUtils::MakeMaker->VERSION('6.5501') }) { + @{$WriteMakefileArgs{PREREQ_PM}}{ keys %{$WriteMakefileArgs{BUILD_REQUIRES}} } = + @{$WriteMakefileArgs{BUILD_REQUIRES}}{ keys %{$WriteMakefileArgs{BUILD_REQUIRES}} }; + + delete $WriteMakefileArgs{BUILD_REQUIRES}; +} + +WriteMakefile(%WriteMakefileArgs); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/lib/Text/Glob.pm new/Text-Glob-0.10/lib/Text/Glob.pm --- old/Text-Glob-0.09/lib/Text/Glob.pm 2011-02-22 16:08:30.000000000 +0100 +++ new/Text-Glob-0.10/lib/Text/Glob.pm 2016-09-14 11:44:08.000000000 +0200 @@ -3,7 +3,7 @@ use Exporter; use vars qw/$VERSION @ISA @EXPORT_OK $strict_leading_dot $strict_wildcard_slash/; -$VERSION = '0.09'; +$VERSION = '0.10'; @ISA = 'Exporter'; @EXPORT_OK = qw( glob_to_regex glob_to_regex_string match_glob ); @@ -21,6 +21,11 @@ sub glob_to_regex_string { my $glob = shift; + + my $seperator = $Text::Glob::seperator; + $seperator = "/" unless defined $seperator; + $seperator = quotemeta($seperator); + my ($regex, $in_curlies, $escaping); local $_; my $first_byte = 1; @@ -40,11 +45,11 @@ } elsif ($_ eq '*') { $regex .= $escaping ? "\\*" : - $strict_wildcard_slash ? "[^/]*" : ".*"; + $strict_wildcard_slash ? "(?:(?!$seperator).)*" : ".*"; } elsif ($_ eq '?') { $regex .= $escaping ? "\\?" : - $strict_wildcard_slash ? "[^/]" : "."; + $strict_wildcard_slash ? "(?!$seperator)." : "."; } elsif ($_ eq '{') { $regex .= $escaping ? "\\{" : "("; @@ -156,18 +161,20 @@ C<example.{foo,bar,baz}> matches C<example.foo>, C<example.bar>, and C<example.baz> -=item leading . must be explictly matched +=item leading . must be explicitly matched C<*.foo> does not match C<.bar.foo>. For this you must either specify the leading . in the glob pattern (C<.*.foo>), or set C<$Text::Glob::strict_leading_dot> to a false value while compiling the regex. -=item C<*> and C<?> do not match / +=item C<*> and C<?> do not match the seperator (i.e. do not match C</>) C<*.foo> does not match C<bar/baz.foo>. For this you must either explicitly match the / in the glob (C<*/*.foo>), or set -C<$Text::Glob::strict_wildcard_slash> to a false value with compiling +C<$Text::Glob::strict_wildcard_slash> to a false value while compiling +the regex, or change the seperator that Text::Glob uses by setting +C<$Text::Glob::seperator> to an alternative value while compiling the the regex. =back diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/t/Text-Glob_Sep.t new/Text-Glob-0.10/t/Text-Glob_Sep.t --- old/Text-Glob-0.09/t/Text-Glob_Sep.t 1970-01-01 01:00:00.000000000 +0100 +++ new/Text-Glob-0.10/t/Text-Glob_Sep.t 2016-09-14 11:14:25.000000000 +0200 @@ -0,0 +1,82 @@ +#!perl -w +use strict; +use Test::More tests => 30; + +BEGIN { use_ok('Text::Glob', qw( glob_to_regex ) ) } + +{ + my $regex = glob_to_regex( 'foo', "::" ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo' =~ $regex, "matched foo" ); + ok( 'foobar' !~ $regex, "didn't match foobar" ); +} + +######################################################################## +# Test '*' +######################################################################## + +# single char seperator +{ + local $Text::Glob::seperator = ":"; + my $regex = glob_to_regex( 'foo*:bar' ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo:bar' =~ $regex, "matched foo::bar" ); + ok( 'foowibble:bar' =~ $regex, "matched foowibble::bar" ); + ok( 'foo/wibble:bar' =~ $regex, "matched foo/wibble::bar" ); + ok( 'foo::wibble:bar' !~ $regex, "didn't match foo::wibble::bar" ); +} + +# multi char seperator +{ + local $Text::Glob::seperator = "::"; + my $regex = glob_to_regex( 'foo*::bar' ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo::bar' =~ $regex, "matched foo::bar" ); + ok( 'foowibble::bar' =~ $regex, "matched foowibble::bar" ); + ok( 'foo/wibble::bar' =~ $regex, "matched foo/wibble::bar" ); + ok( 'foo::wibble::bar' !~ $regex, "didn't match foo::wibble::bar" ); +} + +# meta char seperator +{ + local $Text::Glob::seperator = "("; + my $regex = glob_to_regex( 'foo*(bar' ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo(bar' =~ $regex, "matched foo(bar" ); + ok( 'foowibble(bar' =~ $regex, "matched foowibble(bar" ); + ok( 'foo/wibble(bar' =~ $regex, "matched foo/wibble(bar" ); + ok( 'foo(wibble(bar' !~ $regex, "didn't match foo(wibble(bar" ); +} + +######################################################################## +# Test '?' +######################################################################## + +# single char seperator +{ + local $Text::Glob::seperator = ":"; + my $regex = glob_to_regex( 'fo?:bar' ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo:bar' =~ $regex, "matched foo:bar" ); + ok( 'fo::bar' !~ $regex, "didn't match fo::bar" ); +} + +# multi char seperator +{ + local $Text::Glob::seperator = "::"; + my $regex = glob_to_regex( 'f??::bar' ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo::bar' =~ $regex, "matched foo:bar" ); + ok( 'f::::bar' !~ $regex, "didn't match f::::bar" ); + ok( 'fo:::bar' !~ $regex, "didn't match fo:::bar" ); +} + +# meta char seperator +{ + local $Text::Glob::seperator = "(("; + my $regex = glob_to_regex( 'f??((bar' ); + is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" ); + ok( 'foo((bar' =~ $regex, "matched foo((bar" ); + ok( 'f((((bar' !~ $regex, "didn't match f((((bar" ); + ok( 'fo(((bar' !~ $regex, "didn't match fo((((bar" ); +} ++++++ cpanspec.yml ++++++ --- #description_paragraphs: 3 #description: |- # override description from CPAN #summary: override summary from CPAN #no_testing: broken upstream #sources: # - source1 # - source2 #patches: # foo.patch: -p1 # bar.patch: #preamble: |- # BuildRequires: gcc-c++ #post_prep: |- # hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'` # sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL #post_build: |- # rm unused.files #post_install: |- # sed on %{name}.files #license: SUSE-NonFree #skip_noarch: 1 #custom_build: |- #./Build build flags=%{?_smp_mflags} --myflag #custom_test: |- #startserver && make test #ignore_requires: Bizarre::Module
