Hello community,

here is the log from the commit of package perl-Mojolicious for 
openSUSE:Factory checked in at 2017-06-07 09:52:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Mojolicious (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Mojolicious.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Mojolicious"

Wed Jun  7 09:52:13 2017 rev:68 rq:499918 version:7.32

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Mojolicious/perl-Mojolicious.changes        
2017-05-10 20:34:43.408558452 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Mojolicious.new/perl-Mojolicious.changes   
2017-06-07 09:52:16.177424144 +0200
@@ -1,0 +2,13 @@
+Wed May 31 06:09:13 UTC 2017 - [email protected]
+
+- updated to 7.32
+   see /usr/share/doc/packages/perl-Mojolicious/Changes
+
+  7.32  2017-05-28
+    - Added -f option to get command.
+    - Improved get command with support for passing request data by redirecting
+      STDIN.
+    - Fixed memory leak in Mojo::IOLoop::Client that sometimes prevented the
+      connect timeout from working correctly for TLS handshakes.
+
+-------------------------------------------------------------------

Old:
----
  Mojolicious-7.31.tar.gz

New:
----
  Mojolicious-7.32.tar.gz

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

Other differences:
------------------
++++++ perl-Mojolicious.spec ++++++
--- /var/tmp/diff_new_pack.6Osez6/_old  2017-06-07 09:52:16.665355190 +0200
+++ /var/tmp/diff_new_pack.6Osez6/_new  2017-06-07 09:52:16.669354625 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           perl-Mojolicious
-Version:        7.31
+Version:        7.32
 Release:        0
 %define cpan_name Mojolicious
 Summary:        Real-time web framework

++++++ Mojolicious-7.31.tar.gz -> Mojolicious-7.32.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/Changes new/Mojolicious-7.32/Changes
--- old/Mojolicious-7.31/Changes        2017-04-23 20:56:24.000000000 +0200
+++ new/Mojolicious-7.32/Changes        2017-05-28 13:58:23.000000000 +0200
@@ -1,4 +1,11 @@
 
+7.32  2017-05-28
+  - Added -f option to get command.
+  - Improved get command with support for passing request data by redirecting
+    STDIN.
+  - Fixed memory leak in Mojo::IOLoop::Client that sometimes prevented the
+    connect timeout from working correctly for TLS handshakes.
+
 7.31  2017-04-23
   - Removed deprecated files, slurp and spurt functions from Mojo::Util.
   - Removed deprecated parts attribute from Mojo::Home.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/META.json 
new/Mojolicious-7.32/META.json
--- old/Mojolicious-7.31/META.json      2017-04-24 09:49:57.000000000 +0200
+++ new/Mojolicious-7.32/META.json      2017-05-30 19:07:29.000000000 +0200
@@ -4,13 +4,13 @@
       "Sebastian Riedel <[email protected]>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter 
version 2.150010",
+   "generated_by" : "ExtUtils::MakeMaker version 7.26, CPAN::Meta::Converter 
version 2.150010",
    "license" : [
       "artistic_2"
    ],
    "meta-spec" : {
       "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec";,
-      "version" : "2"
+      "version" : 2
    },
    "name" : "Mojolicious",
    "no_index" : {
@@ -58,6 +58,6 @@
       },
       "x_IRC" : "irc://irc.perl.org/#mojo"
    },
-   "version" : "7.31",
-   "x_serialization_backend" : "JSON::PP version 2.27400"
+   "version" : "7.32",
+   "x_serialization_backend" : "JSON::PP version 2.94"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/META.yml 
new/Mojolicious-7.32/META.yml
--- old/Mojolicious-7.31/META.yml       2017-04-24 09:49:56.000000000 +0200
+++ new/Mojolicious-7.32/META.yml       2017-05-30 19:07:29.000000000 +0200
@@ -7,7 +7,7 @@
 configure_requires:
   ExtUtils::MakeMaker: '0'
 dynamic_config: 0
-generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 
2.150010'
+generated_by: 'ExtUtils::MakeMaker version 7.26, CPAN::Meta::Converter version 
2.150010'
 license: artistic_2
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -31,5 +31,5 @@
   homepage: http://mojolicious.org
   license: http://www.opensource.org/licenses/artistic-license-2.0
   repository: https://github.com/kraih/mojo.git
-version: '7.31'
+version: '7.32'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/lib/Mojo/IOLoop/Client.pm 
new/Mojolicious-7.32/lib/Mojo/IOLoop/Client.pm
--- old/Mojolicious-7.31/lib/Mojo/IOLoop/Client.pm      2017-02-24 
15:57:10.000000000 +0100
+++ new/Mojolicious-7.32/lib/Mojo/IOLoop/Client.pm      2017-05-25 
12:06:29.000000000 +0200
@@ -165,6 +165,7 @@
   $reactor->remove($handle);
 
   # Start TLS handshake
+  weaken $self;
   my $tls = Mojo::IOLoop::TLS->new($handle)->reactor($self->reactor);
   $tls->on(upgrade => sub { $self->_cleanup->emit(connect => pop) });
   $tls->on(error => sub { $self->emit(error => pop) });
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/lib/Mojolicious/Command/get.pm 
new/Mojolicious-7.32/lib/Mojolicious/Command/get.pm
--- old/Mojolicious-7.31/lib/Mojolicious/Command/get.pm 2017-02-24 
16:07:20.000000000 +0100
+++ new/Mojolicious-7.32/lib/Mojolicious/Command/get.pm 2017-05-28 
17:18:24.000000000 +0200
@@ -15,17 +15,23 @@
 sub run {
   my ($self, @args) = @_;
 
+  # Data from STDIN
+  vec(my $r, fileno(STDIN), 1) = 1;
+  my $in = !-t STDIN && select($r, undef, undef, 0) ? join '', <STDIN> : undef;
+
   my $ua = Mojo::UserAgent->new(ioloop => Mojo::IOLoop->singleton);
+  my %form;
   getopt \@args,
-    'C|charset=s'            => \my $charset,
-    'c|content=s'            => \(my $content = ''),
-    'H|header=s'             => \my @headers,
+    'C|charset=s' => \my $charset,
+    'c|content=s' => \$in,
+    'f|form=s'    => sub { _form(\%form) if $_[1] =~ /^(.+)=(\@?)(.+)$/ },
+    'H|header=s'  => \my @headers,
     'i|inactivity-timeout=i' => sub { $ua->inactivity_timeout($_[1]) },
-    'M|method=s'             => \(my $method = 'GET'),
-    'o|connect-timeout=i'    => sub { $ua->connect_timeout($_[1]) },
-    'r|redirect'             => \my $redirect,
-    'S|response-size=i'      => sub { $ua->max_response_size($_[1]) },
-    'v|verbose'              => \my $verbose;
+    'M|method=s' => \(my $method = 'GET'),
+    'o|connect-timeout=i' => sub { $ua->connect_timeout($_[1]) },
+    'r|redirect'          => \my $redirect,
+    'S|response-size=i'   => sub { $ua->max_response_size($_[1]) },
+    'v|verbose'           => \my $verbose;
 
   @args = map { decode 'UTF-8', $_ } @args;
   die $self->usage unless my $url = shift @args;
@@ -62,7 +68,8 @@
   # Switch to verbose for HEAD requests
   $verbose = 1 if $method eq 'HEAD';
   STDOUT->autoflush(1);
-  my $tx = $ua->start($ua->build_tx($method, $url, \%headers, $content));
+  my @content = %form ? (form => \%form) : defined $in ? ($in) : ();
+  my $tx = $ua->start($ua->build_tx($method, $url, \%headers, @content));
   my $res = $tx->result;
 
   # JSON Pointer
@@ -74,6 +81,8 @@
   _select($buffer, $selector, $charset, @args);
 }
 
+sub _form { push @{$_[0]{$1}}, $2 ? {file => $3} : $3 }
+
 sub _header { $_[0]->build_start_line, $_[0]->headers->to_string, "\n\n" }
 
 sub _json {
@@ -133,7 +142,10 @@
     mojo get mojolicious.org
     mojo get -v -r -o 25 -i 50 google.com
     mojo get -v -H 'Host: mojolicious.org' -H 'Accept: */*' mojolicious.org
-    mojo get -M POST -H 'Content-Type: text/trololo' -c 'trololo' perl.org
+    mojo get mojolicious.org > example.html
+    mojo get -M PUT mojolicious.org < example.html
+    mojo get -f 'q=Mojolicious' -f 'size=5' https://metacpan.org/search
+    mojo get -M POST -f '[email protected]' mojolicious.org
     mojo get mojolicious.org 'head > title' text
     mojo get mojolicious.org .footer all
     mojo get mojolicious.org a attr href
@@ -146,7 +158,9 @@
     -C, --charset <charset>              Charset of HTML/XML content, defaults
                                          to auto-detection
     -c, --content <content>              Content to send with request
-    -H, --header <name:value>            Additional HTTP header
+    -f, --form <name=value>              One or more form values and file
+                                         uploads
+    -H, --header <name:value>            One or more additional HTTP headers
     -h, --help                           Show this summary of available options
         --home <path>                    Path to home directory of your
                                          application, defaults to the value of
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/lib/Mojolicious/Guides/Cookbook.pod 
new/Mojolicious-7.32/lib/Mojolicious/Guides/Cookbook.pod
--- old/Mojolicious-7.31/lib/Mojolicious/Guides/Cookbook.pod    2017-03-05 
23:07:49.000000000 +0100
+++ new/Mojolicious-7.32/lib/Mojolicious/Guides/Cookbook.pod    2017-05-28 
14:08:53.000000000 +0200
@@ -1447,8 +1447,27 @@
 
 The request can be customized as well.
 
-  $ mojo get -M POST -c 'Hello!' http://mojolicious.org
-  $ mojo get -H 'X-Bender: Bite my shiny metal ass!' http://google.com
+  $ mojo get -M POST -H 'X-Bender: Bite my shiny metal ass!' http://google.com
+
+Store response data by redirecting C<STDOUT>.
+
+  $ mojo get mojolicious.org > example.html
+
+Pass request data by redirecting C<STDIN>.
+
+  $ mojo get -M PUT mojolicious.org < example.html
+
+Or use the output of another program.
+
+  $ echo 'Hello World' | mojo get -M PUT http://mojolicious.org
+
+Submit forms as C<application/x-www-form-urlencoded> content.
+
+  $ mojo get -M POST -f 'q=Mojo' -f 'size=5' https://metacpan.org/search
+
+And upload files as C<multipart/form-data> content.
+
+  $ mojo get -M POST -f '[email protected]' mojolicious.org
 
 You can follow redirects and view the headers for all messages.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Mojolicious-7.31/lib/Mojolicious/Guides/Rendering.pod 
new/Mojolicious-7.32/lib/Mojolicious/Guides/Rendering.pod
--- old/Mojolicious-7.31/lib/Mojolicious/Guides/Rendering.pod   2017-03-05 
23:05:31.000000000 +0100
+++ new/Mojolicious-7.32/lib/Mojolicious/Guides/Rendering.pod   2017-05-06 
16:25:50.000000000 +0200
@@ -820,7 +820,7 @@
     return $c->render unless $validation->has_data;
 
     # Validate parameters ("pass_again" depends on "pass")
-    $validation->required('user')->size(1, 20)->like(qr/^[e-t]+$/);
+    $validation->required('user')->size(1, 20)->like(qr/^[a-z0-9]+$/);
     $validation->required('pass_again')->equal_to('pass')
       if $validation->optional('pass')->size(7, 500)->is_valid;
 
@@ -842,7 +842,7 @@
     </head>
     <body>
       %= form_for index => begin
-        %= label_for user => 'Username (required, 1-20 characters, only e-t)'
+        %= label_for user => 'Username (required, 1-20 characters, a-z/0-9)'
         <br>
         %= text_field 'user', id => 'user'
         %= submit_button
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/lib/Mojolicious/Renderer.pm 
new/Mojolicious-7.32/lib/Mojolicious/Renderer.pm
--- old/Mojolicious-7.31/lib/Mojolicious/Renderer.pm    2017-01-09 
18:47:43.000000000 +0100
+++ new/Mojolicious-7.32/lib/Mojolicious/Renderer.pm    2017-05-18 
23:18:48.000000000 +0200
@@ -17,8 +17,8 @@
 has paths => sub { [] };
 
 # Bundled templates
-my $TEMPLATES = Mojo::Home->new(Mojo::Home->new->mojo_lib_dir)
-  ->child('Mojolicious', 'resources', 'templates');
+my $TEMPLATES = Mojo::Home->new->mojo_lib_dir->child('Mojolicious', 
'resources',
+  'templates');
 
 sub DESTROY { Mojo::Util::_teardown($_) for @{shift->{namespaces}} }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/lib/Mojolicious.pm 
new/Mojolicious-7.32/lib/Mojolicious.pm
--- old/Mojolicious-7.31/lib/Mojolicious.pm     2017-04-06 14:04:12.000000000 
+0200
+++ new/Mojolicious-7.32/lib/Mojolicious.pm     2017-04-24 09:50:41.000000000 
+0200
@@ -58,7 +58,7 @@
 has validator => sub { Mojolicious::Validator->new };
 
 our $CODENAME = 'Doughnut';
-our $VERSION  = '7.31';
+our $VERSION  = '7.32';
 
 sub AUTOLOAD {
   my $self = shift;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Mojolicious-7.31/t/mojolicious/commands.t 
new/Mojolicious-7.32/t/mojolicious/commands.t
--- old/Mojolicious-7.31/t/mojolicious/commands.t       2017-03-05 
19:39:47.000000000 +0100
+++ new/Mojolicious-7.32/t/mojolicious/commands.t       2017-05-28 
17:18:20.000000000 +0200
@@ -149,15 +149,17 @@
   $get->run('/');
 }
 like $buffer, qr/Your Mojo is working!/, 'right output';
+my $template
+  = '<p><%= param "just" %> <%= $c->req->headers->header("X-Test") %></p>';
 $get->app->plugins->once(
-  before_dispatch => sub { shift->render(text => '<p>works</p>') });
+  before_dispatch => sub { shift->render(inline => $template) });
 $buffer = '';
 {
   open my $handle, '>', \$buffer;
   local *STDOUT = $handle;
-  $get->run('/html', 'p', 'text');
+  $get->run('-f', 'just=works', '-H', 'X-Test: fine', '/html', 'p', 'text');
 }
-like $buffer, qr/works/, 'right output';
+like $buffer, qr/works fine/, 'right output';
 $get->app->plugins->once(
   before_dispatch => sub { shift->render(json => {works => 'too'}) });
 $buffer = '';
@@ -252,7 +254,7 @@
 ok -e $app->rel_file('my_app/lib/MyApp.pm'),  'application class exists';
 ok -e $app->rel_file('my_app/lib/MyApp/Controller/Example.pm'),
   'controller exists';
-ok -e $app->rel_file('my_app/my_app.conf'),  'config file exists';
+ok -e $app->rel_file('my_app/my_app.conf'),       'config file exists';
 ok -e $app->rel_file('my_app/t/basic.t'),         'test exists';
 ok -e $app->rel_file('my_app/public/index.html'), 'static file exists';
 ok -e $app->rel_file('my_app/templates/layouts/default.html.ep'),


Reply via email to