Compare commits

...

20 Commits
f32 ... rawhide

Author SHA1 Message Date
Fedora Release Engineering d582e9df15 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-25 21:44:07 +00:00
Fedora Release Engineering 3e4910a2f2 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-21 20:00:23 +00:00
Fedora Release Engineering 2c87b45342 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 03:16:30 +00:00
Jitka Plesnikova ec092d02ea Increase release to favour standalone package 2023-07-11 09:39:39 +02:00
Jitka Plesnikova 2ec66980ea Package tests 2023-05-18 21:16:15 +02:00
Jitka Plesnikova 5d0b48cfb2 Upgrade to 1.32 as provided in perl-5.37.11 2023-05-18 21:11:27 +02:00
Fedora Release Engineering 3c60841d16 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 07:32:04 +00:00
Jitka Plesnikova 9f77f8bb30 Remove perl(MODULE_COMPAT), it will be replaced by generators 2023-01-13 20:30:01 +01:00
Jitka Plesnikova 22e8cc79a7 Update license to SPDX format 2022-12-20 18:08:34 +01:00
Fedora Release Engineering 59aef04403 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 12:24:43 +00:00
Jitka Plesnikova 9b5c076e68 Increase release to favour standalone package 2022-05-30 16:14:53 +02:00
Jitka Plesnikova 39b0379a05 Upgrade to 1.31 as provided in perl-5.35.11 2022-05-13 10:53:30 +02:00
Fedora Release Engineering 9cb3ea0504 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-21 06:30:59 +00:00
Fedora Release Engineering 7417d5ea04 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-27 07:15:32 +00:00
Jitka Plesnikova 6fc0899b3e Upgrade to 1.28 as provided in perl-5.34.0 2021-05-21 09:33:25 +02:00
Fedora Release Engineering 844f8e03fc - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 05:44:19 +00:00
Fedora Release Engineering 2b71d4af8a - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 19:59:01 +00:00
Petr Písař 81cc5021cb Apply a forgotten Unicode-Normalize-1.25-Upgrade-to-1.27.patch patch 2020-07-21 13:25:14 +02:00
Petr Písař 50dcc7bdda Modernize a spec file 2020-07-21 13:24:54 +02:00
Jitka Plesnikova 0427ca54b0 Upgrade to 1.27 as provided in perl-5.32.0 2020-06-22 11:20:34 +02:00
9 changed files with 1043 additions and 126 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

1
.gitignore vendored
View File

@ -4,3 +4,4 @@
/Unicode-Normalize-1.23.tar.gz
/Unicode-Normalize-1.24.tar.gz
/Unicode-Normalize-1.25.tar.gz
/Unicode-Normalize-1.26.tar.gz

View File

@ -1,111 +0,0 @@
From 5ee924afc3aff6f8030a3a5523bb7d3f7f69fc52 Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik@redhat.com>
Date: Thu, 24 May 2018 12:07:22 +0200
Subject: [PATCH] Upgrade to 1.26
---
Changes | 3 +++
Makefile.PL | 2 +-
Normalize.pm | 22 +++++++++++-----------
3 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/Changes b/Changes
index ead5b3e..22ec16e 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,8 @@
Revision history for Perl extension Unicode::Normalize.
+1.26 *** RELEASE DATE HERE ***
+ - Switch to XSLoader from Dynaloader
+
1.25 Wed Dec 16 03:05:57 UTC 2015
- Fix Normalize.xs to work on releases earlier than 5.8. The problem was
introduced in this module's version 1.24
diff --git a/Makefile.PL b/Makefile.PL
index 44a4b8d..18bc2e2 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -8,7 +8,7 @@ my $mm_ver = ExtUtils::MakeMaker->VERSION;
if (-f "Normalize.xs") {
print STDERR "Making header files for XS...\n";
- do 'mkheader' or die $@ || "mkheader: $!";
+ do './mkheader' or die $@ || "mkheader: $!";
$clean = { FILES => 'unfcan.h unfcmb.h unfcmp.h unfcpt.h unfexc.h' };
}
diff --git a/Normalize.pm b/Normalize.pm
index ff6c0f0..adf3db5 100644
--- a/Normalize.pm
+++ b/Normalize.pm
@@ -16,7 +16,7 @@ use Carp;
no warnings 'utf8';
-our $VERSION = '1.25';
+our $VERSION = '1.26';
our $PACKAGE = __PACKAGE__;
our @EXPORT = qw( NFC NFD NFKC NFKD );
@@ -56,9 +56,9 @@ require Exporter;
##### The above part is common to XS and PP #####
-our @ISA = qw(Exporter DynaLoader);
-require DynaLoader;
-bootstrap Unicode::Normalize $VERSION;
+our @ISA = qw(Exporter);
+use XSLoader ();
+XSLoader::load( 'Unicode::Normalize', $VERSION );
##### The below part is common to XS and PP #####
@@ -161,7 +161,7 @@ Unicode::Normalize - Unicode Normalization Forms
Parameters:
-C<$string> is used as a string under character semantics (see F<perlunicode>).
+C<$string> is used as a string under character semantics (see L<perlunicode>).
C<$code_point> should be an unsigned integer representing a Unicode code point.
@@ -238,8 +238,8 @@ the decomposition is compatibility decomposition.
The string returned is not always in NFD/NFKD. Reordering may be required.
- $NFD_string = reorder(decompose($string)); # eq. to NFD()
- $NFKD_string = reorder(decompose($string, TRUE)); # eq. to NFKD()
+ $NFD_string = reorder(decompose($string)); # eq. to NFD()
+ $NFKD_string = reorder(decompose($string, TRUE)); # eq. to NFKD()
=item C<$reordered_string = reorder($string)>
@@ -277,12 +277,12 @@ should be equal to the entire C<$normalized>.
When you have a C<$normalized> string and an C<$unnormalized> string
following it, a simple concatenation is wrong:
- $concat = $normalized . normalize($form, $unnormalized); # wrong!
+ $concat = $normalized . normalize($form, $unnormalized); # wrong!
Instead of it, do like this:
- ($processed, $unprocessed) = splitOnLastStarter($normalized);
- $concat = $processed . normalize($form, $unprocessed.$unnormalized);
+ ($processed, $unprocessed) = splitOnLastStarter($normalized);
+ $concat = $processed . normalize($form,$unprocessed.$unnormalized);
C<splitOnLastStarter()> should be called with a pre-normalized parameter
C<$normalized>, that is in the same form as C<$form> you want.
@@ -548,7 +548,7 @@ compiled into your perl. The following table lists the default Unicode
version that comes with various perl versions. (It is possible to change
the Unicode version in any perl version to be any earlier Unicode version,
so one could cause Unicode 3.2 to be used in any perl version starting with
-5.8.0. See C<$Config{privlib}>/F<unicore/README.perl>.
+5.8.0. Read F<C<$Config{privlib}>/unicore/README.perl> for details.
perl's version implemented Unicode version
5.6.1 3.0.1
--
2.14.3

View File

@ -0,0 +1,927 @@
From 0850dba96e3cb8ee37fe405b0cf76d7f910e90e4 Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik@redhat.com>
Date: Thu, 18 May 2023 21:02:00 +0200
Subject: [PATCH] Upgrade to 1.32
---
Makefile.PL | 22 +++++++-------
Normalize.pm | 81 +++++++++++++++++++++++++++++++++++++---------------
Normalize.xs | 71 ++++++++++++++-------------------------------
mkheader | 20 +++----------
t/fcdc.t | 22 ++------------
t/form.t | 20 +------------
t/func.t | 22 ++------------
t/illegal.t | 22 ++------------
t/norm.t | 24 ++--------------
t/null.t | 11 -------
t/partial1.t | 20 +------------
t/partial2.t | 24 ++--------------
t/proto.t | 20 +------------
t/split.t | 24 ++--------------
t/test.t | 24 ++--------------
t/tie.t | 20 +------------
16 files changed, 118 insertions(+), 329 deletions(-)
diff --git a/Makefile.PL b/Makefile.PL
index 18bc2e2..a848b0d 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,4 +1,6 @@
-require 5.006001;
+use strict;
+use warnings;
+
use ExtUtils::MakeMaker;
my $clean = {};
@@ -6,7 +8,7 @@ my $clean = {};
my $mm_ver = ExtUtils::MakeMaker->VERSION;
if (-f "Normalize.xs") {
- print STDERR "Making header files for XS...\n";
+ print "Making header files for XS...\n";
do './mkheader' or die $@ || "mkheader: $!";
@@ -29,14 +31,14 @@ WriteMakefile(
'clean' => $clean,
'depend' => { 'Normalize.o' => '$(H_FILES)' },
'PREREQ_PM' => {
- Carp => 0,
- constant => 0,
- DynaLoader => 0,
- Exporter => 0,
- File::Spec => 0,
- strict => 0,
- warnings => 0,
- SelectSaver => 0,
+ 'Carp' => 0,
+ 'constant' => 0,
+ 'DynaLoader' => 0,
+ 'Exporter' => 0,
+ 'File::Spec' => 0,
+ 'strict' => 0,
+ 'warnings' => 0,
+ 'SelectSaver' => 0,
},
($mm_ver < 6.48 ? () : MIN_PERL_VERSION => 5.6.0),
($mm_ver < 6.46 ? () : (META_MERGE => {
diff --git a/Normalize.pm b/Normalize.pm
index adf3db5..c8053f7 100644
--- a/Normalize.pm
+++ b/Normalize.pm
@@ -1,14 +1,5 @@
package Unicode::Normalize;
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- die "Unicode::Normalize cannot stringify a Unicode code point\n";
- }
- unless (0x41 == unpack('U', 'A')) {
- die "Unicode::Normalize cannot get Unicode code point\n";
- }
-}
-
use 5.006;
use strict;
use warnings;
@@ -16,7 +7,7 @@ use Carp;
no warnings 'utf8';
-our $VERSION = '1.26';
+our $VERSION = '1.32';
our $PACKAGE = __PACKAGE__;
our @EXPORT = qw( NFC NFD NFKC NFKD );
@@ -40,16 +31,58 @@ our %EXPORT_TAGS = (
## utilities for tests
##
-sub pack_U {
- return pack('U*', @_);
+ # No EBCDIC support on early perls
+*to_native = ($::IS_ASCII || $] < 5.008)
+ ? sub { return shift }
+ : sub { utf8::unicode_to_native(shift) };
+
+*from_native = ($::IS_ASCII || $] < 5.008)
+ ? sub { return shift }
+ : sub { utf8::native_to_unicode(shift) };
+
+# The .t files are all in terms of Unicode, so xlate to/from native
+sub dot_t_pack_U {
+ return pack('U*', map { to_native($_) } @_);
}
-sub unpack_U {
+sub dot_t_unpack_U {
# The empty pack returns an empty UTF-8 string, so the effect is to force
# the shifted parameter into being UTF-8. This allows this to work on
# Perl 5.6, where there is no utf8::upgrade().
- return unpack('U*', shift(@_).pack('U*'));
+ return map { from_native($_) } unpack('U*', shift(@_).pack('U*'));
+}
+
+sub get_printable_string ($) {
+ use bytes;
+ my $s = shift;
+
+ # DeMorgan's laws cause this to mean ascii printables
+ return $s if $s =~ /[^[:^ascii:][:^print:]]/;
+
+ return join " ", map { sprintf "\\x%02x", ord $_ } split "", $s;
+}
+
+sub ok ($$;$) {
+ my $count_ref = shift; # Test number in caller
+ my $p = my $r = shift;
+ my $x;
+ if (@_) {
+ $x = shift;
+ $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
+ }
+
+ print $p ? "ok" : "not ok", ' ', ++$$count_ref, "\n";
+
+ return if $p;
+
+ my (undef, $file, $line) = caller(1);
+ print STDERR "# Failed test $$count_ref at $file line $line\n";
+
+ return unless defined $x;
+
+ print STDERR "# got ", get_printable_string($r), "\n";
+ print STDERR "# expected ", get_printable_string($x), "\n";
}
require Exporter;
@@ -343,7 +376,7 @@ Note that C<$unprocessed> will be modified as a side-effect.
=head2 Quick Check
-(see Annex 8, UAX #15; and F<DerivedNormalizationProps.txt>)
+(see Annex 8, UAX #15; and F<lib/unicore/DerivedNormalizationProps.txt>)
The following functions check whether the string is in that normalization form.
@@ -571,8 +604,10 @@ so one could cause Unicode 3.2 to be used in any perl version starting with
In older Unicode versions, a small number of characters (all of which are
CJK compatibility ideographs as far as they have been found) may have
-an erroneous decomposition mapping (see F<NormalizationCorrections.txt>).
-Anyhow, this module will neither refer to F<NormalizationCorrections.txt>
+an erroneous decomposition mapping (see
+F<lib/unicore/NormalizationCorrections.txt>).
+Anyhow, this module will neither refer to
+F<lib/unicore/NormalizationCorrections.txt>
nor provide any specific version of normalization. Therefore this module
running on an older perl with an older Unicode database may use
the erroneous decomposition mapping blindly conforming to the Unicode database.
@@ -606,27 +641,27 @@ and/or modify it under the same terms as Perl itself.
=over 4
-=item http://www.unicode.org/reports/tr15/
+=item L<http://www.unicode.org/reports/tr15/>
Unicode Normalization Forms - UAX #15
-=item http://www.unicode.org/Public/UNIDATA/CompositionExclusions.txt
+=item L<http://www.unicode.org/Public/UNIDATA/CompositionExclusions.txt>
Composition Exclusion Table
-=item http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt
+=item L<http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt>
Derived Normalization Properties
-=item http://www.unicode.org/Public/UNIDATA/NormalizationCorrections.txt
+=item L<http://www.unicode.org/Public/UNIDATA/NormalizationCorrections.txt>
Normalization Corrections
-=item http://www.unicode.org/review/pr-29.html
+=item L<http://www.unicode.org/review/pr-29.html>
Public Review Issue #29: Normalization Issue
-=item http://www.unicode.org/notes/tn5/
+=item L<http://www.unicode.org/notes/tn5/>
Canonical Equivalence in Applications - UTN #5
diff --git a/Normalize.xs b/Normalize.xs
index 4acff7f..210917e 100644
--- a/Normalize.xs
+++ b/Normalize.xs
@@ -13,6 +13,9 @@
#include "perl.h"
#include "XSUB.h"
+#define NEED_utf8_to_uvchr_buf
+#include "ppport.h"
+
/* These 5 files are prepared by mkheader */
#include "unfcmb.h"
#include "unfcan.h"
@@ -23,45 +26,15 @@
/* The generated normalization tables since v5.20 are in native character set
* terms. Prior to that, they were in Unicode terms. So we use 'uvchr' for
* later perls, and redefine that to be 'uvuni' for earlier ones */
-#if PERL_VERSION < 20
+#if PERL_VERSION_LT(5,20,0)
# undef uvchr_to_utf8
# ifdef uvuni_to_utf8
# define uvchr_to_utf8 uvuni_to_utf8
# else /* Perl 5.6.1 */
# define uvchr_to_utf8 uv_to_utf8
# endif
-
-# undef utf8n_to_uvchr
-# ifdef utf8n_to_uvuni
-# define utf8n_to_uvchr utf8n_to_uvuni
-# else /* Perl 5.6.1 */
-# define utf8n_to_uvchr utf8_to_uv
-# endif
#endif
-/* UTF8_ALLOW_BOM is used before Perl 5.8.0 */
-#ifndef UTF8_ALLOW_BOM
-#define UTF8_ALLOW_BOM (0)
-#endif /* UTF8_ALLOW_BOM */
-
-#ifndef UTF8_ALLOW_SURROGATE
-#define UTF8_ALLOW_SURROGATE (0)
-#endif /* UTF8_ALLOW_SURROGATE */
-
-#ifndef UTF8_ALLOW_FE_FF
-#define UTF8_ALLOW_FE_FF (0)
-#endif /* UTF8_ALLOW_FE_FF */
-
-#ifndef UTF8_ALLOW_FFFF
-#define UTF8_ALLOW_FFFF (0)
-#endif /* UTF8_ALLOW_FFFF */
-
-#ifndef PERL_UNUSED_VAR
-# define PERL_UNUSED_VAR(x) ((void)sizeof(x))
-#endif
-
-#define AllowAnyUTF (UTF8_ALLOW_SURROGATE|UTF8_ALLOW_BOM|UTF8_ALLOW_FE_FF|UTF8_ALLOW_FFFF)
-
/* check if the string buffer is enough before uvchr_to_utf8(). */
/* dstart, d, and dlen should be defined outside before. */
#define Renew_d_if_not_enough_to(need) STRLEN curlen = d - dstart; \
@@ -71,7 +44,7 @@
d = dstart + curlen; \
}
-/* if utf8n_to_uvchr() sets retlen to 0 (if broken?) */
+/* if utf8_to_uvchr_buf() sets retlen to 0 (if broken?) */
#define ErrRetlenIsZero "panic (Unicode::Normalize %s): zero-length character"
/* utf8_hop() hops back before start. Maybe broken UTF-8 */
@@ -139,8 +112,8 @@ static U8* dec_canonical(UV uv)
plane = (U8***)UNF_canon[uv >> 16];
if (! plane)
return NULL;
- row = plane[(uv >> 8) & 0xff];
- return row ? row[uv & 0xff] : NULL;
+ row = plane[(U8) (uv >> 8)];
+ return row ? row[(U8) uv] : NULL;
}
static U8* dec_compat(UV uv)
@@ -151,8 +124,8 @@ static U8* dec_compat(UV uv)
plane = (U8***)UNF_compat[uv >> 16];
if (! plane)
return NULL;
- row = plane[(uv >> 8) & 0xff];
- return row ? row[uv & 0xff] : NULL;
+ row = plane[(U8) (uv >> 8)];
+ return row ? row[(U8) uv] : NULL;
}
static UV composite_uv(UV uv, UV uv2)
@@ -175,10 +148,10 @@ static UV composite_uv(UV uv, UV uv2)
plane = UNF_compos[uv >> 16];
if (! plane)
return 0;
- row = plane[(uv >> 8) & 0xff];
+ row = plane[(U8) (uv >> 8)];
if (! row)
return 0;
- cell = row[uv & 0xff];
+ cell = row[(U8) uv];
if (! cell)
return 0;
for (i = cell; i->nextchar; i++) {
@@ -196,8 +169,8 @@ static U8 getCombinClass(UV uv)
plane = (U8**)UNF_combin[uv >> 16];
if (! plane)
return 0;
- row = plane[(uv >> 8) & 0xff];
- return row ? row[uv & 0xff] : 0;
+ row = plane[(U8) (uv >> 8)];
+ return row ? row[(U8) uv] : 0;
}
static U8* pv_cat_decompHangul(pTHX_ U8* d, UV uv)
@@ -244,7 +217,7 @@ U8* pv_utf8_decompose(pTHX_ U8* s, STRLEN slen, U8** dp, STRLEN dlen, bool iscom
while (p < e) {
STRLEN retlen;
- UV uv = utf8n_to_uvchr(p, e - p, &retlen, AllowAnyUTF);
+ UV uv = utf8_to_uvchr_buf(p, e, &retlen);
if (!retlen)
croak(ErrRetlenIsZero, "decompose");
p += retlen;
@@ -289,7 +262,7 @@ U8* pv_utf8_reorder(pTHX_ U8* s, STRLEN slen, U8** dp, STRLEN dlen)
while (p < e) {
U8 curCC;
STRLEN retlen;
- UV uv = utf8n_to_uvchr(p, e - p, &retlen, AllowAnyUTF);
+ UV uv = utf8_to_uvchr_buf(p, e, &retlen);
if (!retlen)
croak(ErrRetlenIsZero, "reorder");
p += retlen;
@@ -366,7 +339,7 @@ U8* pv_utf8_compose(pTHX_ U8* s, STRLEN slen, U8** dp, STRLEN dlen, bool isconti
while (p < e) {
U8 curCC;
STRLEN retlen;
- UV uv = utf8n_to_uvchr(p, e - p, &retlen, AllowAnyUTF);
+ UV uv = utf8_to_uvchr_buf(p, e, &retlen);
if (!retlen)
croak(ErrRetlenIsZero, "compose");
p += retlen;
@@ -636,7 +609,7 @@ checkNFD(src)
preCC = 0;
for (p = s; p < e; p += retlen) {
- UV uv = utf8n_to_uvchr(p, e - p, &retlen, AllowAnyUTF);
+ UV uv = utf8_to_uvchr_buf(p, e, &retlen);
if (!retlen)
croak(ErrRetlenIsZero, "checkNFD or -NFKD");
@@ -673,7 +646,7 @@ checkNFC(src)
preCC = 0;
for (p = s; p < e; p += retlen) {
- UV uv = utf8n_to_uvchr(p, e - p, &retlen, AllowAnyUTF);
+ UV uv = utf8_to_uvchr_buf(p, e, &retlen);
if (!retlen)
croak(ErrRetlenIsZero, "checkNFC or -NFKC");
@@ -731,7 +704,7 @@ checkFCD(src)
U8 *sCan;
UV uvLead;
STRLEN canlen = 0;
- UV uv = utf8n_to_uvchr(p, e - p, &retlen, AllowAnyUTF);
+ UV uv = utf8_to_uvchr_buf(p, e, &retlen);
if (!retlen)
croak(ErrRetlenIsZero, "checkFCD or -FCC");
@@ -740,7 +713,7 @@ checkFCD(src)
if (sCan) {
STRLEN canret;
canlen = (STRLEN)strlen((char *) sCan);
- uvLead = utf8n_to_uvchr(sCan, canlen, &canret, AllowAnyUTF);
+ uvLead = utf8_to_uvchr_buf(sCan, sCan + canlen, &canret);
if (!canret)
croak(ErrRetlenIsZero, "checkFCD or -FCC");
}
@@ -771,7 +744,7 @@ checkFCD(src)
U8* pCan = utf8_hop(eCan, -1);
if (pCan < sCan)
croak(ErrHopBeforeStart);
- uvTrail = utf8n_to_uvchr(pCan, eCan - pCan, &canret, AllowAnyUTF);
+ uvTrail = utf8_to_uvchr_buf(pCan, eCan, &canret);
if (!canret)
croak(ErrRetlenIsZero, "checkFCD or -FCC");
preCC = getCombinClass(uvTrail);
@@ -910,7 +883,7 @@ splitOnLastStarter(src)
p = utf8_hop(p, -1);
if (p < s)
croak(ErrHopBeforeStart);
- uv = utf8n_to_uvchr(p, e - p, NULL, AllowAnyUTF);
+ uv = utf8_to_uvchr_buf(p, e, NULL);
if (getCombinClass(uv) == 0) /* Last Starter found */
break;
}
diff --git a/mkheader b/mkheader
index 8d4c1b8..669a8a2 100644
--- a/mkheader
+++ b/mkheader
@@ -24,28 +24,16 @@ use Carp;
use File::Spec;
use SelectSaver;
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- die "Unicode::Normalize cannot stringify a Unicode code point\n";
- }
- unless (0x41 == unpack('U', 'A')) {
- die "Unicode::Normalize cannot get Unicode code point\n";
- }
-}
-
our $PACKAGE = 'Unicode::Normalize, mkheader';
our $prefix = "UNF_";
our $structname = "${prefix}complist";
# Starting in v5.20, the tables in lib/unicore are built using the platform's
-# native character set for code points 0-255.
-*pack_U = ($] ge 5.020)
- ? sub { return pack('W*', @_).pack('U*'); } # The empty pack returns
- # an empty UTF-8 string,
- # so the effect is to
- # force the return into
- # being UTF-8.
+# native character set for code points 0-255. But in v5.35, pack U stopped
+# trying to compensate
+*pack_U = ($] ge 5.020 && $] lt 5.035)
+ ? sub { return pack('U*', map { utf8::unicode_to_native($_) } @_); }
: sub { return pack('U*', @_); };
# %Canon and %Compat will be ($codepoint => $hexstring) after _U_stringify()
diff --git a/t/fcdc.t b/t/fcdc.t
index d2ef28b..b5dc195 100644
--- a/t/fcdc.t
+++ b/t/fcdc.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -23,20 +12,13 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..70\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
ok(1);
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
sub hexU { _pack_U map hex, split ' ', shift }
sub answer { defined $_[0] ? $_[0] ? "YES" : "NO" : "MAYBE" }
diff --git a/t/form.t b/t/form.t
index 6bbfb08..9a0850c 100644
--- a/t/form.t
+++ b/t/form.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -23,14 +12,7 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..37\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
diff --git a/t/func.t b/t/func.t
index 2bd6e50..a5eb0b3 100644
--- a/t/func.t
+++ b/t/func.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -23,20 +12,13 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..217\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
ok(1);
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
sub hexU { _pack_U map hex, split ' ', shift }
# This won't work on EBCDIC platforms prior to v5.8.0, which is when this
diff --git a/t/illegal.t b/t/illegal.t
index ccf2b4a..6a1160c 100644
--- a/t/illegal.t
+++ b/t/illegal.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -43,14 +32,7 @@ use warnings;
BEGIN { $| = 1; print "1..113\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
ok(1);
@@ -77,7 +59,7 @@ for my $u (0xD800, 0xDFFF, 0xFDD0, 0xFDEF, 0xFEFF, 0xFFFE, 0xFFFF,
our $proc; # before the last starter
our $unproc; # the last starter and after
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
($proc, $unproc) = splitOnLastStarter(_pack_U(0x41, 0x300, 0x327, 0xFFFF));
ok($proc eq _pack_U(0x41, 0x300, 0x327));
diff --git a/t/norm.t b/t/norm.t
index d3cec3a..ffb7449 100644
--- a/t/norm.t
+++ b/t/norm.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -23,21 +12,14 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..64\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(normalize);
ok(1);
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
-sub _unpack_U { Unicode::Normalize::unpack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
+sub _unpack_U { Unicode::Normalize::dot_t_unpack_U(@_) }
#########################
diff --git a/t/null.t b/t/null.t
index 9a00087..93d1bbc 100644
--- a/t/null.t
+++ b/t/null.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
diff --git a/t/partial1.t b/t/partial1.t
index 3e44a63..97d8343 100644
--- a/t/partial1.t
+++ b/t/partial1.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -31,14 +20,7 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..26\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
diff --git a/t/partial2.t b/t/partial2.t
index 7f19e93..1cf510d 100644
--- a/t/partial2.t
+++ b/t/partial2.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -31,21 +20,14 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..26\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
ok(1);
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
-sub _unpack_U { Unicode::Normalize::unpack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
+sub _unpack_U { Unicode::Normalize::undot_t_pack_U(@_) }
#########################
diff --git a/t/proto.t b/t/proto.t
index 38c6985..f90777c 100644
--- a/t/proto.t
+++ b/t/proto.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -23,14 +12,7 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..48\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
diff --git a/t/split.t b/t/split.t
index a92957c..ae166f4 100644
--- a/t/split.t
+++ b/t/split.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -31,21 +20,14 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..34\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize qw(:all);
ok(1);
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
-sub _unpack_U { Unicode::Normalize::unpack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
+sub _unpack_U { Unicode::Normalize::dot_t_unpack_U(@_) }
#########################
diff --git a/t/test.t b/t/test.t
index cb4b6ea..cec3ca7 100644
--- a/t/test.t
+++ b/t/test.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -23,21 +12,14 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..72\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
use Unicode::Normalize;
ok(1);
-sub _pack_U { Unicode::Normalize::pack_U(@_) }
-sub _unpack_U { Unicode::Normalize::unpack_U(@_) }
+sub _pack_U { Unicode::Normalize::dot_t_pack_U(@_) }
+sub _unpack_U { Unicode::Normalize::dot_t_unpack_U(@_) }
#########################
diff --git a/t/tie.t b/t/tie.t
index 4fdd121..1282405 100644
--- a/t/tie.t
+++ b/t/tie.t
@@ -1,15 +1,4 @@
-BEGIN {
- unless ('A' eq pack('U', 0x41)) {
- print "1..0 # Unicode::Normalize cannot pack a Unicode code point\n";
- exit 0;
- }
- unless (0x41 == unpack('U', 'A')) {
- print "1..0 # Unicode::Normalize cannot get a Unicode code point\n";
- exit 0;
- }
-}
-
BEGIN {
if ($ENV{PERL_CORE}) {
chdir('t') if -d 't';
@@ -34,14 +23,7 @@ use strict;
use warnings;
BEGIN { $| = 1; print "1..17\n"; }
my $count = 0;
-sub ok ($;$) {
- my $p = my $r = shift;
- if (@_) {
- my $x = shift;
- $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x;
- }
- print $p ? "ok" : "not ok", ' ', ++$count, "\n";
-}
+sub ok { Unicode::Normalize::ok(\$count, @_) }
ok(1);
--
2.40.1

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}

View File

@ -1,13 +1,14 @@
%global base_version 1.25
%global base_version 1.26
Name: perl-Unicode-Normalize
Version: 1.26
Release: 440%{?dist}
Version: 1.32
Release: 502%{?dist}
Summary: Unicode Normalization Forms
License: GPL+ or Artistic
License: GPL-1.0-or-later OR Artistic-1.0-Perl
URL: https://metacpan.org/release/Unicode-Normalize
Source0: https://cpan.metacpan.org/authors/id/K/KH/KHW/Unicode-Normalize-%{base_version}.tar.gz
# Unbundled from perl 5.28.0-RC1
Patch0: Unicode-Normalize-1.25-Upgrade-to-1.26.patch
# Unbundled from perl 5.37.11
Patch0: Unicode-Normalize-1.26-Upgrade-to-1.32.patch
BuildRequires: coreutils
BuildRequires: findutils
BuildRequires: gcc
BuildRequires: make
@ -19,6 +20,7 @@ BuildRequires: perl-libs
BuildRequires: perl(bytes)
BuildRequires: perl(Carp)
BuildRequires: perl(constant)
BuildRequires: perl(Devel::PPPort)
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76
BuildRequires: perl(File::Spec)
BuildRequires: perl(SelectSaver)
@ -27,25 +29,52 @@ BuildRequires: perl(warnings)
# Run-time:
BuildRequires: perl(Exporter)
BuildRequires: perl(XSLoader)
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
Conflicts: perl < 4:5.22.0-347
%description
This package provides Perl functions that can convert strings into various
Unicode normalization forms as defined in Unicode Standard Annex #15.
%package tests
Summary: Tests for %{name}
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: perl-Test-Harness
%description tests
Tests from %{name}. Execute them
with "%{_libexecdir}/%{name}/test".
%prep
%setup -q -n Unicode-Normalize-%{base_version}
%patch0 -p1
%patch -P0 -p1
# Generate ppport.h which is used since 1.32
perl -MDevel::PPPort \
-e 'Devel::PPPort::WriteFile() or die "Could not generate ppport.h: $!"'
# Help generators to recognize Perl scripts
for F in t/*.t; do
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!.*perl\b}{$Config{startperl}}' "$F"
chmod +x "$F"
done
%build
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 OPTIMIZE="%{optflags}"
make %{?_smp_mflags}
perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 OPTIMIZE="%{optflags}"
%{make_build}
%install
make pure_install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -delete
%{_fixperms} $RPM_BUILD_ROOT/*
%{make_install}
find %{buildroot} -type f -name '*.bs' -size 0 -delete
%{_fixperms} %{buildroot}/*
# Install tests
mkdir -p %{buildroot}%{_libexecdir}/%{name}
cp -a t %{buildroot}%{_libexecdir}/%{name}
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
#!/bin/sh
cd %{_libexecdir}/%{name} && exec prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
EOF
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
%check
make test
@ -55,9 +84,63 @@ make test
%doc Changes README
%{perl_vendorarch}/auto/*
%{perl_vendorarch}/Unicode
%{_mandir}/man3/*
%{_mandir}/man3/Unicode::Normalize*
%files tests
%{_libexecdir}/%{name}
%changelog
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.32-502
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.32-501
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.32-500
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jul 11 2023 Jitka Plesnikova <jplesnik@redhat.com> - 1.32-499
- Increase release to favour standalone package
* Thu May 18 2023 Jitka Plesnikova <jplesnik@redhat.com> - 1.32-1
- Upgrade to 1.32 as provided in perl-5.37.11
- Package tests
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.31-490
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.31-489
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon May 30 2022 Jitka Plesnikova <jplesnik@redhat.com> - 1.31-488
- Increase release to favour standalone package
* Thu May 12 2022 Jitka Plesnikova <jplesnik@redhat.com> - 1.31-1
- Upgrade to 1.31 as provided in perl-5.35.11
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.28-479
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Jul 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.28-478
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 1.28-477
- Upgrade to 1.28 as provided in perl-5.34.0
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.27-459
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.27-458
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 21 2020 Petr Pisar <ppisar@redhat.com> - 1.27-457
- Modernize a spec file
- Apply a forgotten Unicode-Normalize-1.25-Upgrade-to-1.27.patch patch
* Mon Jun 22 2020 Jitka Plesnikova <jplesnik@redhat.com> - 1.27-456
- Upgrade to 1.27 as provided in perl-5.32.0
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.26-440
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

5
plans/sanity.fmf Normal file
View File

@ -0,0 +1,5 @@
summary: Sanity tests
discover:
how: fmf
execute:
how: tmt

View File

@ -1 +1 @@
8f25327bbccc33717b7d85433e1083bd Unicode-Normalize-1.25.tar.gz
SHA512 (Unicode-Normalize-1.26.tar.gz) = 7f624d2e3dd6fd7412b537898100e1cc96ea3c704b2ee6adcbbc5a0a67ac3f36a56cbc262bc79e7792af08c07153d855f651301797f29a85a8bb51a8ba077e0d

4
tests/upstream-tests.fmf Normal file
View File

@ -0,0 +1,4 @@
summary: Upstream tests
component: perl-Unicode-Normalize
require: perl-Unicode-Normalize-tests
test: /usr/libexec/perl-Unicode-Normalize/test