Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package perl-Syntax-Keyword-Try for openSUSE:Factory checked in at 2021-08-31 19:55:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Syntax-Keyword-Try (Old)
and /work/SRC/openSUSE:Factory/.perl-Syntax-Keyword-Try.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Syntax-Keyword-Try"
Tue Aug 31 19:55:41 2021 rev:12 rq:915220 version:0.25
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Syntax-Keyword-Try/perl-Syntax-Keyword-Try.changes 2021-05-12 19:33:30.222732858 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Syntax-Keyword-Try.new.1899/perl-Syntax-Keyword-Try.changes 2021-08-31 19:56:35.254029696 +0200
@@ -1,0 +2,13 @@
+Wed Jun 2 03:07:19 UTC 2021 - Tina M��ller
+
+- updated to 0.25
+ see /usr/share/doc/packages/perl-Syntax-Keyword-Try/Changes
+
+ 0.25 2021-06-01
+ [CHANGES]
+ * Rewrite parsing logic to use XS::Parse::Keyword 0.06
+ * Removed the new-deprecated `try do { ... }` experimental syntax
+ * Updated docs now that 5.34 is officially released, including
+ `use feature 'try'`.
+
+-------------------------------------------------------------------
Old:
----
Syntax-Keyword-Try-0.24.tar.gz
New:
----
Syntax-Keyword-Try-0.25.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Syntax-Keyword-Try.spec ++++++
--- /var/tmp/diff_new_pack.pTWaq2/_old 2021-08-31 19:56:35.678030283 +0200
+++ /var/tmp/diff_new_pack.pTWaq2/_new 2021-08-31 19:56:35.682030288 +0200
@@ -18,7 +18,7 @@
%define cpan_name Syntax-Keyword-Try
Name: perl-Syntax-Keyword-Try
-Version: 0.24
+Version: 0.25
Release: 0
Summary: C syntax for perl
License: Artistic-1.0 OR GPL-1.0-or-later
@@ -30,6 +30,9 @@
BuildRequires: perl(ExtUtils::CBuilder)
BuildRequires: perl(Module::Build) >= 0.400400
BuildRequires: perl(Test::More) >= 0.88
+BuildRequires: perl(XS::Parse::Keyword) >= 0.06
+BuildRequires: perl(XS::Parse::Keyword::Builder) >= 0.06
+Requires: perl(XS::Parse::Keyword) >= 0.06
%{perl_requires}
%description
@@ -44,10 +47,9 @@
for perl code.
Syntax similar to this module has now been added to core perl, starting at
-development version 5.33.7, and is expected to become generally available
-when perl 5.34 is released. If you are writing new code, it is suggested
-that you instead use the Feature::Compat::Try module instead, as that will
-enable the core feature on those supported perl versions, falling back to
+version 5.34.0. If you are writing new code, it is suggested that you
+instead use the Feature::Compat::Try module instead, as that will enable
+the core feature on those supported perl versions, falling back to
'Syntax::Keyword::Try' on older perls.
%prep
++++++ Syntax-Keyword-Try-0.24.tar.gz -> Syntax-Keyword-Try-0.25.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/Build.PL new/Syntax-Keyword-Try-0.25/Build.PL
--- old/Syntax-Keyword-Try-0.24/Build.PL 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/Build.PL 2021-06-01 22:49:17.000000000 +0200
@@ -3,6 +3,7 @@
use warnings;
use Module::Build;
+use XS::Parse::Keyword::Builder;
my $build = Module::Build->new(
module_name => "Syntax::Keyword::Try",
@@ -11,9 +12,11 @@
},
configure_requires => {
'Module::Build' => '0.4004', # test_requires
+ 'XS::Parse::Keyword::Builder' => '0.06',
},
requires => {
'perl' => '5.014', # pluggable keywords, XOP
+ 'XS::Parse::Keyword' => '0.06',
},
license => 'perl',
create_license => 1,
@@ -27,4 +30,6 @@
extra_compiler_flags => [qw( -Ihax )],
);
+XS::Parse::Keyword::Builder->extend_module_build( $build );
+
$build->create_build_script;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/Changes new/Syntax-Keyword-Try-0.25/Changes
--- old/Syntax-Keyword-Try-0.24/Changes 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/Changes 2021-06-01 22:49:17.000000000 +0200
@@ -1,5 +1,12 @@
Revision history for Syntax-Keyword-Try
+0.25 2021-06-01
+ [CHANGES]
+ * Rewrite parsing logic to use XS::Parse::Keyword 0.06
+ * Removed the new-deprecated `try do { ... }` experimental syntax
+ * Updated docs now that 5.34 is officially released, including
+ `use feature 'try'`.
+
0.24 2021-05-10
[CHANGES]
* Deprecate the `try do { ... }` (experimental) syntax now that
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/MANIFEST new/Syntax-Keyword-Try-0.25/MANIFEST
--- old/Syntax-Keyword-Try-0.24/MANIFEST 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/MANIFEST 2021-06-01 22:49:17.000000000 +0200
@@ -1,9 +1,7 @@
Build.PL
Changes
-hax/lexer-additions.c.inc
hax/perl-additions.c.inc
hax/perl-backcompat.c.inc
-hax/wrap_keyword_plugin.c.inc
lib/Syntax/Keyword/Try.pm
lib/Syntax/Keyword/Try.xs
lib/Syntax/Keyword/Try/Deparse.pm
@@ -24,8 +22,6 @@
t/14try-localises.t
t/15context.t
t/16final-expr.t
-t/20try-do.t
-t/21try-do-finally.t
t/30compat.t
t/70deparse.t
t/80await+SKT.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/META.json new/Syntax-Keyword-Try-0.25/META.json
--- old/Syntax-Keyword-Try-0.24/META.json 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/META.json 2021-06-01 22:49:17.000000000 +0200
@@ -21,11 +21,13 @@
},
"configure" : {
"requires" : {
- "Module::Build" : "0.4004"
+ "Module::Build" : "0.4004",
+ "XS::Parse::Keyword::Builder" : "0.06"
}
},
"runtime" : {
"requires" : {
+ "XS::Parse::Keyword" : "0.06",
"perl" : "5.014"
}
},
@@ -38,11 +40,11 @@
"provides" : {
"Syntax::Keyword::Try" : {
"file" : "lib/Syntax/Keyword/Try.pm",
- "version" : "0.24"
+ "version" : "0.25"
},
"Syntax::Keyword::Try::Deparse" : {
"file" : "lib/Syntax/Keyword/Try/Deparse.pm",
- "version" : "0.24"
+ "version" : "0.25"
}
},
"release_status" : "stable",
@@ -52,6 +54,6 @@
],
"x_IRC" : "irc://irc.perl.org/#io-async"
},
- "version" : "0.24",
+ "version" : "0.25",
"x_serialization_backend" : "JSON::PP version 4.05"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/META.yml new/Syntax-Keyword-Try-0.25/META.yml
--- old/Syntax-Keyword-Try-0.24/META.yml 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/META.yml 2021-06-01 22:49:17.000000000 +0200
@@ -7,6 +7,7 @@
Test::More: '0.88'
configure_requires:
Module::Build: '0.4004'
+ XS::Parse::Keyword::Builder: '0.06'
dynamic_config: 1
generated_by: 'Module::Build version 0.4231, CPAN::Meta::Converter version 2.150010'
license: perl
@@ -17,14 +18,15 @@
provides:
Syntax::Keyword::Try:
file: lib/Syntax/Keyword/Try.pm
- version: '0.24'
+ version: '0.25'
Syntax::Keyword::Try::Deparse:
file: lib/Syntax/Keyword/Try/Deparse.pm
- version: '0.24'
+ version: '0.25'
requires:
+ XS::Parse::Keyword: '0.06'
perl: '5.014'
resources:
IRC: irc://irc.perl.org/#io-async
license: http://dev.perl.org/licenses/
-version: '0.24'
+version: '0.25'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/README new/Syntax-Keyword-Try-0.25/README
--- old/Syntax-Keyword-Try-0.24/README 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/README 2021-06-01 22:49:17.000000000 +0200
@@ -30,11 +30,10 @@
and behaviours for perl code.
Syntax similar to this module has now been added to core perl, starting
- at development version 5.33.7, and is expected to become generally
- available when perl 5.34 is released. If you are writing new code, it
- is suggested that you instead use the Feature::Compat::Try module
- instead, as that will enable the core feature on those supported perl
- versions, falling back to Syntax::Keyword::Try on older perls.
+ at version 5.34.0. If you are writing new code, it is suggested that
+ you instead use the Feature::Compat::Try module instead, as that will
+ enable the core feature on those supported perl versions, falling back
+ to Syntax::Keyword::Try on older perls.
Experimental Features
@@ -50,8 +49,6 @@
use Syntax::Keyword::Try qw( try :experimental(typed) );
- use Syntax::Keyword::Try qw( try :experimental(try_value) ); # deprecated
-
use Syntax::Keyword::Try qw( try :experimental ); # all of the above
Don't forget to import the main try symbol itself, to activate the
@@ -220,51 +217,6 @@
with that feature instead, you should consider using
Syntax::Keyword::Defer rather than using finally statements.
-VALUE SEMANTICS
-
- Warning: the feature described in this section was experimental and
- is now deprecated. This experiment has existed for a while, though
- given that since version 0.22 the regular try syntax already behaves
- fine inside a do block, there is no longer any reason for this
- experimental feature to exist. It will print a deprecation warning,
- and eventually will be removed in a later version. You should use do
- { try ... } instead.
-
- Additionally, on perl versions 5.18 and later, it will produce a
- warning in the experimental category.
-
- The syntax provided by this module may be used as a value-yielding
- expression. Because this syntax is new, experimental, and somewhat
- surprising, it must be specifically requested by name try_value:
-
- use Syntax::Keyword::Try qw( try try_value );
-
- my $result = try do { ... } catch { ... };
-
- Also, on Perl versions 5.24 and later:
-
- my $result = try do { ... } finally { ... };
-
- my $result = try do { ... } catch { ... } finally { ... };
-
- Specifically, note that the expression must be spelled as try do { ...
- } so that the syntax is distinct from that used by control-flow
- statements. The interposed do keyword reminds the reader, and instructs
- the syntax parser, that this will be an expression, not a statement. It
- is not necessary to similarly notate the catch or finally blocks.
-
- In this case, the syntax behaves syntactically like an expression, and
- may appear anywhere a normal expression is allowed. It follows similar
- semantics to the purely control-flow case; if the code in the try block
- does not throw an exception, then the expression as a whole yields
- whatever value the try expression did. If it fails, then the catch
- block is executed and the expression yields its resulting value
- instead. A finally block, if present, will be evaluated for
- side-effects before the rest of the expression returns.
-
- Remember that, as in the control-flow case, the return keyword will
- cause the entire containing function to return, not just the try block.
-
OTHER MODULES
There are already quite a number of modules on CPAN that provide a
@@ -279,9 +231,7 @@
* Syntax::Feature::Try
In addition, core perl itself gained a try/catch syntax based on this
- module at developemnt version 5.33.7, and should become generally
- available when 5.34 is released. It will be available as use feature
- 'try'.
+ module at version 5.34.0. It is available as use feature 'try'.
They are compared here, by feature:
@@ -337,10 +287,9 @@
Value Semantics
Like Try and Syntax::Feature::Try, the syntax provided by this module
- only works as a syntax-level statement and not an expression when the
- experimental try_value feature described above has not been enabled.
- You cannot assign from the result of a try block. A common workaround
- is to wrap the try/catch statement inside a do block, where its final
+ only works as a syntax-level statement and not an expression. You
+ cannot assign from the result of a try block. A common workaround is to
+ wrap the try/catch statement inside a do block, where its final
expression can be captured and used as a value.
The same do block wrapping also works for the core feature 'try'.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/hax/lexer-additions.c.inc new/Syntax-Keyword-Try-0.25/hax/lexer-additions.c.inc
--- old/Syntax-Keyword-Try-0.24/hax/lexer-additions.c.inc 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/hax/lexer-additions.c.inc 1970-01-01 01:00:00.000000000 +0100
@@ -1,298 +0,0 @@
-/* vi: set ft=c inde=: */
-
-/* Perls before 5.18 lack isIDCONT_uni, but baring minor differences of weird
- * Unicode characters, isALNUM_uni is close enough
- */
-#ifndef isIDCONT_uni
-#define isIDCONT_uni(c) isALNUM_uni(c)
-#endif
-
-#define sv_cat_c(sv, c) MY_sv_cat_c(aTHX_ sv, c)
-static void MY_sv_cat_c(pTHX_ SV *sv, U32 c)
-{
- char ds[UTF8_MAXBYTES + 1], *d;
- d = (char *)uvchr_to_utf8((U8 *)ds, c);
- if (d - ds > 1) {
- sv_utf8_upgrade(sv);
- }
- sv_catpvn(sv, ds, d - ds);
-}
-
-#define lex_consume(s) MY_lex_consume(aTHX_ s)
-static int MY_lex_consume(pTHX_ char *s)
-{
- /* I want strprefix() */
- size_t i;
- for(i = 0; s[i]; i++) {
- if(s[i] != PL_parser->bufptr[i])
- return 0;
- }
-
- lex_read_to(PL_parser->bufptr + i);
- return i;
-}
-
-enum {
- LEX_IDENT_PACKAGENAME = (1<<0),
-};
-
-#define lex_scan_ident( ) MY_lex_scan_ident(aTHX_ 0)
-#define lex_scan_packagename() MY_lex_scan_ident(aTHX_ LEX_IDENT_PACKAGENAME)
-static SV *MY_lex_scan_ident(pTHX_ int flags)
-{
- I32 c;
- bool at_start = TRUE;
-
- char *ident = PL_parser->bufptr;
-
- while((c = lex_peek_unichar(0))) {
- if(at_start ? isIDFIRST_uni(c) : isALNUM_uni(c))
- at_start = FALSE;
- /* TODO: This sucks in the case of a false Foo:Bar match */
- else if((flags & LEX_IDENT_PACKAGENAME) && (c == ':')) {
- lex_read_unichar(0);
- if(lex_read_unichar(0) != ':')
- croak("Expected colon to be followed by another in package name");
- }
- else
- break;
-
- lex_read_unichar(0);
- }
-
- STRLEN len = PL_parser->bufptr - ident;
- if(!len)
- return NULL;
-
- SV *ret = newSVpvn(ident, len);
- if(lex_bufutf8())
- SvUTF8_on(ret);
-
- return ret;
-}
-
-#define lex_scan_attrval_into(name, val) MY_lex_scan_attrval_into(aTHX_ name, val)
-static bool MY_lex_scan_attrval_into(pTHX_ SV *name, SV *val)
-{
- /* TODO: really want lex_scan_ident_into() */
- SV *n = lex_scan_ident();
- if(!n)
- return FALSE;
-
- sv_setsv(name, n);
- SvREFCNT_dec(n);
-
- if(name != val)
- SvPOK_off(val);
-
- /* Do not read space here as space is not allowed between NAME(ARGS) */
-
- if(lex_peek_unichar(0) != '(')
- return TRUE;
-
- lex_read_unichar(0);
- if(name == val)
- sv_cat_c(val, '(');
- else
- sv_setpvs(val, "");
-
- int count = 1;
- I32 c = lex_peek_unichar(0);
- while(count && c != -1) {
- if(c == '(')
- count++;
- if(c == ')')
- count--;
- if(c == '\\') {
- /* The next char does not bump count even if it is ( or );
- * the \\ is still captured
- */
- sv_cat_c(val, lex_read_unichar(0));
- c = lex_peek_unichar(0);
- if(c == -1)
- goto unterminated;
- }
-
- /* Don't append final closing ')' on split name/val */
- if(count || (name == val))
- sv_cat_c(val, c);
- lex_read_unichar(0);
-
- c = lex_peek_unichar(0);
- }
-
- if(c == -1)
- return FALSE;
-
- return TRUE;
-
-unterminated:
- croak("Unterminated attribute parameter in attribute list");
-}
-
-#define lex_scan_attr() MY_lex_scan_attr(aTHX)
-static SV *MY_lex_scan_attr(pTHX)
-{
- SV *ret = newSV(0);
- if(MY_lex_scan_attrval_into(aTHX_ ret, ret))
- return ret;
-
- SvREFCNT_dec(ret);
- return NULL;
-}
-
-#define lex_scan_attrs(compcv) MY_lex_scan_attrs(aTHX_ compcv)
-static OP *MY_lex_scan_attrs(pTHX_ CV *compcv)
-{
- /* Attributes are supplied to newATTRSUB() as an OP_LIST containing
- * OP_CONSTs, one attribute in each as a plain SV. Note that we don't have
- * to parse inside the contents of the parens; that is handled by the
- * attribute handlers themselves
- */
- OP *attrs = NULL;
- SV *attr;
-
- lex_read_space(0);
- while((attr = lex_scan_attr())) {
- lex_read_space(0);
-
- if(compcv && strEQ(SvPV_nolen(attr), "lvalue")) {
- CvLVALUE_on(compcv);
- }
-
- if(!attrs)
- attrs = newLISTOP(OP_LIST, 0, NULL, NULL);
-
- attrs = op_append_elem(OP_LIST, attrs, newSVOP(OP_CONST, 0, attr));
-
- /* Accept additional colons to prefix additional attrs */
- if(lex_peek_unichar(0) == ':') {
- lex_read_unichar(0);
- lex_read_space(0);
- }
- }
-
- return attrs;
-}
-
-#define lex_scan_lexvar() MY_lex_scan_lexvar(aTHX)
-static SV *MY_lex_scan_lexvar(pTHX)
-{
- int sigil = lex_peek_unichar(0);
- switch(sigil) {
- case '$':
- case '@':
- case '%':
- lex_read_unichar(0);
- break;
-
- default:
- croak("Expected a lexical variable");
- }
-
- SV *ret = lex_scan_ident();
- if(!ret)
- return NULL;
-
- /* prepend sigil - which we know to be a single byte */
- SvGROW(ret, SvCUR(ret) + 1);
- Move(SvPVX(ret), SvPVX(ret) + 1, SvCUR(ret), char);
- SvPVX(ret)[0] = sigil;
- SvCUR(ret)++;
-
- SvPVX(ret)[SvCUR(ret)] = 0;
-
- return ret;
-}
-
-#define lex_scan_parenthesized() MY_lex_scan_parenthesized(aTHX)
-static SV *MY_lex_scan_parenthesized(pTHX)
-{
- I32 c;
- int parencount = 0;
- SV *ret = newSVpvs("");
- if(lex_bufutf8())
- SvUTF8_on(ret);
-
- c = lex_peek_unichar(0);
-
- while(c != -1) {
- sv_cat_c(ret, lex_read_unichar(0));
-
- switch(c) {
- case '(': parencount++; break;
- case ')': parencount--; break;
- }
- if(!parencount)
- break;
-
- c = lex_peek_unichar(0);
- }
-
- if(SvCUR(ret))
- return ret;
-
- SvREFCNT_dec(ret);
- return NULL;
-}
-
-#define lex_scan_version(flags) MY_lex_scan_version(aTHX_ flags)
-static SV *MY_lex_scan_version(pTHX_ int flags)
-{
- I32 c;
- SV *tmpsv = sv_2mortal(newSVpvs(""));
-
- /* scan_version() expects a version to end in linefeed, semicolon or
- * openbrace; gets confused if other keywords are fine. We'll have to
- * extract it first.
- * https://rt.cpan.org/Ticket/Display.html?id=132903
- */
-
- while((c = lex_peek_unichar(0))) {
- /* Allow a single leading v before accepting only digits, dot, underscore */
- if((!SvCUR(tmpsv) && (c == 'v')) || strchr("0123456789._", c))
- sv_cat_c(tmpsv, lex_read_unichar(0));
- else
- break;
- }
-
- if(!SvCUR(tmpsv) && (flags & PARSE_OPTIONAL))
- return NULL;
-
- SV *ret = newSV(0);
- scan_version(SvPVX(tmpsv), ret, FALSE);
-
- return ret;
-}
-
-#define parse_lexvar() MY_parse_lexvar(aTHX)
-static PADOFFSET MY_parse_lexvar(pTHX)
-{
- /* TODO: Rewrite this in terms of using lex_scan_lexvar()
- */
- char *lexname = PL_parser->bufptr;
-
- if(lex_read_unichar(0) != '$')
- croak("Expected a lexical scalar at %s", lexname);
-
- if(!isIDFIRST_uni(lex_peek_unichar(0)))
- croak("Expected a lexical scalar at %s", lexname);
- lex_read_unichar(0);
- while(isIDCONT_uni(lex_peek_unichar(0)))
- lex_read_unichar(0);
-
- /* Forbid $_ */
- if(PL_parser->bufptr - lexname == 2 && lexname[1] == '_')
- croak("Can't use global $_ in \"my\"");
-
- return pad_add_name_pvn(lexname, PL_parser->bufptr - lexname, 0, NULL, NULL);
-}
-
-#define parse_scoped_block(flags) MY_parse_scoped_block(aTHX_ flags)
-static OP *MY_parse_scoped_block(pTHX_ int flags)
-{
- OP *ret;
- I32 save_ix = block_start(TRUE);
- ret = parse_block(flags);
- return block_end(save_ix, ret);
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/hax/perl-additions.c.inc new/Syntax-Keyword-Try-0.25/hax/perl-additions.c.inc
--- old/Syntax-Keyword-Try-0.24/hax/perl-additions.c.inc 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/hax/perl-additions.c.inc 2021-06-01 22:49:17.000000000 +0200
@@ -1,4 +1,4 @@
-/* vi: set ft=c inde=: */
+/* vi: set ft=c */
#ifndef av_count
# define av_count(av) (AvFILL(av) + 1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/hax/wrap_keyword_plugin.c.inc new/Syntax-Keyword-Try-0.25/hax/wrap_keyword_plugin.c.inc
--- old/Syntax-Keyword-Try-0.24/hax/wrap_keyword_plugin.c.inc 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/hax/wrap_keyword_plugin.c.inc 1970-01-01 01:00:00.000000000 +0100
@@ -1,28 +0,0 @@
-/* vi: set ft=c inde=: */
-
-#ifndef OP_CHECK_MUTEX_LOCK /* < 5.15.8 */
-# define OP_CHECK_MUTEX_LOCK ((void)0)
-# define OP_CHECK_MUTEX_UNLOCK ((void)0)
-#endif
-
-#define wrap_keyword_plugin(func, var) S_wrap_keyword_plugin(aTHX_ func, var)
-
-static void S_wrap_keyword_plugin(pTHX_ Perl_keyword_plugin_t func, Perl_keyword_plugin_t *var)
-{
- /* BOOT can potentially race with other threads (RT123547) */
-
- /* Perl doesn't really provide us a nice mutex for doing this so this is the
- * best we can find. See also
- * https://rt.perl.org/Public/Bug/Display.html?id=132413
- */
- if(*var)
- return;
-
- OP_CHECK_MUTEX_LOCK;
- if(!*var) {
- *var = PL_keyword_plugin;
- PL_keyword_plugin = func;
- }
-
- OP_CHECK_MUTEX_UNLOCK;
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/lib/Syntax/Keyword/Try/Deparse.pm new/Syntax-Keyword-Try-0.25/lib/Syntax/Keyword/Try/Deparse.pm
--- old/Syntax-Keyword-Try-0.24/lib/Syntax/Keyword/Try/Deparse.pm 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/lib/Syntax/Keyword/Try/Deparse.pm 2021-06-01 22:49:17.000000000 +0200
@@ -3,7 +3,7 @@
#
# (C) Paul Evans, 2021 -- leonerd@leonerd.org.uk
-package Syntax::Keyword::Try::Deparse 0.24;
+package Syntax::Keyword::Try::Deparse 0.25;
use v5.14;
use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Syntax-Keyword-Try-0.24/lib/Syntax/Keyword/Try.pm new/Syntax-Keyword-Try-0.25/lib/Syntax/Keyword/Try.pm
--- old/Syntax-Keyword-Try-0.24/lib/Syntax/Keyword/Try.pm 2021-05-10 15:39:16.000000000 +0200
+++ new/Syntax-Keyword-Try-0.25/lib/Syntax/Keyword/Try.pm 2021-06-01 22:49:17.000000000 +0200
@@ -3,7 +3,7 @@
#
# (C) Paul Evans, 2016-2021 -- leonerd@leonerd.org.uk
-package Syntax::Keyword::Try 0.24;
+package Syntax::Keyword::Try 0.25;
use v5.14;
use warnings;
@@ -45,10 +45,9 @@
code.
Syntax similar to this module has now been added to core perl, starting at
-development version 5.33.7, and is expected to become generally available when
-perl 5.34 is released. If you are writing new code, it is suggested that you
-instead use the LFeature::Compat::Try module instead, as that will enable
-the core feature on those supported perl versions, falling back to
+version 5.34.0. If you are writing new code, it is suggested that you instead
+use the LFeature::Compat::Try module instead, as that will enable the core
+feature on those supported perl versions, falling back to
CSyntax::Keyword::Try on older perls.
=head1 Experimental Features
@@ -63,8 +62,6 @@
use Syntax::Keyword::Try qw( try :experimental(typed) );
- use Syntax::Keyword::Try qw( try :experimental(try_value) ); # deprecated
-
use Syntax::Keyword::Try qw( try :experimental ); # all of the above
Don't forget to import the main C<try> symbol itself, to activate the syntax.
@@ -234,56 +231,6 @@
should consider using LSyntax::Keyword::Defer rather than using C<finally>
statements.
-=head1 VALUE SEMANTICS
-
-=over 4
-
-BWarning: the feature described in this section was experimental and is now
-deprecated. This experiment has existed for a while, though given that since
-version 0.22 the regular C<try> syntax already behaves fine inside a C<do>
-block, there is no longer any reason for this experimental feature to exist.
-It will print a deprecation warning, and eventually will be removed in a later
-version. You should use C instead.
-
-Additionally, on I<perl> versions 5.18 and later, it will produce a warning
-in the C<experimental> category.
-
-=back
-
-The syntax provided by this module may be used as a value-yielding expression.
-Because this syntax is new, experimental, and somewhat surprising, it must be
-specifically requested by name C:
-
- use Syntax::Keyword::Try qw( try try_value );
-
- my $result = try do { ... } catch { ... };
-
-Also, on Perl versions 5.24 and later:
-
- my $result = try do { ... } finally { ... };
-
- my $result = try do { ... } catch { ... } finally { ... };
-
-Specifically, note that the expression must be spelled as C so
-that the syntax is distinct from that used by control-flow statements. The
-interposed C<do> keyword reminds the reader, and instructs the syntax parser,
-that this will be an expression, not a statement. It is not necessary to
-similarly notate the C<catch> or C<finally> blocks.
-
-In this case, the syntax behaves syntactically like an expression, and may
-appear anywhere a normal expression is allowed. It follows similar semantics
-to the purely control-flow case; if the code in the C<try> block does not
-throw an exception, then the expression as a whole yields whatever value the
-C<try> expression did. If it fails, then the C<catch> block is executed and
-the expression yields its resulting value instead. A C<finally> block, if
-present, will be evaluated for side-effects before the rest of the expression
-returns.
-
-Remember that, as in the control-flow case, the C<return> keyword will cause
-the entire containing function to return, not just the C<try> block.
-
-=cut
-
=head1 OTHER MODULES
There are already quite a number of modules on CPAN that provide a
@@ -310,8 +257,7 @@
=back
In addition, core perl itself gained a C syntax based on this
-module at developemnt version 5.33.7, and should become generally available
-when 5.34 is released. It will be available as C