Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package rakudo for openSUSE:Factory checked in at 2022-10-03 13:44:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rakudo (Old) and /work/SRC/openSUSE:Factory/.rakudo.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rakudo" Mon Oct 3 13:44:54 2022 rev:72 rq:1007547 version:2022.07 Changes: -------- --- /work/SRC/openSUSE:Factory/rakudo/rakudo.changes 2022-04-04 19:26:41.900326832 +0200 +++ /work/SRC/openSUSE:Factory/.rakudo.new.2275/rakudo.changes 2022-10-03 13:45:12.277407849 +0200 @@ -1,0 +2,51 @@ +Sun Oct 2 12:45:42 UTC 2022 - Stefan Seifert <[email protected]> + +- Final fix for module packaging issues. This follows upstream in completely + reverting an offending change. + +------------------------------------------------------------------- +Sun Oct 2 09:03:11 UTC 2022 - Stefan Seifert <[email protected]> + +- Backport yet another fix for module packaging issues (included in the same file) + +------------------------------------------------------------------- +Sat Oct 1 15:59:56 UTC 2022 - Stefan Seifert <[email protected]> + +- Update backported fix to the real fix (see GitHub for explanation of this + weird sequence) + +------------------------------------------------------------------- +Sat Oct 1 13:48:30 UTC 2022 - Stefan Seifert <[email protected]> + +- Backport fix for module packaging in rakudo-fix-module-installation.diff + Details in https://github.com/rakudo/rakudo/issues/4907 + To be removed for the next release + +------------------------------------------------------------------- +Sat Oct 1 12:39:18 CEST 2022 - [email protected] + +- update to version 2022.07 + + Make previous values in REPL accessible with `$*N` + + Add an `IO::Path.dir-with-entries` method, returning a `Bool` + + Implement `will complain` trait + + Allow optional : on LHS of signature binding declaration + + Make &[max] and &[min] return RHS for ties + + Make handles on attribute of type object more natural + + Allow :from<Raku> in identities + + Reconsider the way `$*PERL` is deprecated + + Allow setting ThreadPoolScheduler's max_threads to semi-infinite value + + Re-imagine DateTime.new(Str) / Str.DateTime + + Make sort() a runtime error + + Implement coercion via new-disp and re-consider return typechecking dispatcher + + Make Iterable.hyper|race take Any as a default for :batch and :degree + + Categorize exceptions thrown by role appliers + + Add :real named argument to DateTime.posix + + Introduce (Exception|Cool).Failure coercer + + Implement fallback support for MRO + + Add IO::Path inode, dev, and devtype methods + + Add sub version of .head / .skip / .tail + + Implement Haskell's "span" as "snip" in 6.e + + Remove the $?COMPILATION-ID constant as it was not documented and not tested + + Many bugfixes and performance improvements + +------------------------------------------------------------------- Old: ---- rakudo-2022.03.tar.gz New: ---- rakudo-2022.07.tar.gz rakudo-fix-module-installation.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rakudo.spec ++++++ --- /var/tmp/diff_new_pack.FpLBH2/_old 2022-10-03 13:45:13.033409513 +0200 +++ /var/tmp/diff_new_pack.FpLBH2/_new 2022-10-03 13:45:13.037409521 +0200 @@ -17,7 +17,7 @@ Name: rakudo -Version: 2022.03 +Version: 2022.07 Release: 2.1 Summary: Raku (formerly Perl 6) implemenation that runs on MoarVM License: Artistic-2.0 @@ -25,18 +25,19 @@ URL: https://rakudo.org/ Source0: rakudo-%{version}.tar.gz Patch0: rakudo-test-log.diff +Patch1: rakudo-fix-module-installation.diff %if !0%{?rhel_version} BuildRequires: fdupes %endif -BuildRequires: moarvm-devel >= 2022.03 -BuildRequires: nqp >= 2022.03 +BuildRequires: moarvm-devel >= 2022.07 +BuildRequires: nqp >= 2022.07 BuildRequires: perl(Archive::Tar) BuildRequires: perl(Digest::SHA) BuildRequires: perl(IPC::Cmd) BuildRequires: perl(YAML::Tiny) Provides: perl6 = %{version}-%{release} -Requires: moarvm >= 2022.03 -Requires: nqp >= 2022.03 +Requires: moarvm >= 2022.07 +Requires: nqp >= 2022.07 BuildRoot: %{_tmppath}/%{name}-%{version}-build %ifarch s390x BuildRequires: libffi-devel @@ -48,6 +49,7 @@ %prep %setup -q %patch0 -p1 +%patch1 -p1 %build perl Configure.pl --prefix="%{_prefix}" ++++++ rakudo-2022.03.tar.gz -> rakudo-2022.07.tar.gz ++++++ ++++ 21982 lines of diff (skipped) ++++++ rakudo-fix-module-installation.diff ++++++ diff --git a/src/core.c/CompUnit/Repository/Installation.pm6 b/src/core.c/CompUnit/Repository/Installation.pm6 index d4512847c..e668475b7 100644 --- a/src/core.c/CompUnit/Repository/Installation.pm6 +++ b/src/core.c/CompUnit/Repository/Installation.pm6 @@ -332,7 +332,7 @@ sub MAIN(:$name, :$auth, :$ver, *@, *%) { # Precomp files should only depend on downstream repos PROCESS::<$REPO> := self; - my $precomp = $head.precomp-repository; + my $precomp = self.precomp-repository; my $repo-prefix = self!repo-prefix; my $*DISTRIBUTION = CompUnit::Repository::Distribution.new($dist, :repo(self), :$dist-id); my $*RESOURCES = Distribution::Resources.new(:repo(self), :$dist-id); diff --git a/lib/CompUnit/Repository/Staging.rakumod b/lib/CompUnit/Repository/Staging.rakumod index 7fdc73e4e..a25eb2ca5 100644 --- a/lib/CompUnit/Repository/Staging.rakumod +++ b/lib/CompUnit/Repository/Staging.rakumod @@ -1,36 +1,10 @@ -use nqp; # we're using nqp::iscont() for convenience - class CompUnit::Repository::Staging is CompUnit::Repository::Installation { - has Str:D $.name is required; - has Bool:D $!replace is built(:bind) = False; + has Str $.name; has CompUnit::Repository $!parent; - # repo to (re)set next-repo of, if $!replace is set, and this isn't - # then the $!parent was the first repo in the chain - has CompUnit::Repository $!prev-repo; submethod TWEAK(--> Nil) { $!parent = CompUnit::RepositoryRegistry.repository-for-name($!name); - - if $!replace { - my $repo := $*REPO; - if $repo ~~ $!parent { - self.next-repo = $repo.next-repo; - nqp::iscont($repo) - ?? ($repo = self) - !! (PROCESS::<$REPO> := self); - } - else { - $!prev-repo := $repo; - while ($repo := $repo.next-repo) && $repo !~~ $!parent { - $!prev-repo := $repo; - } - die "Repository '$!name' is not part of the REPO-chain" - unless $repo; - - self.next-repo = $!prev-repo.next-repo; - $!prev-repo.next-repo = self; - } - } + CompUnit::RepositoryRegistry.register-name($!name, self); } method short-id(--> Str:D) { 'staging' } @@ -39,24 +13,6 @@ class CompUnit::Repository::Staging is CompUnit::Repository::Installation { self.^name ~ '#name(' ~ $!name ~ ')#' ~ self.prefix.absolute } - # make sure we include any candidates of the repo being shadowed - method candidates(|c) { - if callsame() -> @staging_candidates { - if $!parent.candidates(|c) -> @installed_candidates { - (|@installed_candidates, |@staging_candidates) - .sort(*.meta<ver>) - .sort(*.meta<api>) - .reverse - } - else { - @staging_candidates - } - } - else { - $!parent.candidates(|c) - } - } - method source-file(CompUnit::Repository::Staging:D: Str:D $name --> IO::Path) { @@ -89,6 +45,7 @@ class CompUnit::Repository::Staging is CompUnit::Repository::Installation { .throw without $io.unlink; # throw actual failures } } + method remove-artifacts(CompUnit::Repository::Staging:D: --> Nil) { my $io := self.prefix; really-unlink($io.child("version")); @@ -115,13 +72,6 @@ class CompUnit::Repository::Staging is CompUnit::Repository::Installation { } method self-destruct(CompUnit::Repository::Staging:D: --> Nil) { self-destruct self.prefix; - if $!replace { - $!prev-repo - ?? ($!prev-repo.next-repo = $!parent) - !! nqp::iscont($*REPO) - ?? ($*REPO = $!parent) - !! (PROCESS::<$REPO> := $!parent); - } } }
