Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Router-Simple for 
openSUSE:Factory checked in at 2026-11-07 23:33:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Router-Simple (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Router-Simple.new.3759290 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Router-Simple"

Sat Nov  7 23:33:19 2026 rev:6 rq:1396026 version:0.180.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Router-Simple/perl-Router-Simple.changes    
2015-04-15 16:23:18.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Router-Simple.new.3759290/perl-Router-Simple.changes
       2026-11-07 23:33:59.016944953 +0100
@@ -1,0 +2,13 @@
+Fri Nov  6 11:35:04 UTC 2026 - Tina Müller <[email protected]>
+
+- updated to 0.180.0 (0.18)
+   see /usr/share/doc/packages/perl-Router-Simple/Changes
+
+  0.18 2026-11-05T09:46:23Z
+
+      - Anchor route regexps at the end of the string with \z instead of $,
+        so that a path, method or host with a trailing newline no longer
+        matches. (polamjag)
+      - Require perl 5.10.
+
+-------------------------------------------------------------------

Old:
----
  Router-Simple-0.17.tar.gz

New:
----
  README.md
  Router-Simple-0.18.tar.gz
  _scmsync.obsinfo
  build.specials.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Router-Simple.spec ++++++
--- /var/tmp/diff_new_pack.YJ7RkM/_old  2026-11-07 23:34:00.266996604 +0100
+++ /var/tmp/diff_new_pack.YJ7RkM/_new  2026-11-07 23:34:00.268996686 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Router-Simple
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -12,29 +12,36 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
+%define cpan_name Router-Simple
 Name:           perl-Router-Simple
-Version:        0.17
+Version:        0.180.0
 Release:        0
-%define cpan_name Router-Simple
-Summary:        simple HTTP router
-License:        Artistic-1.0 or GPL-1.0+
-Group:          Development/Libraries/Perl
-Url:            http://search.cpan.org/dist/Router-Simple/
-Source:         
http://www.cpan.org/authors/id/T/TO/TOKUHIROM/%{cpan_name}-%{version}.tar.gz
+# 0.18 -> normalize -> 0.180.0
+%define cpan_version 0.18
+License:        Artistic-1.0 OR GPL-1.0-or-later
+Summary:        Simple HTTP router
+URL:            https://metacpan.org/release/%{cpan_name}
+Source0:        
https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/%{cpan_name}-%{cpan_version}.tar.gz
+Source100:      README.md
 BuildArch:      noarch
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
 BuildRequires:  perl-macros
-BuildRequires:  perl(Class::Accessor::Lite) >= 0.05
-BuildRequires:  perl(Module::Build) >= 0.38
+BuildRequires:  perl(Class::Accessor::Lite) >= 0.50
+BuildRequires:  perl(Module::Build)
+BuildRequires:  perl(Module::Build::Tiny) >= 0.35
 BuildRequires:  perl(Test::More) >= 0.98
 BuildRequires:  perl(parent)
-Requires:       perl(Class::Accessor::Lite) >= 0.05
+Requires:       perl(Class::Accessor::Lite) >= 0.50
 Requires:       perl(parent)
+Provides:       perl(Router::Simple) = %{version}
+Provides:       perl(Router::Simple::Declare)
+Provides:       perl(Router::Simple::Route)
+Provides:       perl(Router::Simple::SubMapper)
+%undefine       __perllib_provides
 %{perl_requires}
 
 %description
@@ -46,20 +53,20 @@
 easy to use with PSGI supporting web frameworks.
 
 %prep
-%setup -q -n %{cpan_name}-%{version}
+%autosetup -n %{cpan_name}-%{cpan_version} -p1
 
 %build
-%{__perl} Build.PL installdirs=vendor
-./Build build flags=%{?_smp_mflags}
+perl Build.PL --installdirs=vendor
+./Build build --flags=%{?_smp_mflags}
 
 %check
 ./Build test
 
 %install
-./Build install destdir=%{buildroot} create_packlist=0
+./Build install --destdir=%{buildroot} --create_packlist=0
 %perl_gen_filelist
 
 %files -f %{name}.files
-%defattr(-,root,root,755)
-%doc Changes LICENSE minil.toml README.md
+%doc Changes README.md
+%license LICENSE
 

++++++ README.md ++++++

## Build Results

Current state of perl in openSUSE:Factory is

![Factory build 
results](https://br.opensuse.org/status/openSUSE:Factory/perl-Router-Simple/standard)

The current state of perl in the devel project build (devel:languages:perl)

![Devel project build 
results](https://br.opensuse.org/status/devel:languages:perl/perl-Router-Simple)



++++++ Router-Simple-0.17.tar.gz -> Router-Simple-0.18.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/Build.PL 
new/Router-Simple-0.18/Build.PL
--- old/Router-Simple-0.17/Build.PL     2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/Build.PL     2026-11-05 10:46:23.000000000 +0100
@@ -4,62 +4,9 @@
 # =========================================================================
 
 use 5.008_001;
-
 use strict;
-use warnings;
-use utf8;
-
-use Module::Build;
-use File::Basename;
-use File::Spec;
-
-my %args = (
-    license              => 'perl',
-    dynamic_config       => 0,
-
-    configure_requires => {
-        'Module::Build' => 0.38,
-    },
-
-    name            => 'Router-Simple',
-    module_name     => 'Router::Simple',
-    allow_pureperl => 0,
-
-    script_files => [glob('script/*'), glob('bin/*')],
-    c_source     => [qw()],
-    PL_files => {},
-
-    test_files           => ((-d '.git' || $ENV{RELEASE_TESTING}) && -d 'xt') 
? 't/ xt/' : 't/',
-    recursive_test_files => 1,
-
-
-);
-if (-d 'share') {
-    $args{share_dir} = 'share';
-}
-
-my $builder = Module::Build->subclass(
-    class => 'MyBuilder',
-    code => q{
-        sub ACTION_distmeta {
-            die "Do not run distmeta. Install Minilla and `minil install` 
instead.\n";
-        }
-        sub ACTION_installdeps {
-            die "Do not run installdeps. Run `cpanm --installdeps .` 
instead.\n";
-        }
-    }
-)->new(%args);
-$builder->create_build_script();
-
-use File::Copy;
 
-print "cp META.json MYMETA.json\n";
-copy("META.json","MYMETA.json") or die "Copy failed(META.json): $!";
+use Module::Build::Tiny 0.035;
 
-if (-f 'META.yml') {
-    print "cp META.yml MYMETA.yml\n";
-    copy("META.yml","MYMETA.yml") or die "Copy failed(META.yml): $!";
-} else {
-    print "There is no META.yml... You may install this module from the 
repository...\n";
-}
+Build_PL();
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/Changes 
new/Router-Simple-0.18/Changes
--- old/Router-Simple-0.17/Changes      2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/Changes      2026-11-05 10:46:23.000000000 +0100
@@ -1,5 +1,12 @@
 Revision history for Perl module Router::Simple
 
+0.18 2026-11-05T09:46:23Z
+
+    - Anchor route regexps at the end of the string with \z instead of $,
+      so that a path, method or host with a trailing newline no longer
+      matches. (polamjag)
+    - Require perl 5.10.
+
 0.17 2014-12-02T06:58:23Z
 
     commit 35bb954a60cdd9225858b522f118d5851f69e3ce
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/MANIFEST 
new/Router-Simple-0.18/MANIFEST
--- old/Router-Simple-0.17/MANIFEST     2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/MANIFEST     2026-11-05 10:46:23.000000000 +0100
@@ -24,6 +24,7 @@
 t/12_paren_warnings.t
 t/13_method_not_allowed.t
 t/14_ending_slash.t
+t/15_trailing_newline.t
 xt/02_perlcritic.t
 xt/04_synopsis.t
 META.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/META.json 
new/Router-Simple-0.18/META.json
--- old/Router-Simple-0.17/META.json    2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/META.json    2026-11-05 10:46:23.000000000 +0100
@@ -4,7 +4,7 @@
       "Tokuhiro Matsuno <tokuhirom AAJKLFJEF@ GMAIL COM>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Minilla/v2.1.1",
+   "generated_by" : "Minilla/v3.3.2",
    "license" : [
       "perl_5"
    ],
@@ -28,14 +28,14 @@
    "prereqs" : {
       "configure" : {
          "requires" : {
-            "Module::Build" : "0.38"
+            "Module::Build::Tiny" : "0.035"
          }
       },
       "develop" : {
          "requires" : {
             "Test::CPAN::Meta" : "0",
             "Test::MinimumVersion::Fast" : "0.04",
-            "Test::PAUSE::Permissions" : "0.04",
+            "Test::PAUSE::Permissions" : "0.07",
             "Test::Pod" : "1.41",
             "Test::Spellunker" : "v0.2.7"
          }
@@ -46,7 +46,7 @@
             "List::Util" : "0",
             "Scalar::Util" : "0",
             "parent" : "0",
-            "perl" : "5.008_001"
+            "perl" : "5.010"
          }
       },
       "test" : {
@@ -58,7 +58,7 @@
    "provides" : {
       "Router::Simple" : {
          "file" : "lib/Router/Simple.pm",
-         "version" : "0.17"
+         "version" : "0.18"
       },
       "Router::Simple::Declare" : {
          "file" : "lib/Router/Simple/Declare.pm"
@@ -77,21 +77,27 @@
       },
       "homepage" : "https://github.com/tokuhirom/p5-router-simple";,
       "repository" : {
-         "url" : "git://github.com/tokuhirom/p5-router-simple.git",
+         "type" : "git",
+         "url" : "https://github.com/tokuhirom/p5-router-simple.git";,
          "web" : "https://github.com/tokuhirom/p5-router-simple";
       }
    },
-   "version" : "0.17",
+   "version" : "0.18",
    "x_contributors" : [
-      "Shawn M Moore <[email protected]>",
-      "Tatsuhiko Miyagawa <[email protected]>",
-      "nipotan <[email protected]>",
-      "Naoki Tomita <[email protected]>",
-      "Philippe Bruhat (BooK) <[email protected]>",
       "David Steinbrunner <[email protected]>",
-      "Neil Bowers <[email protected]>",
       "Fayland Lam <[email protected]>",
       "Maurice Aubrey <[email protected]>",
-      "Tokuhiro Matsuno <[email protected]>"
-   ]
+      "Naoki Tomita <[email protected]>",
+      "Neil Bowers <[email protected]>",
+      "Philippe Bruhat (BooK) <[email protected]>",
+      "Ricardo Signes <[email protected]>",
+      "Shawn M Moore <[email protected]>",
+      "Tatsuhiko Miyagawa <[email protected]>",
+      "Tokuhiro Matsuno <[email protected]>",
+      "kga <[email protected]>",
+      "nipotan <[email protected]>",
+      "polamjag <[email protected]>"
+   ],
+   "x_serialization_backend" : "JSON::PP version 4.16",
+   "x_static_install" : 1
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/META.yml 
new/Router-Simple-0.18/META.yml
--- old/Router-Simple-0.17/META.yml     2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/META.yml     2026-11-05 10:46:23.000000000 +0100
@@ -5,9 +5,9 @@
 build_requires:
   Test::More: '0.98'
 configure_requires:
-  Module::Build: '0.38'
+  Module::Build::Tiny: '0.035'
 dynamic_config: 0
-generated_by: 'Minilla/v2.1.1, CPAN::Meta::Converter version 2.141520'
+generated_by: 'Minilla/v3.3.2, CPAN::Meta::Converter version 2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -26,7 +26,7 @@
 provides:
   Router::Simple:
     file: lib/Router/Simple.pm
-    version: '0.17'
+    version: '0.18'
   Router::Simple::Declare:
     file: lib/Router/Simple/Declare.pm
   Router::Simple::Route:
@@ -38,20 +38,25 @@
   List::Util: '0'
   Scalar::Util: '0'
   parent: '0'
-  perl: 5.008_001
+  perl: '5.010'
 resources:
   bugtracker: https://github.com/tokuhirom/p5-router-simple/issues
   homepage: https://github.com/tokuhirom/p5-router-simple
-  repository: git://github.com/tokuhirom/p5-router-simple.git
-version: '0.17'
+  repository: https://github.com/tokuhirom/p5-router-simple.git
+version: '0.18'
 x_contributors:
-  - 'Shawn M Moore <[email protected]>'
-  - 'Tatsuhiko Miyagawa <[email protected]>'
-  - 'nipotan <[email protected]>'
-  - 'Naoki Tomita <[email protected]>'
-  - 'Philippe Bruhat (BooK) <[email protected]>'
   - 'David Steinbrunner <[email protected]>'
-  - 'Neil Bowers <[email protected]>'
   - 'Fayland Lam <[email protected]>'
   - 'Maurice Aubrey <[email protected]>'
+  - 'Naoki Tomita <[email protected]>'
+  - 'Neil Bowers <[email protected]>'
+  - 'Philippe Bruhat (BooK) <[email protected]>'
+  - 'Ricardo Signes <[email protected]>'
+  - 'Shawn M Moore <[email protected]>'
+  - 'Tatsuhiko Miyagawa <[email protected]>'
   - 'Tokuhiro Matsuno <[email protected]>'
+  - 'kga <[email protected]>'
+  - 'nipotan <[email protected]>'
+  - 'polamjag <[email protected]>'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.020'
+x_static_install: 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/README.md 
new/Router-Simple-0.18/README.md
--- old/Router-Simple-0.17/README.md    2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/README.md    2026-11-05 10:46:23.000000000 +0100
@@ -41,7 +41,7 @@
     $router->match('/wiki/john');
     # => {controller => 'WikiPage', action => 'show', page => 'john' }
 
-':name' notation matches `qr{([^/]+)}`.
+':name' notation matches `qr{([^/]+)}`, and it will be captured.
 
 ## '\*' notation
 
@@ -60,7 +60,8 @@
     $router->match('/blog/2010');
     # => {controller => 'Blog', action => 'yearly', year => 2010 }
 
-'{year}' notation matches `qr{([^/]+)}`, and it will be captured.
+'{year}' notation matches `qr{([^/]+)}`, and it will be captured.  '{year}'
+behaves the same was as ':year'.
 
 ## '{year:\[0-9\]+}' notation
 
@@ -89,7 +90,9 @@
 
 - $router->method\_not\_allowed() : Boolean
 
-    This method returns last `$router->match()` call is rejected by HTTP 
method or not.
+    If the last attempt to match with `$router->match()` was rejected because
+    the HTTP method was disallowed (as opposed to, say, not matching any routed
+    paths) this method returns true.
 
 - $router->connect(\[$name, \] $pattern, \\%destination\[, \\%options\])
 
@@ -101,9 +104,11 @@
         $router->connect( '/blog/:id', { controller => 'Blog', action => 
'show' } );
         $router->connect( '/comment', { controller => 'Comment', action => 
'new_comment' }, {method => 'POST'} );
 
+    'connect' returns the router object, so 'connect' calls can be chained.
+
     `\%destination` will be used by _match_ method.
 
-    You can specify some optional things to `\%options`. The current
+    You can specify some optional things in `\%options`. The current
     version supports 'method', 'host', and 'on\_match'.
 
     - method
@@ -132,9 +137,9 @@
         successful or false otherwise. The first argument is `$env` which is
         either a PSGI environment or a request path, depending on what you
         pass to `match` method; the second is the routing variables that
-        would be returned if the match succeeds.
+        will be returned if the match succeeds.
 
-        The function can modify `$env` (in case it's a reference) and
+        The function can modify `$env` (if it's a reference) and
         `$match` in place to affect which variables are returned. This allows
         a wide range of transformations.
 
@@ -142,7 +147,7 @@
 
         $router->submapper('/entry/', {controller => 'Entry'})
 
-    This method is shorthand for creating new instance of 
[Router::Simple::Submapper](https://metacpan.org/pod/Router::Simple::Submapper).
+    This method is shorthand for creating new instance of 
[Router::Simple::SubMapper](https://metacpan.org/pod/Router%3A%3ASimple%3A%3ASubMapper).
 
     The arguments will be passed to `Router::Simple::SubMapper->new(%args)`.
 
@@ -168,7 +173,7 @@
     Match a URL against one of the routes contained.
 
     Will return undef if no valid match is found, otherwise a
-    result hashref and a 
[Router::Simple::Route](https://metacpan.org/pod/Router::Simple::Route) object 
is returned.
+    result hashref and a 
[Router::Simple::Route](https://metacpan.org/pod/Router%3A%3ASimple%3A%3ARoute) 
object is returned.
 
 - `$router->as_string()`
 
@@ -184,7 +189,7 @@
 
 # AUTHOR
 
-Tokuhiro Matsuno <tokuhirom AAJKLFJEF@ GMAIL COM>
+Tokuhiro Matsuno &lt;tokuhirom AAJKLFJEF@ GMAIL COM>
 
 # THANKS TO
 
@@ -198,13 +203,13 @@
 
 Router::Simple is inspired by [routes.py](http://routes.groovie.org/).
 
-[Path::Dispatcher](https://metacpan.org/pod/Path::Dispatcher) is similar, but 
so complex.
+[Path::Dispatcher](https://metacpan.org/pod/Path%3A%3ADispatcher) is similar, 
but so complex.
 
-[Path::Router](https://metacpan.org/pod/Path::Router) is heavy. It depends on 
[Moose](https://metacpan.org/pod/Moose).
+[Path::Router](https://metacpan.org/pod/Path%3A%3ARouter) is heavy. It depends 
on [Moose](https://metacpan.org/pod/Moose).
 
-[HTTP::Router](https://metacpan.org/pod/HTTP::Router) has many dependencies. 
It is not well documented.
+[HTTP::Router](https://metacpan.org/pod/HTTP%3A%3ARouter) has many 
dependencies. It is not well documented.
 
-[HTTPx::Dispatcher](https://metacpan.org/pod/HTTPx::Dispatcher) is my old one. 
It does not provide an OO-ish interface.
+[HTTPx::Dispatcher](https://metacpan.org/pod/HTTPx%3A%3ADispatcher) is my old 
one. It does not provide an OO-ish interface.
 
 # THANKS TO
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/cpanfile 
new/Router-Simple-0.18/cpanfile
--- old/Router-Simple-0.17/cpanfile     2014-12-02 07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/cpanfile     2026-11-05 10:46:23.000000000 +0100
@@ -1,4 +1,4 @@
-requires 'perl', '5.008_001';
+requires 'perl', '5.010';
 
 requires 'Class::Accessor::Lite', '0.05';
 requires 'List::Util';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/lib/Router/Simple/Route.pm 
new/Router-Simple-0.18/lib/Router/Simple/Route.pm
--- old/Router-Simple-0.17/lib/Router/Simple/Route.pm   2014-12-02 
07:58:37.000000000 +0100
+++ new/Router-Simple-0.18/lib/Router/Simple/Route.pm   2026-11-05 
10:46:23.000000000 +0100
@@ -27,11 +27,11 @@
         $row->{method} = $method;
 
         my $method_re = join '|', @{$method};
-        $row->{method_re} = qr{^(?:$method_re)$};
+        $row->{method_re} = qr{^(?:$method_re)\z};
     }
     if (my $host = $opt->{host}) {
         $row->{host} = $host;
-        $row->{host_re} = ref $host ? $host : qr(^\Q$host\E$);
+        $row->{host_re} = ref $host ? $host : qr(^\Q$host\E\z);
     }
 
     $row->{pattern} = $pattern;
@@ -65,7 +65,7 @@
             !gex;
             # for example, pattern '/comment/' will both match '/comment/' and 
'/comment'
             $pattern .= '?' if $opt->{directory_slash} and $pattern =~ m{\/$};
-            qr{^$pattern$};
+            qr{^$pattern\z};
         }
     };
     $row->{capture} = \@capture;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/lib/Router/Simple.pm 
new/Router-Simple-0.18/lib/Router/Simple.pm
--- old/Router-Simple-0.17/lib/Router/Simple.pm 2014-12-02 07:58:37.000000000 
+0100
+++ new/Router-Simple-0.18/lib/Router/Simple.pm 2026-11-05 10:46:23.000000000 
+0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 use 5.00800;
-our $VERSION = '0.17';
+our $VERSION = '0.18';
 use Router::Simple::SubMapper;
 use Router::Simple::Route;
 use List::Util qw/max/;
@@ -146,7 +146,7 @@
     $router->match('/wiki/john');
     # => {controller => 'WikiPage', action => 'show', page => 'john' }
 
-':name' notation matches C<qr{([^/]+)}>.
+':name' notation matches C<qr{([^/]+)}>, and it will be captured.
 
 =head2 '*' notation
 
@@ -165,7 +165,8 @@
     $router->match('/blog/2010');
     # => {controller => 'Blog', action => 'yearly', year => 2010 }
 
-'{year}' notation matches C<qr{([^/]+)}>, and it will be captured.
+'{year}' notation matches C<qr{([^/]+)}>, and it will be captured.  '{year}'
+behaves the same was as ':year'.
 
 =head2 '{year:[0-9]+}' notation
 
@@ -196,7 +197,9 @@
 
 =item $router->method_not_allowed() : Boolean
 
-This method returns last C<< $router->match() >> call is rejected by HTTP 
method or not.
+If the last attempt to match with C<< $router->match() >> was rejected because
+the HTTP method was disallowed (as opposed to, say, not matching any routed
+paths) this method returns true.
 
 =item $router->connect([$name, ] $pattern, \%destination[, \%options])
 
@@ -208,9 +211,11 @@
     $router->connect( '/blog/:id', { controller => 'Blog', action => 'show' } 
);
     $router->connect( '/comment', { controller => 'Comment', action => 
'new_comment' }, {method => 'POST'} );
 
+'connect' returns the router object, so 'connect' calls can be chained.
+
 C<\%destination> will be used by I<match> method.
 
-You can specify some optional things to C<\%options>. The current
+You can specify some optional things in C<\%options>. The current
 version supports 'method', 'host', and 'on_match'.
 
 =over 4
@@ -242,9 +247,9 @@
 successful or false otherwise. The first argument is C<$env> which is
 either a PSGI environment or a request path, depending on what you
 pass to C<match> method; the second is the routing variables that
-would be returned if the match succeeds.
+will be returned if the match succeeds.
 
-The function can modify C<$env> (in case it's a reference) and
+The function can modify C<$env> (if it's a reference) and
 C<$match> in place to affect which variables are returned. This allows
 a wide range of transformations.
 
@@ -254,7 +259,7 @@
 
     $router->submapper('/entry/', {controller => 'Entry'})
 
-This method is shorthand for creating new instance of 
L<Router::Simple::Submapper>.
+This method is shorthand for creating new instance of 
L<Router::Simple::SubMapper>.
 
 The arguments will be passed to C<< Router::Simple::SubMapper->new(%args) >>.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Router-Simple-0.17/t/15_trailing_newline.t 
new/Router-Simple-0.18/t/15_trailing_newline.t
--- old/Router-Simple-0.17/t/15_trailing_newline.t      1970-01-01 
01:00:00.000000000 +0100
+++ new/Router-Simple-0.18/t/15_trailing_newline.t      2026-11-05 
10:46:23.000000000 +0100
@@ -0,0 +1,21 @@
+use strict;
+use warnings;
+use Router::Simple;
+use Test::More;
+
+my $r = Router::Simple->new;
+$r->connect('/', { controller => 'Root' });
+$r->connect('/blog/{year:\d{4}}', { controller => 'Blog' }, { method => 'GET' 
});
+$r->connect('/user/{name}', { controller => 'User' }, { host => 'example.com' 
});
+
+my $env = sub { +{ PATH_INFO => $_[0], REQUEST_METHOD => $_[1] // 'GET', 
HTTP_HOST => $_[2] // 'example.com' } };
+
+ok $r->match($env->('/')),          'match /';
+ok !$r->match($env->("/\n")),       'do not match a trailing newline';
+ok $r->match($env->('/blog/2014')), 'match /blog/2014';
+ok !$r->match($env->("/blog/2014\n")), 'do not match a trailing newline after 
a placeholder';
+ok !$r->match($env->('/blog/2014', "GET\n")), 'do not match a trailing newline 
in the method';
+ok $r->match($env->('/user/foo')), 'match /user/foo';
+ok !$r->match($env->('/user/foo', 'GET', "example.com\n")), 'do not match a 
trailing newline in the host';
+
+done_testing;

++++++ _scmsync.obsinfo ++++++
mtime: 1793964905
commit: eaa65e8d5e4a4a27ef8f556e8fa91a5beaea1a7b01d522cab63553d121e92f56
url: https://src.opensuse.org/perl/perl-Router-Simple
revision: eaa65e8d5e4a4a27ef8f556e8fa91a5beaea1a7b01d522cab63553d121e92f56
projectscmsync: https://src.opensuse.org/perl/_ObsPrj

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-11-06 12:35:05.000000000 +0100
@@ -0,0 +1 @@
+.osc

Reply via email to