Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > linux.debian.maint.java > #12944

gradle reboot -- 2025W10 update

From Julien Plissonneau Duquène <sre4ever@free.fr>
Newsgroups linux.debian.maint.java
Subject gradle reboot -- 2025W10 update
Date 2025-03-07 18:50 +0100
Message-ID <KnJZD-4lZf-7@gated-at.bofh.it> (permalink)
References (14 earlier) <KdBAm-f8rZ-7@gated-at.bofh.it> <Kg9ex-gOak-11@gated-at.bofh.it> <KiEQV-SQn-3@gated-at.bofh.it> <KledA-2DMj-19@gated-at.bofh.it> <KledA-2DMj-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Good evening,

The FrankenKotlin experiment is now over, and it failed.

Le 2025-02-28 20:20, Julien Plissonneau Duquène a écrit :
> incorrectly generated code in Kotlin plugins

This wasn't as bad as it looked like actually: it was caused by the 
Kotlin compiler using the default JDK (21) as its target for API 
compatibility, so while the bytecode was compatible with Java 8 it used 
some API calls that were introduced in later JDKs instead of 
reimplementing them as inline code. Using the JDK 11 again solved that 
for the purpose of using that compiler for building Gradle.

After fixing a few more little things the next roadblock was a missing 
implicit class declaration for the script that caused the 
pluginManagement block (a function call actually) to fail to compile 
with an internal assertion error:

> * Exception is:
> java.lang.AssertionError: Undefined parameter referenced: class 
> Settings::this
> owner=class Settings_gradle; [class Settings_gradle::this]
> 
>         at 
> org.jetbrains.kotlin.ir.util.SymbolTable.referenceValueParameter(SymbolTable.kt:420)
>         at 
> org.jetbrains.kotlin.psi2ir.generators.ArgumentsGenerationUtilsKt$generateReceiver$$inlined$generateDelegatedValue$1$1.invoke(OnceExpressionValue.kt:63)
>         at 
> org.jetbrains.kotlin.psi2ir.generators.ArgumentsGenerationUtilsKt$generateReceiver$$inlined$generateDelegatedValue$1$1.invoke(OnceExpressionValue.kt:32)
>         at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)

It seemed like not much would be needed to fix this, but this was 
actually a rabbit hole. My cherry-picks started to touch IR code, then 
backends code, then plugins code, and I ended up facing walls of build 
errors after applying each of them, and fixing these errors required new 
picks, which meant going back to new walls of errors on modules I just 
barely got to build. After picking 19 commits and adding 9k lines of 
patches I estimated that I wasn't even half done fixing that single 
issue and decided that it was definitely not worth continuing.

I computed a few stats to illustrate how this Kotlin project was a 
moving target (and probably still is) by then. Between v1.3.31 
(2019-04-25) and v1.3.70 (2020-03-03), that's an interval of a bit more 
than 10 months, there were 1114 commits that affected some source files 
under compiler/ir alone (more than 3 commits/calendar day on average), 
for 571k lines of git log -p and 204k lines of git diff. Overall there 
were 8236 commits for 4.4M lines of git log -p between the same 
releases. For comparison over the same period that's a bit more than 10% 
of the activity of the Linux kernel tree in number of commits, and about 
44% in number of git log -p lines.

This outcome is a bit frustrating but it was the most likely one, and I 
learned a few valuable things in the process.

My plan is now to update the Kotlin package to 2.0.21 (renaming it 
kotlin2.0) and use it to build Gradle 8. I'm not sure that both package 
(and dependencies) will be in a releasable shape in time for Trixie, but 
if they miss the deadline they can still be made available later through 
backports.

Cheers,

-- 
Julien Plissonneau Duquène

Back to linux.debian.maint.java | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

gradle reboot Julien Plissonneau Duquène <sre4ever@free.fr> - 2024-11-04 14:50 +0100
  Re: gradle reboot Jérôme Charaoui <jerome@riseup.net> - 2024-11-04 15:10 +0100
  Re: gradle reboot Toni Mueller <toni@debian.org> - 2024-11-04 17:00 +0100
    Re: gradle reboot sre4ever@free.fr - 2024-11-19 11:10 +0100
      Re: gradle reboot -- 2024W47 update sre4ever@free.fr - 2024-11-22 18:30 +0100
        Re: gradle reboot -- 2024W48 update sre4ever@free.fr - 2024-12-02 19:50 +0100
          Re: gradle reboot -- 2024W49 update sre4ever@free.fr - 2024-12-09 12:10 +0100
            Re: gradle reboot -- 2024W49 update Emmanuel Bourg <ebourg@apache.org> - 2024-12-09 14:40 +0100
              Re: gradle reboot -- 2024W49 update sre4ever@free.fr - 2024-12-09 19:00 +0100
                Re: gradle reboot -- 2024W49 update Hans-Christoph Steiner <hans@at.or.at> - 2024-12-09 19:20 +0100
                Re: gradle reboot -- 2024W49 update sre4ever@free.fr - 2024-12-10 10:40 +0100
                Re: gradle reboot -- 2024W49 update Matthias Klose <doko@debian.org> - 2024-12-14 10:50 +0100
                Re: gradle reboot -- 2024W49 update sre4ever@free.fr - 2024-12-14 11:50 +0100
                Re: gradle reboot -- 2024W49 update Matthias Klose <doko@debian.org> - 2024-12-14 13:20 +0100
            Re: gradle reboot -- 2024W50 update sre4ever@free.fr - 2024-12-13 19:40 +0100
              Re: gradle reboot -- 2024W50 update Emmanuel Bourg <ebourg@apache.org> - 2024-12-14 00:40 +0100
              gradle: FI -- reverse dependencies that FTBFS sre4ever@free.fr - 2024-12-17 12:00 +0100
                Re: gradle: FI -- reverse dependencies that FTBFS Emmanuel Bourg <ebourg@apache.org> - 2024-12-18 10:00 +0100
              Re: gradle reboot -- 2024W51 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2024-12-20 19:20 +0100
                Re: gradle reboot -- 2025W02 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-01-10 19:30 +0100
                Re: gradle reboot -- 2025W03 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-01-17 19:30 +0100
                Re: gradle reboot -- 2025W04 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-01-24 19:20 +0100
                Re: gradle reboot -- 2025W04 update Hans-Christoph Steiner <hans@at.or.at> - 2025-01-27 17:10 +0100
                Re: gradle reboot -- 2025W04 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-01-27 19:30 +0100
                Re: gradle reboot -- 2025W05 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-01-31 19:10 +0100
                gradle reboot -- 2025W06 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-02-07 19:50 +0100
                gradle reboot -- 2025W07 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-02-14 20:10 +0100
                Re: gradle reboot -- 2025W07 update Hans-Christoph Steiner <hans@at.or.at> - 2025-02-19 08:00 +0100
                Re: gradle reboot -- 2025W07 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-02-19 09:50 +0100
                gradle reboot -- 2025W08 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-02-21 18:20 +0100
                gradle reboot -- 2025W09 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-02-28 20:30 +0100
                gradle reboot -- 2025W10 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-03-07 18:50 +0100
                Re: gradle reboot -- 2025W10 update Emmanuel Bourg <ebourg@apache.org> - 2025-03-10 18:50 +0100
                Re: gradle reboot -- 2025W10 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-03-10 19:10 +0100
                gradle reboot -- 2025W11 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-03-14 19:50 +0100
                gradle reboot -- 2025W12 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-03-21 19:00 +0100
                kotlin2 in Debian -- 2025W13 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-03-28 20:00 +0100
                Re: kotlin2 in Debian -- 2025W13 update Emmanuel Bourg <ebourg@apache.org> - 2025-03-29 12:40 +0100
                Re: kotlin2 in Debian -- 2025W13 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-03-29 13:50 +0100
                kotlin2 in Debian -- 2025W14 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-04-04 21:00 +0200
                kotlin2 in Debian -- 2025W15 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-04-11 14:20 +0200
                kotlin2 in Debian -- 2025W16 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-04-18 19:50 +0200
                kotlin2 in Debian -- 2025W17 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-04-25 22:10 +0200
                kotlin2 in Debian -- 2025W18 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-05-02 19:50 +0200
                Re: kotlin2 in Debian -- 2025W18 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-05-06 18:40 +0200
                kotlin2 in Debian -- 2025W19 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-05-09 22:20 +0200
                kotlin2 in Debian -- 2025W20 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-05-18 13:50 +0200
                kotlin2 in Debian -- 2025W21 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-05-23 20:10 +0200
                kotlin2 in Debian -- 2025W22 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-05-30 20:50 +0200
                kotlin2 in Debian -- 2025W23 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-06-07 19:20 +0200
                kotlin2 in Debian -- 2025W24 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-06-14 19:10 +0200
                kotlin2 in Debian -- 2025W25 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-06-20 20:00 +0200
                Re: kotlin2 in Debian -- 2025W26 and W27 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-07-01 17:00 +0200
                kotlin2 in Debian -- 2025W28 to W30 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-07-27 23:00 +0200
                kotlin2 in Debian -- 2025W31 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-08-03 22:00 +0200
                kotlin2 in Debian -- 2025W32 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-08-11 00:10 +0200
                kotlin2 in Debian -- 2025W33 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-08-16 15:40 +0200
                kotlin2 in Debian -- 2025W34 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-08-24 17:50 +0200
                kotlin2 in Debian -- 2025W35 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-09-01 21:30 +0200
                kotlin2 in Debian -- 2025W36 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-09-07 21:50 +0200
                kotlin2 in Debian -- 2025W37 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-09-15 14:30 +0200
                kotlin2 in Debian -- 2025W38 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-09-22 15:50 +0200
                Re: kotlin2 in Debian -- 2025W39-W41 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-10-12 23:10 +0200
                Re: kotlin2 in Debian -- 2025W39-W41 update Hans-Christoph Steiner <hans@at.or.at> - 2025-10-31 12:10 +0100
                Re: kotlin2 in Debian -- 2025W39-W41 update Bastien Roucaries <rouca@debian.org> - 2026-02-15 20:00 +0100
                Re: kotlin2 in Debian -- 2025W23 update Emmanuel Bourg <ebourg@apache.org> - 2025-06-16 15:50 +0200
                Re: kotlin2 in Debian -- 2025W23 update Julien Plissonneau Duquène <sre4ever@free.fr> - 2025-06-20 21:30 +0200
  Re: gradle reboot Emmanuel Bourg <ebourg@apache.org> - 2024-11-08 00:30 +0100
    Re: gradle reboot Hans-Christoph Steiner <hans@at.or.at> - 2024-11-26 13:40 +0100
      Re: gradle reboot sre4ever@free.fr - 2024-11-27 09:30 +0100

csiph-web