Skip to content

Commit f32360c

Browse files
authored
Merge pull request #156 from movabletype/fix_fedora43
Fix fedora43
2 parents 4766eb4 + 8012e45 commit f32360c

28 files changed

Lines changed: 131 additions & 88 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ Dockerfile to test MT.
3434
|rawhide|fedora:rawhide|5.42.0|8.5.1|8.4.7|3.5.4|-|
3535
|rockylinux|rockylinux/rockylinux:9|5.32.1|8.1.34|8.0.44|3.5.1|-|
3636
|bookworm|debian:bookworm-slim|5.36.0|8.2.29|MariaDB 10.11.14|3.0.17|2028-06|
37-
|sid|debian:sid|5.40.1|8.4.11|MariaDB 11.8.5|3.5.4|-|
37+
|sid|debian:sid|5.40.1|8.4.16|MariaDB 11.8.5|3.5.4|-|
3838
|noble|ubuntu:noble|5.38.2|8.3.6|8.4.7|3.0.13|-|
3939
|amazonlinux|amazonlinux:2|5.16.3|7.4.33|MariaDB 5.5.68|1.0.2k|-|
4040
|amazonlinux2023 (\*4)|amazonlinux:2023|5.32.1|8.4.14|MariaDB 10.11.13|3.2.2|-|

amazonlinux/Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ FROM amazonlinux:2
22

33
WORKDIR /root
44

5+
COPY ./patch/ /root/patch/
56

67
RUN yum -y install\
78
which hostname glibc-langpack-ja git make cmake gcc clang curl perl perl-core tar zip unzip bzip2 which procps postfix cyrus-sasl-devel cyrus-sasl-plain\
@@ -36,9 +37,10 @@ RUN yum -y install\
3637
curl -sL --compressed https://git.io/cpm > cpm &&\
3738
chmod +x cpm &&\
3839
mv cpm /usr/local/bin/ &&\
39-
cpanm -v ExtUtils::ParseXS@3.51 &&\
4040
cpanm -n XML::DOM XMLRPC::Lite XML::Atom Net::Server Perl::Critic::Pulp Selenium::Remote::Driver &&\
4141
cpanm -v SQL::Translator@1.63 Archive::Zip@1.65 DBD::mysql@4.052 &&\
42+
cd /root/patch/EV-4.36 && cpanm --installdeps . && cpanm . && cd /root &&\
43+
rm -rf /root/patch &&\
4244
cpanm -v \
4345
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir Net::LDAP Linux::Pid Data::Section::Simple\
4446
pQuery\

amazonlinux2023/Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ FROM amazonlinux:2023
22

33
WORKDIR /root
44

5+
COPY ./patch/ /root/patch/
56

67
RUN dnf -y --allowerasing install\
78
which hostname glibc-langpack-ja glibc-locale-source git make cmake gcc clang curl perl perl-core tar zip unzip bzip2 which procps postfix cyrus-sasl-devel cyrus-sasl-plain\
@@ -25,9 +26,10 @@ RUN dnf -y --allowerasing install\
2526
curl -sL --compressed https://git.io/cpm > cpm &&\
2627
chmod +x cpm &&\
2728
mv cpm /usr/local/bin/ &&\
28-
cpanm -v ExtUtils::ParseXS@3.51 &&\
2929
cpanm -n XMLRPC::Lite XML::Atom Net::Server Perl::Critic::Pulp Selenium::Remote::Driver &&\
3030
cpanm -v Archive::Zip@1.65 DBD::mysql@4.052 &&\
31+
cd /root/patch/EV-4.36 && cpanm --installdeps . && cpanm . && cd /root &&\
32+
rm -rf /root/patch &&\
3133
cpanm -v \
3234
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir Net::LDAP Linux::Pid Data::Section::Simple\
3335
pQuery\

bin/build_all.pl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,14 @@
2424
perl-5.36 fedora37
2525
perl-5.38 fedora39
2626
perl-5.40 fedora41
27+
perl-5.42 fedora43
2728
2829
php-7.3 buster
2930
php-7.4 fedora32
3031
php-8.0 fedora35
3132
php-8.1 fedora37
3233
php-8.2 fedora39
33-
php-8.3 fedora40
34+
php-8.3 fedora41
3435
php-8.4 fedora42
3536
);
3637
my %aliases_rev;

bin/update_dockerfile.pl

Lines changed: 58 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -37,18 +37,18 @@
3737
broken => [qw(
3838
Archive::Zip@1.65 DBD::mysql@4.052
3939
)],
40-
# breaking EV, hence AnyEvent; might it be better to apply https://github.com/Perl/perl5/issues/22353?
41-
temporary => [qw( ExtUtils::ParseXS@3.51 )],
42-
extra => [qw( JSON::XS Starman Imager::File::WEBP Imager::File::AVIF Plack::Middleware::ReverseProxy Devel::CheckLib )],
43-
addons => [qw(
40+
extra => [qw( JSON::XS Starman Imager::File::WEBP Imager::File::AVIF Plack::Middleware::ReverseProxy Devel::CheckLib )],
41+
addons => [qw(
4442
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir
4543
Net::LDAP Linux::Pid Data::Section::Simple
4644
)],
4745
bcompat => [qw( pQuery )],
4846
make_mt => [qw( JavaScript::Minifier CSS::Minifier )],
4947
temp => [qw( Fluent::Logger )],
5048
},
51-
gem => {
49+
# cf. https://github.com/Perl/perl5/issues/22353
50+
patch => [qw(EV-4.36)],
51+
gem => {
5252
fluentd => [qw(fluentd:1.18.0)],
5353
},
5454
},
@@ -78,18 +78,18 @@
7878
broken => [qw(
7979
Archive::Zip@1.65 DBD::mysql@4.052
8080
)],
81-
# breaking EV, hence AnyEvent; might it be better to apply https://github.com/Perl/perl5/issues/22353?
82-
temporary => [qw( ExtUtils::ParseXS@3.51 )],
83-
extra => [qw( JSON::XS Starman Imager::File::WEBP Imager::File::AVIF Plack::Middleware::ReverseProxy Devel::CheckLib )],
84-
addons => [qw(
81+
extra => [qw( JSON::XS Starman Imager::File::WEBP Imager::File::AVIF Plack::Middleware::ReverseProxy Devel::CheckLib )],
82+
addons => [qw(
8583
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir
8684
Net::LDAP Linux::Pid Data::Section::Simple
8785
)],
8886
bcompat => [qw( pQuery )],
8987
make_mt => [qw( JavaScript::Minifier CSS::Minifier )],
9088
temp => [qw( Fluent::Logger )],
9189
},
92-
gem => {
90+
# cf. https://github.com/Perl/perl5/issues/22353
91+
patch => [qw(EV-4.36)],
92+
gem => {
9393
fluentd => [qw(fluentd:1.18.0)],
9494
},
9595
},
@@ -113,7 +113,7 @@
113113
},
114114
cpan => {
115115
# cf. https://rt.cpan.org/Public/Bug/Display.html?id=156899
116-
no_test => [qw( GD XML::LibXML Web::Query )],
116+
no_test => [qw( GD XML::LibXML Web::Query )],
117117
_replace => {
118118
'Imager::File::AVIF' => '', # test fails
119119
},
@@ -178,7 +178,7 @@
178178
make => {
179179
ruby => $ruby_version,
180180
},
181-
phpunit => 9,
181+
phpunit => 9,
182182
use_archive => 1,
183183
},
184184
noble => {
@@ -192,7 +192,7 @@
192192
mysql84 => 'https://dev.mysql.com/get/mysql-apt-config_0.8.36-1_all.deb',
193193
},
194194
cpan => {
195-
no_test => [qw(GD)],
195+
no_test => [qw(GD)],
196196
_replace => {
197197
'Imager::File::AVIF' => '',
198198
},
@@ -215,11 +215,9 @@
215215
images => [qw( libomp-devel )],
216216
},
217217
cpan => {
218-
broken => [qw( EV )], # needs ExtUtils::ParseXS 3.51
219-
no_test => [qw( App::Prove::Plugin::MySQLPool )],
220-
bump_parse_xs => [qw( ExtUtils::ParseXS )], # Imager needs the latest version of ParseXS
218+
no_test => [qw( App::Prove::Plugin::MySQLPool )],
221219
_replace => {
222-
'Imager::File::AVIF' => '', # test fails
220+
'Imager::File::AVIF' => '', # test fails
223221
},
224222
},
225223
patch => ['Test-mysqld-1.0030', 'Crypt-DES-2.07', 'Data-MessagePack-Stream-1.05', 'YAML-Syck-1.36'],
@@ -263,11 +261,9 @@
263261
images => [qw( libomp-devel )],
264262
},
265263
cpan => {
266-
broken => [qw( EV )], # needs ExtUtils::ParseXS 3.51
267-
no_test => [qw( App::Prove::Plugin::MySQLPool )],
268-
bump_parse_xs => [qw( ExtUtils::ParseXS )], # Imager needs the latest version of ParseXS
264+
no_test => [qw( App::Prove::Plugin::MySQLPool )],
269265
_replace => {
270-
'Imager::File::AVIF' => '', # test fails
266+
'Imager::File::AVIF' => '', # test fails
271267
},
272268
},
273269
patch => ['Test-mysqld-1.0030', 'Crypt-DES-2.07', 'Data-MessagePack-Stream-1.05', 'YAML-Syck-1.36'],
@@ -311,13 +307,13 @@
311307
images => [qw( libomp-devel )],
312308
},
313309
cpan => {
314-
no_test => [qw( App::Prove::Plugin::MySQLPool )],
310+
no_test => [qw( App::Prove::Plugin::MySQLPool )],
315311
_replace => {
316-
'Imager::File::AVIF' => '', # test fails
312+
'Imager::File::AVIF' => '', # test fails
317313
},
318314
},
319-
make_dummy_cert => '/usr/bin',
320-
make => {
315+
make_dummy_cert => '/usr/bin',
316+
make => {
321317
# package is broken for unknown reason
322318
GraphicsMagick => '1.3.43',
323319
},
@@ -351,9 +347,9 @@
351347
images => [qw( libomp-devel )],
352348
},
353349
cpan => {
354-
no_test => [qw( App::Prove::Plugin::MySQLPool )],
350+
no_test => [qw( App::Prove::Plugin::MySQLPool )],
355351
_replace => {
356-
'Imager::File::AVIF' => '', # test fails
352+
'Imager::File::AVIF' => '', # test fails
357353
},
358354
},
359355
make_dummy_cert => '/usr/bin',
@@ -398,8 +394,8 @@
398394
# seems broken with the current gcc/clang, and the patch for 1.05 does not work
399395
# but let's wait and see...
400396
temporary => [qw(Data::MessagePack::Stream@1.04)],
401-
_replace => {
402-
'Imager::File::AVIF' => '', # test fails
397+
_replace => {
398+
'Imager::File::AVIF' => '', # test fails
403399
},
404400
},
405401
patch => ['Test-mysqld-1.0030', 'Crypt-DES-2.07'],
@@ -409,7 +405,7 @@
409405
GraphicsMagick => '1.3.43',
410406
},
411407
remi => {
412-
rpm => 'https://www.rpmfind.net/linux/remi/fedora/40/remi/x86_64/remi-release-40-1.fc40.remi.noarch.rpm',
408+
rpm => 'https://ftp.riken.jp/Linux/remi/fedora/40/remi/x86_64/remi-release-40-1.fc40.remi.noarch.rpm',
413409
module => {
414410
reset => 'php',
415411
enable => 'php:remi-8.2',
@@ -440,8 +436,8 @@
440436
# seems broken with the current gcc/clang, and the patch for 1.05 does not work
441437
# but let's wait and see...
442438
temporary => [qw(Data::MessagePack::Stream@1.04)],
443-
_replace => {
444-
'Imager::File::AVIF' => '', # test fails
439+
_replace => {
440+
'Imager::File::AVIF' => '', # test fails
445441
},
446442
},
447443
patch => ['Test-mysqld-1.0030'],
@@ -483,11 +479,11 @@
483479
base => 'centos',
484480
yum => {
485481
_replace => {
486-
'mysql' => 'community-mysql',
487-
'mysql-server' => 'community-mysql-server',
488-
'mysql-devel' => 'community-mysql-devel',
489-
'procps' => 'perl-Unix-Process',
490-
'phpunit' => '',
482+
'mysql' => 'community-mysql',
483+
'mysql-server' => 'community-mysql-server',
484+
'mysql-devel' => 'community-mysql-devel',
485+
'procps' => 'perl-Unix-Process',
486+
'phpunit' => '',
491487
'libheif-devel' => '',
492488
},
493489
base => [qw( glibc-langpack-en glibc-langpack-ja )],
@@ -503,13 +499,13 @@
503499
base => 'centos',
504500
yum => {
505501
_replace => {
506-
'mysql' => 'community-mysql',
507-
'mysql-server' => 'community-mysql-server',
508-
'mysql-devel' => 'community-mysql-devel',
509-
'procps' => 'perl-Unix-Process',
510-
'phpunit' => '',
511-
'ruby' => '',
512-
'ruby-devel' => '',
502+
'mysql' => 'community-mysql',
503+
'mysql-server' => 'community-mysql-server',
504+
'mysql-devel' => 'community-mysql-devel',
505+
'procps' => 'perl-Unix-Process',
506+
'phpunit' => '',
507+
'ruby' => '',
508+
'ruby-devel' => '',
513509
'libavif-devel' => '',
514510
'libheif-devel' => '',
515511
},
@@ -980,8 +976,8 @@
980976
'Imager::File::AVIF' => '',
981977
},
982978
},
983-
patch => ['Test-mysqld-1.0030'],
984-
make => {
979+
patch => ['Test-mysqld-1.0030'],
980+
make => {
985981
ruby => '3.1.6',
986982
},
987983
make_dummy_cert => '/usr/bin',
@@ -1097,7 +1093,7 @@
10971093
'App::Prove::Plugin::MySQLPool' => '',
10981094
'Test::mysqld' => '',
10991095
'DBD::mysql@4.052' => '',
1100-
'Imager::File::AVIF' => '', # test fails
1096+
'Imager::File::AVIF' => '', # test fails
11011097
},
11021098
db => [qw( DBD::Pg Test::PostgreSQL )],
11031099
},
@@ -1199,18 +1195,23 @@ sub merge_conf {
11991195
my %conf = %{ $Conf{$name} // {} };
12001196
my $base = $conf{base} or return \%conf;
12011197
for my $key (keys %{ $Conf{$base} }) {
1202-
my %replace = %{ delete $conf{$key}{_replace} || {} };
1203-
for my $subkey (keys %{ $Conf{$base}{$key} }) {
1204-
my @values = @{ $conf{$key}{$subkey} || [] };
1205-
for my $value (@{ $Conf{$base}{$key}{$subkey} }) {
1206-
if (exists $replace{$value}) {
1207-
my $new_value = $replace{$value};
1208-
push @values, $new_value if $new_value;
1209-
} else {
1210-
push @values, $value;
1198+
if (ref $Conf{$base}{$key} eq 'HASH') {
1199+
my %replace = %{ delete $conf{$key}{_replace} || {} };
1200+
for my $subkey (keys %{ $Conf{$base}{$key} }) {
1201+
my @values = @{ $conf{$key}{$subkey} || [] };
1202+
for my $value (@{ $Conf{$base}{$key}{$subkey} }) {
1203+
if (exists $replace{$value}) {
1204+
my $new_value = $replace{$value};
1205+
push @values, $new_value if $new_value;
1206+
} else {
1207+
push @values, $value;
1208+
}
12111209
}
1210+
$conf{$key}{$subkey} = \@values if @values;
12121211
}
1213-
$conf{$key}{$subkey} = \@values if @values;
1212+
}
1213+
if (ref $Conf{$base}{$key} eq 'ARRAY') {
1214+
push @{ $conf{$key} //= [] }, @{ $Conf{$base}{$key} };
12141215
}
12151216
}
12161217
$conf{cpanm} = 'cpanm';

bookworm/Dockerfile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ FROM debian:bookworm-slim
22

33
WORKDIR /root
44

5+
COPY ./patch/ /root/patch/
6+
57
RUN \
68
apt-get update &&\
79
DEBIAN_FRONTEND=noninteractive DEBCONF_NOWARNINGS=yes\
@@ -26,9 +28,10 @@ RUN \
2628
curl -sL --compressed https://git.io/cpm > cpm &&\
2729
chmod +x cpm &&\
2830
mv cpm /usr/local/bin/ &&\
29-
cpm install -g --test --show-build-log-on-failure ExtUtils::ParseXS@3.51 &&\
3031
cpm install -g --show-build-log-on-failure XMLRPC::Lite XML::Atom Net::Server Perl::Critic::Pulp Selenium::Remote::Driver &&\
3132
cpm install -g --test --show-build-log-on-failure Archive::Zip@1.65 DBD::mysql@4.052 &&\
33+
cd /root/patch/EV-4.36 && cpanm --installdeps . && cpanm . && cd /root &&\
34+
rm -rf /root/patch &&\
3235
cpanm -v \
3336
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir Net::LDAP Linux::Pid Data::Section::Simple\
3437
pQuery\

bullseye/Dockerfile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ FROM debian:bullseye-slim
22

33
WORKDIR /root
44

5+
COPY ./patch/ /root/patch/
6+
57
RUN \
68
apt-get update &&\
79
DEBIAN_FRONTEND=noninteractive DEBCONF_NOWARNINGS=yes\
@@ -26,9 +28,10 @@ RUN \
2628
curl -sL --compressed https://git.io/cpm > cpm &&\
2729
chmod +x cpm &&\
2830
mv cpm /usr/local/bin/ &&\
29-
cpm install -g --test --show-build-log-on-failure ExtUtils::ParseXS@3.51 &&\
3031
cpm install -g --show-build-log-on-failure XMLRPC::Lite XML::Atom Net::Server Perl::Critic::Pulp Selenium::Remote::Driver &&\
3132
cpm install -g --test --show-build-log-on-failure Archive::Zip@1.65 DBD::mysql@4.052 &&\
33+
cd /root/patch/EV-4.36 && cpanm --installdeps . && cpanm . && cd /root &&\
34+
rm -rf /root/patch &&\
3235
cpanm -v \
3336
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir Net::LDAP Linux::Pid Data::Section::Simple\
3437
pQuery\

buster/Dockerfile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ FROM debian:buster-slim
22

33
WORKDIR /root
44

5+
COPY ./patch/ /root/patch/
6+
57
RUN \
68
sed -i -E 's/deb.debian.org/archive.debian.org/' /etc/apt/sources.list &&\
79
sed -i -E 's/security.debian.org/archive.debian.org/' /etc/apt/sources.list &&\
@@ -33,9 +35,10 @@ RUN \
3335
curl -sL --compressed https://git.io/cpm > cpm &&\
3436
chmod +x cpm &&\
3537
mv cpm /usr/local/bin/ &&\
36-
cpm install -g --test --show-build-log-on-failure ExtUtils::ParseXS@3.51 &&\
3738
cpm install -g --show-build-log-on-failure XMLRPC::Lite XML::Atom Net::Server Perl::Critic::Pulp Selenium::Remote::Driver &&\
3839
cpm install -g --test --show-build-log-on-failure Archive::Zip@1.65 DBD::mysql@4.052 &&\
40+
cd /root/patch/EV-4.36 && cpanm --installdeps . && cpanm . && cd /root &&\
41+
rm -rf /root/patch &&\
3942
cpanm -v \
4043
AnyEvent::FTP::Server Class::Method::Modifiers Capture::Tiny Moo File::chdir Net::LDAP Linux::Pid Data::Section::Simple\
4144
pQuery\

0 commit comments

Comments
 (0)