Hello community,

here is the log from the commit of package perl-Inline for openSUSE:Factory 
checked in at 2019-04-30 13:05:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Inline (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Inline.new.5536 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Inline"

Tue Apr 30 13:05:58 2019 rev:30 rq:699376 version:0.83

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Inline/perl-Inline.changes  2019-04-03 
10:51:37.265935115 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Inline.new.5536/perl-Inline.changes        
2019-04-30 13:05:58.745903194 +0200
@@ -1,0 +2,13 @@
+Mon Apr 29 05:15:16 UTC 2019 - Stephan Kulow <[email protected]>
+
+- updated to 0.83
+   see /usr/share/doc/packages/perl-Inline/Changes
+
+  0.83 Sun 28 Apr 2019 11:30:37 AM CEST
+   - Reference Inline::Module in docs related to installation (PR#68
+     @nrdvana++)
+   - create_config_file: don't accidentally skip rest of directory scanning
+     (PR#73 @eserte++)
+   - Merge per-language config, not overwrite (PR#71 @mohawk++)
+
+-------------------------------------------------------------------

Old:
----
  Inline-0.82.tar.gz

New:
----
  Inline-0.83.tar.gz

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

Other differences:
------------------
++++++ perl-Inline.spec ++++++
--- /var/tmp/diff_new_pack.UF69TG/_old  2019-04-30 13:05:59.497902514 +0200
+++ /var/tmp/diff_new_pack.UF69TG/_new  2019-04-30 13:05:59.505902507 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           perl-Inline
-Version:        0.82
+Version:        0.83
 Release:        0
 %define cpan_name Inline
 Summary:        Write Perl Subroutines in Other Programming Languages

++++++ Inline-0.82.tar.gz -> Inline-0.83.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/Changes new/Inline-0.83/Changes
--- old/Inline-0.82/Changes     2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/Changes     2019-04-28 11:30:45.000000000 +0200
@@ -1,3 +1,10 @@
+0.83 Sun 28 Apr 2019 11:30:37 AM CEST
+ - Reference Inline::Module in docs related to installation (PR#68
+   @nrdvana++)
+ - create_config_file: don't accidentally skip rest of directory scanning
+   (PR#73 @eserte++)
+ - Merge per-language config, not overwrite (PR#71 @mohawk++)
+
 0.82 Sun 31 Mar 2019 04:10:24 PM CEST
  - Another fix for @INC PR#69 TINITA
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/META.json new/Inline-0.83/META.json
--- old/Inline-0.82/META.json   2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/META.json   2019-04-28 11:30:45.000000000 +0200
@@ -59,7 +59,7 @@
          "web" : "https://github.com/ingydotnet/inline-pm";
       }
    },
-   "version" : "0.82",
+   "version" : "0.83",
    "x_generated_by_perl" : "v5.24.1",
    "x_serialization_backend" : "Cpanel::JSON::XS version 4.02"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/META.yml new/Inline-0.83/META.yml
--- old/Inline-0.82/META.yml    2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/META.yml    2019-04-28 11:30:45.000000000 +0200
@@ -29,6 +29,6 @@
   bugtracker: https://github.com/ingydotnet/inline-pm/issues
   homepage: https://github.com/ingydotnet/inline-pm
   repository: https://github.com/ingydotnet/inline-pm.git
-version: '0.82'
+version: '0.83'
 x_generated_by_perl: v5.24.1
 x_serialization_backend: 'YAML::Tiny version 1.73'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/Makefile.PL new/Inline-0.83/Makefile.PL
--- old/Inline-0.82/Makefile.PL 2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/Makefile.PL 2019-04-28 11:30:45.000000000 +0200
@@ -25,7 +25,7 @@
     "Test::More" => "0.88",
     "Test::Warn" => "0.23"
   },
-  "VERSION" => "0.82",
+  "VERSION" => "0.83",
   "test" => {
     "TESTS" => "t/*.t"
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/README new/Inline-0.83/README
--- old/Inline-0.82/README      2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/README      2019-04-28 11:30:45.000000000 +0200
@@ -4,7 +4,7 @@
 
 VERSION
 
-    This document describes Inline version 0.82.
+    This document describes Inline version 0.83.
 
 SYNOPSIS
 
@@ -288,6 +288,11 @@
       'file.ext'.) These methods are less frequently used but may be useful
       in some situations.
 
+      For instance, to load your C++ code from a file named the same as
+      your perl module with a swapped file extension, you can use:
+
+          use Inline CPP => (__FILE__ =~ s/\.pm$/.cpp/r);
+
     Shorthand
 
       If you are using the 'DATA' or 'file' methods described above and
@@ -637,7 +642,8 @@
       used only for modules, and it must match the global variable
       $VERSION. Additionally, this option should used if (and only if) a
       module is being set up to be installed permanently into the Perl
-      sitelib tree. Inline will croak if you use it otherwise.
+      sitelib tree using Inline::MakeMaker (NOT used by Inline::Module).
+      Inline will croak if you use it otherwise.
 
       The presence of the version parameter is the official way to let
       Inline know that your code is an installable/installed module. Inline
@@ -869,9 +875,21 @@
 
 WRITING MODULES WITH INLINE
 
-    Writing CPAN modules that use C code is easy with Inline. Let's say
-    that you wanted to write a module called Math::Simple. Start by using
-    the following command:
+    The current preferred way to author CPAN modules with Inline is to use
+    Inline::Module (distributed separately). Inline ships with
+    Inline::MakeMaker, which helps you set up a Makefile.PL that invokes
+    Inline at install time to compile all the code before it gets
+    installed, but the resulting module still depends on Inline and the
+    language support module like Inline::C. In order to avoid this
+    dependency, what you really want to do is convert your distribution to
+    plain XS before uploading it to CPAN. Inline::Module fills that role,
+    and also integrates well with more modern authoring tools.
+
+    See Inline::Module for details on that approach, or continue reading
+    below for the older Inline::MakeMaker technique.
+
+    Let's say that you wanted to write a module called Math::Simple. Start
+    by using the following command:
 
         h2xs -PAXn Math::Simple
 
@@ -913,7 +931,7 @@
     The important things to note here are that you must specify a name and
     version parameter. The name must match your module's package name. The
     version parameter must match your module's $VERSION variable and they
-    must be of the form /^\d\.\d\d$/.
+    must be considered valid by version::parse.
 
     NOTE: These are Inline's sanity checks to make sure you know what
     you're doing before uploading your code to CPAN. They insure that once
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/lib/Inline/FAQ.pod 
new/Inline-0.83/lib/Inline/FAQ.pod
--- old/Inline-0.82/lib/Inline/FAQ.pod  2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/lib/Inline/FAQ.pod  2019-04-28 11:30:45.000000000 +0200
@@ -40,6 +40,20 @@
 designed to give you the most flexibility/ease-of-use. Never be afraid to nuke
 'em. They'll just pop right back next time they're needed. :)
 
+=head2 What is the best way to package Inline code for CPAN?
+
+This distribution includes Inline::MakeMaker, described below, which takes
+special steps during the installation of your module to make sure the code
+gets compiled and installed, rather than compiled by users at runtime. But,
+users of your module need to install Inline and the language support module
+like Inline::CPP as prerequisites for your module.
+
+A better way to distribute your module is with Inline::Module, which takes
+special steps to remove dependencies on Inline::* and convert it to a plain XS
+module during the construction of your distribution before you upload it to
+CPAN. It also integrates easily with Dist::Zilla and other modern authoring
+tools for a more streamlined authoring experience.
+
 =head2 Whatever happened to the C<SITE_INSTALL> option?
 
 C<SITE_INSTALL> is gone. I was going to leave it in and change the semantics,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/lib/Inline/Foo.pm 
new/Inline-0.83/lib/Inline/Foo.pm
--- old/Inline-0.82/lib/Inline/Foo.pm   2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/lib/Inline/Foo.pm   2019-04-28 11:30:45.000000000 +0200
@@ -3,7 +3,7 @@
 
 require Inline;
 our @ISA = qw(Inline);
-our $VERSION = '0.82';
+our $VERSION = '0.83';
 
 use Carp;
 use File::Spec;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/lib/Inline/MakeMaker.pm 
new/Inline-0.83/lib/Inline/MakeMaker.pm
--- old/Inline-0.82/lib/Inline/MakeMaker.pm     2019-03-31 16:10:32.000000000 
+0200
+++ new/Inline-0.83/lib/Inline/MakeMaker.pm     2019-04-28 11:30:45.000000000 
+0200
@@ -7,7 +7,7 @@
 use version;
 
 our @EXPORT = qw(WriteMakefile WriteInlineMakefile);
-our $VERSION = '0.82';
+our $VERSION = '0.83';
 
 sub WriteInlineMakefile {
     carp <<EOF;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/lib/Inline.pm 
new/Inline-0.83/lib/Inline.pm
--- old/Inline-0.82/lib/Inline.pm       2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/lib/Inline.pm       2019-04-28 11:30:45.000000000 +0200
@@ -1,7 +1,7 @@
 use strict; use warnings;
 package Inline;
 
-our $VERSION = '0.82';
+our $VERSION = '0.83';
 
 use Inline::denter;
 use Config;
@@ -138,20 +138,20 @@
             Inline::Files::get_filename($pkg)
            ) {
             $o->read_inline_file;
-            $o->{CONFIG} = handle_language_config(@config);
+            $o->{CONFIG} = handle_language_config($o->{CONFIG}, @config);
         }
         elsif ($option eq 'DATA' or not $option) {
-            $o->{CONFIG} = handle_language_config(@config);
+            $o->{CONFIG} = handle_language_config($o->{CONFIG}, @config);
             push @DATA_OBJS, $o;
             return;
         }
         elsif (uc $option eq uc 'Config') {
-            $CONFIG{$pkg}{$language_id} = handle_language_config(@config);
+            $CONFIG{$pkg}{$language_id} = 
handle_language_config($CONFIG{$pkg}{$language_id}, @config);
             return;
         }
         else {
             $o->receive_code($option);
-            $o->{CONFIG} = handle_language_config(@config);
+            $o->{CONFIG} = handle_language_config($o->{CONFIG}, @config);
         }
     }
     else {
@@ -191,7 +191,7 @@
     $o->{API}{script} = $script;
     $o->{API}{language_id} = $language_id;
     $o->receive_code($code);
-    $o->{CONFIG} = handle_language_config(@config);
+    $o->{CONFIG} = handle_language_config($o->{CONFIG}, @config);
 
     $o->glue;
 }
@@ -590,6 +590,7 @@
 # Process the config options that apply to a particular language
 #==============================================================================
 sub handle_language_config {
+    my %merge_with = %{ shift || {} };
     my @values;
     while (@_) {
         my ($key, $value) = (uc shift, shift);
@@ -604,7 +605,7 @@
             push @values, $key, $value;
         }
     }
-    return {@values};
+    return {%merge_with, @values};
 }
 
 #==============================================================================
@@ -843,7 +844,6 @@
 
     my ($lib, $mod, $register, %checked,
         %languages, %types, %modules, %suffixes);
-  LIB:
     for my $lib (@INC) {
         next unless -d File::Spec->catdir($lib,"Inline");
         opendir LIB, File::Spec->catdir($lib,"Inline")
@@ -851,7 +851,7 @@
         while ($mod = readdir(LIB)) {
             next unless $mod =~ /\.pm$/;
             $mod =~ s/\.pm$//;
-            next LIB if ($checked{$mod}++);
+            next if ($checked{$mod}++);
             if ($mod eq 'Config') {     # Skip Inline::Config
                 warn M14_usage_Config();
                 next;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/lib/Inline.pod 
new/Inline-0.83/lib/Inline.pod
--- old/Inline-0.82/lib/Inline.pod      2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/lib/Inline.pod      2019-04-28 11:30:45.000000000 +0200
@@ -12,7 +12,7 @@
 
 =head1 VERSION
 
-This document describes L<Inline> version B<0.82>.
+This document describes L<Inline> version B<0.83>.
 
 =head1 SYNOPSIS
 
@@ -289,6 +289,11 @@
 '.>file.ext' instead of simply 'file.ext'.) These methods are less frequently
 used but may be useful in some situations.
 
+For instance, to load your C++ code from a file named the same as your perl
+module with a swapped file extension, you can use:
+
+    use Inline CPP => (__FILE__ =~ s/\.pm$/.cpp/r);
+
 =item Shorthand
 
 If you are using the 'DATA' or 'file' methods described above B<and> there are
@@ -629,8 +634,9 @@
 Specifies the version number of the Inline extension object. It is used
 B<only> for modules, and it must match the global variable $VERSION.
 Additionally, this option should used if (and only if) a module is being set
-up to be installed permanently into the Perl sitelib tree. Inline will croak
-if you use it otherwise.
+up to be installed permanently into the Perl sitelib tree using
+Inline::MakeMaker (NOT used by Inline::Module). Inline will croak if you use
+it otherwise.
 
 The presence of the C<version> parameter is the official way to let Inline
 know that your code is an installable/installed module. Inline will never
@@ -861,9 +867,20 @@
 
 =head1 WRITING MODULES WITH INLINE
 
-Writing CPAN modules that use C code is easy with Inline. Let's say that you
-wanted to write a module called C<Math::Simple>. Start by using the
-following command:
+The current preferred way to author CPAN modules with Inline is to use
+Inline::Module (distributed separately). Inline ships with Inline::MakeMaker,
+which helps you set up a Makefile.PL that invokes Inline at install time to
+compile all the code before it gets installed, but the resulting module still
+depends on Inline and the language support module like Inline::C. In order to
+avoid this dependency, what you really want to do is convert your distribution
+to plain XS before uploading it to CPAN. Inline::Module fills that role, and
+also integrates well with more modern authoring tools.
+
+See Inline::Module for details on that approach, or continue reading below for
+the older Inline::MakeMaker technique.
+
+Let's say that you wanted to write a module called C<Math::Simple>. Start by
+using the following command:
 
     h2xs -PAXn Math::Simple
 
@@ -905,7 +922,7 @@
 The important things to note here are that you B<must> specify a C<name> and
 C<version> parameter. The C<name> must match your module's package name. The
 C<version> parameter must match your module's C<$VERSION> variable and they
-must be of the form C</^\d\.\d\d$/>.
+must be considered valid by C<version::parse>.
 
 NOTE: These are Inline's sanity checks to make sure you know what you're doing
       before uploading your code to CPAN. They insure that once the module has
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Inline-0.82/t/02config.t new/Inline-0.83/t/02config.t
--- old/Inline-0.82/t/02config.t        2019-03-31 16:10:32.000000000 +0200
+++ new/Inline-0.83/t/02config.t        2019-04-28 11:30:45.000000000 +0200
@@ -15,6 +15,7 @@
 
 ok(test2('test2'), 'PATTERN');
 use Inline Foo => ConFig => ENABLE => 'BaR';
+use Inline Foo => ConFig =>; # check accumulates instead of reset
 use Inline Foo => <<'END_OF_FOO', PAtTERN => 'gogo-';
 gogo-sub test2 {
     bar-return $_[0] gogo-eq 'test2';


Reply via email to