[api, jewel] IJPL-200569: Do not consider classes generated by Compose Compiler Plugin as public API

(cherry picked from commit f14930f05ecfd11327c4229aad7ed9ad79f6182d)


(cherry picked from commit 921fdc07ff81c682e75a0c2eff695e493020e757)

IJ-MR-173046

GitOrigin-RevId: 181b84465a283d7c36cee63844e78c58fdc6de1c
This commit is contained in:
Konstantin Nisht
2025-08-06 14:52:14 +02:00
committed by intellij-monorepo-bot
parent 56920118ff
commit 5e7dc2b0d4
5 changed files with 14 additions and 171 deletions

View File

@@ -35,10 +35,6 @@ com.jetbrains.WindowDecorations$CustomTitleBar
- a:setHeight(F):V
com.jetbrains.WindowMove
- a:startMovingTogetherWithMouse(java.awt.Window,I):V
f:org.jetbrains.jewel.window.ComposableSingletons$TitleBarKt
- sf:INSTANCE:org.jetbrains.jewel.window.ComposableSingletons$TitleBarKt
- <init>():V
- f:getLambda$-1645946951$intellij_platform_jewel_decoratedWindow():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.window.DecoratedWindowKt
- sf:DecoratedWindow(kotlin.jvm.functions.Function0,androidx.compose.ui.window.WindowState,Z,java.lang.String,androidx.compose.ui.graphics.painter.Painter,Z,Z,Z,Z,kotlin.jvm.functions.Function1,kotlin.jvm.functions.Function1,org.jetbrains.jewel.window.styling.DecoratedWindowStyle,kotlin.jvm.functions.Function3,androidx.compose.runtime.Composer,I,I,I):V
org.jetbrains.jewel.window.DecoratedWindowScope

View File

@@ -52,101 +52,6 @@ f:org.jetbrains.jewel.samples.showcase.components.ChipsAndTreeKt
- sf:TreeSample(androidx.compose.ui.Modifier,androidx.compose.runtime.Composer,I,I):V
f:org.jetbrains.jewel.samples.showcase.components.ComboBoxesKt
- sf:ComboBoxes(androidx.compose.runtime.Composer,I):V
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$BannersKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$BannersKt
- <init>():V
- f:getLambda$-336793573$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function3
- f:getLambda$-45649343$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1472560159$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$999604259$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$BordersKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$BordersKt
- <init>():V
- f:getLambda$-1861199554$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-275890148$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-462245952$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1559952699$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$461685959$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$985760895$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$ButtonsKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$ButtonsKt
- <init>():V
- f:getLambda$-1639145588$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function4
- f:getLambda$-1703810561$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-2038895100$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-77729762$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-989120820$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function4
- f:getLambda$1383940265$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1390081517$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1424958848$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1438160738$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function3
- f:getLambda$1517388859$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1543737702$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$158888063$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1868597718$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1945203491$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function4
- f:getLambda$2055082044$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$534672086$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$591556181$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$917225888$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$ChipsAndTreeKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$ChipsAndTreeKt
- <init>():V
- f:getLambda$-1725738699$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-367029652$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function4
- f:getLambda$-398831297$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$202571920$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$2078915271$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$367636904$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$461327139$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$ComboBoxesKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$ComboBoxesKt
- <init>():V
- f:getLambda$-1611273135$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-2049027872$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function5
- f:getLambda$1819384926$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function5
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$SplitLayoutsKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$SplitLayoutsKt
- <init>():V
- f:getLambda$-1545380237$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1762909211$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-52258364$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$2016917043$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$495450846$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$713853737$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$851555695$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TabsKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TabsKt
- <init>():V
- f:getLambda$1450404026$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function4
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TextAreasKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TextAreasKt
- <init>():V
- f:getLambda$-2120042682$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-287660472$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-660043715$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-677331265$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1478796158$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$940738803$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function3
- f:getLambda$943632071$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TextFieldsKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TextFieldsKt
- <init>():V
- f:getLambda$-1122689496$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-527406401$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-675835185$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function3
- f:getLambda$1312668288$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1751394912$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1949235240$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$196422499$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function4
- f:getLambda$2056282528$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$94388671$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TooltipsKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.components.ComposableSingletons$TooltipsKt
- <init>():V
- f:getLambda$-1070103804$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-186585630$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-408485079$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.components.IconsKt
- sf:Icons(androidx.compose.runtime.Composer,I):V
f:org.jetbrains.jewel.samples.showcase.components.LinksKt
@@ -182,27 +87,6 @@ f:org.jetbrains.jewel.samples.showcase.views.ComponentsViewModel
- f:getCurrentView():org.jetbrains.jewel.samples.showcase.views.ViewInfo
- f:getViews():androidx.compose.runtime.snapshots.SnapshotStateList
- f:setCurrentView(org.jetbrains.jewel.samples.showcase.views.ViewInfo):V
f:org.jetbrains.jewel.samples.showcase.views.ComposableSingletons$ComponentsViewModelKt
- sf:INSTANCE:org.jetbrains.jewel.samples.showcase.views.ComposableSingletons$ComponentsViewModelKt
- <init>():V
- f:getLambda$-1046460726$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1136736643$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1239391927$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1329667844$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1432323128$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1522599045$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1625254329$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-1818185530$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-2011116731$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-2101392648$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-274735922$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-467667123$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-660598324$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$-853529525$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1421849844$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1614781045$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$1807712246$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
- f:getLambda$2000643447$intellij_platform_jewel_samples_showcase():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.samples.showcase.views.KeyBinding
- sf:$stable:I
- sf:Companion:org.jetbrains.jewel.samples.showcase.views.KeyBinding$Companion

View File

@@ -1,5 +0,0 @@
f:org.jetbrains.jewel.samples.standalone.markdown.ComposableSingletons$MarkdownEditorKt
- sf:INSTANCE:org.jetbrains.jewel.samples.standalone.markdown.ComposableSingletons$MarkdownEditorKt
- <init>():V
- f:getLambda$-1551256022$intellij_platform_jewel_samples_standalone():kotlin.jvm.functions.Function2
- f:getLambda$1854364929$intellij_platform_jewel_samples_standalone():kotlin.jvm.functions.Function2

View File

@@ -263,48 +263,6 @@ f:org.jetbrains.jewel.ui.component.ComboBoxState
f:org.jetbrains.jewel.ui.component.ComboBoxState$Companion
- f:of-b6bHBqw(Z,Z,Z,Z,Z):J
- bs:of-b6bHBqw$default(org.jetbrains.jewel.ui.component.ComboBoxState$Companion,Z,Z,Z,Z,Z,I,java.lang.Object):J
f:org.jetbrains.jewel.ui.component.ComposableSingletons$DefaultBannerKt
- sf:INSTANCE:org.jetbrains.jewel.ui.component.ComposableSingletons$DefaultBannerKt
- <init>():V
- f:getLambda$-1509620682$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-359753452$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-7336010$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-923063987$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1072372818$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1128848239$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1148953220$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1508382630$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1580094635$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$164356774$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1804003696$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$876414154$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.ui.component.ComposableSingletons$InlineBannerKt
- sf:INSTANCE:org.jetbrains.jewel.ui.component.ComposableSingletons$InlineBannerKt
- <init>():V
- f:getLambda$-1538814873$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-1555647357$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-2140712312$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-516555399$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-564250245$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-649449331$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-812795800$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-964818995$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$-970574927$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$144215585$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1503990447$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$152227743$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$1892680925$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$2043897696$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$328167639$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
- f:getLambda$423463284$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.ui.component.ComposableSingletons$ListComboBoxKt
- sf:INSTANCE:org.jetbrains.jewel.ui.component.ComposableSingletons$ListComboBoxKt
- <init>():V
- f:getLambda$502279318$intellij_platform_jewel_ui():kotlin.jvm.functions.Function5
f:org.jetbrains.jewel.ui.component.ComposableSingletons$MenuKt
- sf:INSTANCE:org.jetbrains.jewel.ui.component.ComposableSingletons$MenuKt
- <init>():V
- f:getLambda$-1067661272$intellij_platform_jewel_ui():kotlin.jvm.functions.Function2
f:org.jetbrains.jewel.ui.component.ContextMenuDivider
- androidx.compose.foundation.ContextMenuItem
- sf:$stable:I
@@ -991,10 +949,6 @@ org.jetbrains.jewel.ui.component.banner.BannerIconActionScope
- bs:iconAction$default(org.jetbrains.jewel.ui.component.banner.BannerIconActionScope,org.jetbrains.jewel.ui.icon.IconKey,java.lang.String,java.lang.String,kotlin.jvm.functions.Function0,I,java.lang.Object):V
org.jetbrains.jewel.ui.component.banner.BannerLinkActionScope
- a:action(java.lang.String,kotlin.jvm.functions.Function0):V
f:org.jetbrains.jewel.ui.component.banner.ComposableSingletons$BannerLinkActionScopeKt
- sf:INSTANCE:org.jetbrains.jewel.ui.component.banner.ComposableSingletons$BannerLinkActionScopeKt
- <init>():V
- f:getLambda$-1363944258$intellij_platform_jewel_ui():kotlin.jvm.functions.Function3
f:org.jetbrains.jewel.ui.component.styling.BannerColors
- sf:$stable:I
- sf:Companion:org.jetbrains.jewel.ui.component.styling.BannerColors$Companion

View File

@@ -119,6 +119,7 @@ fun api(index: ApiIndex, root: Path): API {
val signatures: List<ClassBinarySignature> = classFilePaths
.map { it.inputStream() }
.loadApiFromJvmClasses()
.filter { !it.isComposableSingleton() }
.map { it.removeSyntheticBridges() }
.map { it.removeToString() }
.map { signature ->
@@ -403,6 +404,19 @@ private fun List<AnnotationNode>?.isNonExtendable(): Boolean {
private typealias ClassResolver = (String) -> ClassBinarySignature?
/**
* Due to the issues in Kotlin's BCV and the Compose compiler plugin, the generated classes by Compose leak to API dumps
* Such classes are not really a part of the API, so we filter them here.
* This should be removed once CMP-7715 is fixed
*/
private fun ClassBinarySignature.isComposableSingleton(): Boolean {
return access.isFinal &&
// see `androidx.compose.compiler.plugins.kotlin.lower.ComposerLambdaMemoization#getOrCreateComposableSingletonsClass`
name.contains("ComposableSingletons$") &&
// check if it is really a kotlin object singleton
memberSignatures.any { it.name == "INSTANCE" && it.access.isFinal && it.access.isStatic }
}
private fun ClassBinarySignature.removeSyntheticBridges(): ClassBinarySignature {
val withoutBridges = memberSignatures.filterNot {
it is MethodBinarySignature && it.isSyntheticBridge()