- updated to 0.470.0 (0.47)

see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
  0.47    2024-11-25
          [BUGFIXES]
           * Don't upset gcc 15, by ensuring that function pointer casts fully
             specify argument types (RT157196)
  0.46    2024-09-03
          [CHANGES]
           * Added `XPK_PREFIXED_TERMEXPR_ENTERLEAVE`
           * Use module-specific rather than dist-specific dirs to store
             `include/` files
  0.45    2024-08-29
          [CHANGES]
           * Refuse to register operators that have neither `.new_op` nor
             `.ppadd`, as these will never work
          [BUGFIXES]
           * Update for perl 5.41.3: `OP_SMARTMATCH` is now removed, so make
             that registration conditional (RT155194)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-XS-Parse-Keyword?expand=0&rev=42
This commit is contained in:
Tina Müller 2025-01-09 16:29:08 +00:00 committed by Git OBS Bridge
commit 3e6722d3a3
7 changed files with 520 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a21ae79221927efc11d89d8c9db32df6cc20b3169c5f692e192114ae234d7612
size 92761

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d42fb5a9978e25c4c3f10351291b155d503fe869ccd532910c05e6b93a6b9fad
size 93374

35
cpanspec.yml Normal file
View File

@ -0,0 +1,35 @@
---
#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:
# baz.patch: PATCH-FIX-OPENSUSE
#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
#skip_doc: regexp_to_skip_for_doc.*
#add_doc: files to add to docs
#misc: |-
#anything else to be added to spec file
#follows directly after %files section, so it can contain new blocks or also
#changes to %files section

View File

@ -0,0 +1,379 @@
-------------------------------------------------------------------
Thu Dec 12 16:46:16 UTC 2024 - Tina Müller <timueller+perl@suse.de>
- updated to 0.470.0 (0.47)
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.47 2024-11-25
[BUGFIXES]
* Don't upset gcc 15, by ensuring that function pointer casts fully
specify argument types (RT157196)
0.46 2024-09-03
[CHANGES]
* Added `XPK_PREFIXED_TERMEXPR_ENTERLEAVE`
* Use module-specific rather than dist-specific dirs to store
`include/` files
0.45 2024-08-29
[CHANGES]
* Refuse to register operators that have neither `.new_op` nor
`.ppadd`, as these will never work
[BUGFIXES]
* Update for perl 5.41.3: `OP_SMARTMATCH` is now removed, so make
that registration conditional (RT155194)
-------------------------------------------------------------------
Sat Jul 20 05:29:36 UTC 2024 - Tina Müller <timueller+perl@suse.de>
- updated to 0.440.0 (0.44)
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.44 2024-07-19
[BUGFIXES]
* `boot_xs_parse_infix()` has to load `XS/Parse/Infix.pm`, the perl
module
* Fix opname check for lexical operator alises, to match Perl's
actual identifier rules
* Fix deparse logic for fully-qualified infix operator names
* Fix `lex_scan_packagename()` to not get confused by attribute
syntax
-------------------------------------------------------------------
Wed Jul 3 16:51:11 UTC 2024 - Tina Müller <tina.mueller@suse.com>
- updated to 0.430.0 (0.43)
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.43 2024-07-03
[CHANGES]
* Use `File::ShareDir` for storing .h include files, rather than
storing the contents in the `__DATA__` section of the build helpers
* Support a new naming model for infix operators that supports
lexical-aliases and renaming at import time
-------------------------------------------------------------------
Wed May 1 03:08:54 UTC 2024 - Tina Müller <timueller+perl@suse.de>
- updated to 0.42
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.42 2024-04-30
[BUGFIXES]
* Don't crash on zero-argument calls to list-associative wrapper
functions (thanks aquanight) (RT153244)
0.41 2024-04-25
[BUGFIXES]
* Remmeber to EXTEND the stack in list-associative operator wrapper
functions (thanks aquanight) (RT153173)
0.40 2024-04-23
[CHANGES]
* Support N-way list-associative operators, implemented as LISTOPs
* Delete the no-longer-used API constants
XPI_OPERAND_{ARITH,TERM,CUSTOM} from XSParseInfix.h
[BUGFIXES]
* Avoid a subsequent `use VERSION` in unit tests to keep perl 5.39.8
happy
-------------------------------------------------------------------
Fri Mar 8 23:11:55 UTC 2024 - Tina Müller <tina.mueller@suse.com>
- Fix disabling of __perllib_provides
-------------------------------------------------------------------
Tue Dec 5 03:08:17 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.39
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.39 2023-12-04
[CHANGES]
* Added optional variants of XPK_ARITHEXPR, XPK_TERMEXPR,
XPK_LISTEXPR and the context-forcing versions
-------------------------------------------------------------------
Thu Aug 10 03:08:05 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.38
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.38 2023-08-09
[BUGFIXES]
* Fix warn() non-static format string (RT149346)
* Don't bother with Build.PL probing for PL_infix_plugin; just use
perl version number
-------------------------------------------------------------------
Wed Aug 9 03:08:06 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.37
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.37 2023-08-08
[CHANGES]
* Added `XPK_WARNING()` and several conditional variants
-------------------------------------------------------------------
Fri Jul 21 03:11:07 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.36
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.36 2023-07-20
[BUGFIXES]
* Remember to also call `op_scope()` after `block_end()` if the
XPK_FLAG_BLOCKSCOPE flag is set
0.35 2023-07-19
[CHANGES]
* Added XPK_INTRO_MY, to call `intro_my()`
* Added XPK_FLAG_BLOCKSCOPE to wrap a block_start()+block_end()
around a syntax construction
* Renamed XPK_PARENSCOPE to XPK_PARENS, etc..
* Adjusted documentation of XS::Parse::Infix for release of
Perl v5.38
-------------------------------------------------------------------
Thu Jun 15 03:11:03 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.34
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.34 2023-06-14
[CHANGES]
* Swap all unit tests from Test::More to Test2::V0
[BUGFIXES]
* Remember to set `-std=c99` compiler flag on Perls before v5.36
* Skip whitespace between pieces of SEQUENCE or SEPARATEDLIST
-------------------------------------------------------------------
Sun Feb 19 03:06:55 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.33
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.33 2023-02-18
[CHANGES]
* Added XPK_LEXVAR, a non `my`-alike variant
* Added XPK_*_pieces() macros allowing caller to dynamically generate
sub-arrays of pieces
[BUGFIXES]
* Remember to consume whitespace between XPK_REPEATED elements
-------------------------------------------------------------------
Fri Jan 13 03:11:04 UTC 2023 - Tina Müller <timueller+perl@suse.de>
- updated to 0.32
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.32 2023-01-12
[BUGFIXES]
* Ensure that XPK_TERMEXPR acting as a fullexpr is OK with empty
parens (RT145618)
-------------------------------------------------------------------
Mon Dec 26 03:08:39 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.31
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.31 2022-12-25
[CHANGES]
* PL_infix_plugin now exists in 5.37.7
* Support the new infix operator precedence levels added by
perl v5.37.7
* Various updates to hax/ support files
-------------------------------------------------------------------
Sun Dec 4 03:10:55 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.30
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.30 2022-12-03
[CHANGES]
* Added XPK_STAGED_ANONSUB; inspired a bit by XS::Parse::Sublike for
customising the parsing of anonmethod
0.29 2022-12-01
[CHANGES]
* Added XPK_PREFIXED_TERMEXPR_ENTERLEAVE
[BUGFIXES]
* Don't try to call `SvPVX()` on a `newSV(0)` because -DDEBUGGING
perls get upset (RT145278)
* Remember to `break` out of switch block cases when testing for
`KEYWORD_PLUGIN_*` return values
0.28 2022-11-25
[CHANGES]
* Include a XSParseInfixClassification field in the XSParseInfixInfo
structure
* Do not permit mixed identifier/non characters in the names of
registered infix operators
* No longer supports XSParseInfix ABI version 0
[BUGFIXES]
* When parsing an infix operator name, make sure not to be confused
by additional identifier characters immediately after it
-------------------------------------------------------------------
Tue Nov 1 03:08:08 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.27
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.27 2022-10-31
[CHANGES]
* Updates to XS::Parse::Infix for latest `infix-plugin` perl5 branch
+ parsedata field is now an SV **, not an ANY *
* Expose parse_infix() as a real ABI function, allowing infix
operators to be hyper-operators and parse other operator names
0.26 2022-10-24
[CHANGES]
* Updates to XS::Parse::Infix for latest `infix-plugin` perl5 branch
+ Requires classification to set the operator precedence
+ No longer need XPI_OPERAND_ARITH or XPI_OPERAND_TERM; most of
.lhs_flags and .rhs_flags are redundant now
+ No longer support XPI_OPERAND_CUSTOM
+ Optional `parse` phase for parametric/hyper-operators
* Bump XS::Parse::Infix ABI version to 2
* Declare XPI ABI v0 as deprecated, soon to be removed
-------------------------------------------------------------------
Wed Jul 27 03:09:17 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.25
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.25 2022-07-25
[CHANGES]
* Permit infix operators to consume fewer than all the available
symbols; allowing for RHS operands that begin with symbols without
intervening whitespace
* Improved unit-testing of infix operator parser precedence issues
* Added `XPI_OPERAND_ARITH`; renumbered `XPI_OPERAND_TERM` to be
non-zero. Currently zero is accepted for back-compat
-------------------------------------------------------------------
Mon Jun 27 03:06:59 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.24
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.24 2022-06-26
[CHANGES]
* Skip attempting to create duplicate wrapper funcs, in case of
multiple registrations of the same operator with different
spellings
[BUGFIXES]
* Arrange extra_linker_flags correctly while building probe program
for PL_infix_plugin
-------------------------------------------------------------------
Thu May 19 03:07:43 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.23
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.23 2022-05-18
[CHANGES]
* Defined XPK_KEYWORD, a better version of XPK_LITERAL for
keyword-like tokens
* Defined XPK_ARITHEXPR, a higher-precedence version of XPK_TERMEXPR
* Defined XPK_ARGSCOPE, a variant of XPK_PARENSCOPE where the parens
themselves are optional
* Undocument the old XPK_STRING token type
[BUGFIXES]
* Fixes for bugs that affect -DDEBUGGING-enabled perls
+ Remember to clear OPf_KIDS when stealing the op_first of a
LISTOP (RT142770)
+ Don't call cv_clone() at compiletime when unit testing; generate
an OP_ANONCODE instead (RT142771)
-------------------------------------------------------------------
Tue Feb 22 03:08:54 UTC 2022 - Tina Müller <timueller+perl@suse.de>
- updated to 0.22
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
-------------------------------------------------------------------
Wed Oct 13 03:07:09 UTC 2021 - Tina Müller <timueller+perl@suse.de>
- updated to 0.21
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.20 2021-10-11
[BUGFIXES]
* Fix for perl 5.20 - cannot use assert() as an expression
0.19 2021-10-05
[CHANGES]
* Defined XPK_PREFIXED_BLOCK_ENTERLEAVE and XPK_SETUP for customizing
the parser context around blocks
-------------------------------------------------------------------
Wed Sep 29 03:07:17 UTC 2021 - Tina Müller <timueller+perl@suse.de>
- updated to 0.18
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.18 2021-09-28
[CHANGES]
* Define the XPI_OPERAND_ONLY_LOOK flag
* Define a callchecker for list/list infix operators. Add a
callchecker that can optimise out certain kinds of operations
(ref to padav or pkgav, anonlist if XPI_OPERAND_ONLY_LOOK is set)
[BUGFIXES]
* cygwin requires deparse_infix to be declared with XS_INTERNAL()
(RT139449)
* Some architectures require intermediate storage for values in the
test function pp_addpairs (RT139445)
* Fix conditions in lexical variable type checking (RT139444)
0.17 2021-09-23
[CHANGES]
* Support certain kinds of list operands on LHS of infix operators
* Generate wrapper functions around list-list infix operators, which
unpack their argument lists from two ARRAYrefs
0.16 2021-09-21
[CHANGES]
* Attempt automatic deparsing of infix operators
* Support certain kinds of list operands on RHS of infix operators
-------------------------------------------------------------------
Tue Sep 7 03:07:21 UTC 2021 - Tina Müller <timueller+perl@suse.de>
- updated to 0.15
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.15 2021-09-06
[CHANGES]
* Optional generation of wrapper functions around scalar-infix
operators
* Quieter Build.PL by skipping PL_infix_plugin check on versions
of perl known to be too old it
0.14 2021-08-31
[CHANGES]
* Added the entire XS::Parse::Infix subsystem
* Added XPK_INFIX_* token types
-------------------------------------------------------------------
Fri Aug 27 03:07:07 UTC 2021 - Tina Müller <timueller+perl@suse.de>
- updated to 0.13
see /usr/share/doc/packages/perl-XS-Parse-Keyword/Changes
0.13 2021-08-26
[CHANGES]
* Bump to ABI version 2; pass build1's arg0 param as a pointer, not a
direct struct copy
[BUGFIXES]
* Back-compat for ABI version 1's build1 arg0 param not having a line
number (RT138708)
-------------------------------------------------------------------
Tue Aug 24 12:35:52 UTC 2021 - Dirk Stoecker <opensuse@dstoecker.de>
- initial package 0.12
* created by cpanspec 1.81.01

View File

@ -0,0 +1,76 @@
#
# spec file for package perl-XS-Parse-Keyword
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define cpan_name XS-Parse-Keyword
Name: perl-XS-Parse-Keyword
Version: 0.470.0
Release: 0
# 0.47 -> normalize -> 0.470.0
%define cpan_version 0.47
License: Artistic-1.0 OR GPL-1.0-or-later
Summary: XS functions to assist in parsing keyword syntax
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/P/PE/PEVANS/%{cpan_name}-%{cpan_version}.tar.gz
Source1: cpanspec.yml
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(ExtUtils::CBuilder)
BuildRequires: perl(ExtUtils::CChecker) >= 0.11
BuildRequires: perl(ExtUtils::ParseXS) >= 3.16
BuildRequires: perl(File::ShareDir) >= 1.00
BuildRequires: perl(Module::Build) >= 0.4004
BuildRequires: perl(Test2::V0)
Requires: perl(File::ShareDir) >= 1.00
Provides: perl(XS::Parse::Infix) = %{version}
Provides: perl(XS::Parse::Infix::Builder) = %{version}
Provides: perl(XS::Parse::Keyword) = %{version}
Provides: perl(XS::Parse::Keyword::Builder) = %{version}
%undefine __perllib_provides
%{perl_requires}
%description
This module provides some XS functions to assist in writing syntax modules
that provide new perl-visible syntax, primarily for authors of keyword
plugins using the 'PL_keyword_plugin' hook mechanism. It is unlikely to be
of much use to anyone else; and highly unlikely to be any use when writing
perl code using these. Unless you are writing a keyword plugin using XS,
this module is not for you.
This module is also currently experimental, and the design is still
evolving and subject to change. Later versions may break ABI compatibility,
requiring changes or at least a rebuild of any module that depends on it.
%prep
%autosetup -n %{cpan_name}-%{cpan_version}
%build
perl Build.PL --installdirs=vendor optimize="%{optflags}"
./Build build --flags=%{?_smp_mflags}
%check
./Build test
%install
./Build install --destdir=%{buildroot} --create_packlist=0
%perl_gen_filelist
%files -f %{name}.files
%doc Changes README
%license LICENSE
%changelog