Skip to content

Commit 7de5742

Browse files
committed
Make Zip FS accessor available to all Klib-based compilers
^KT-79675
1 parent 70d73fc commit 7de5742

File tree

8 files changed

+16
-15
lines changed

8 files changed

+16
-15
lines changed

compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JSCompiler.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import org.jetbrains.kotlin.cli.pipeline.web.CommonWebConfigurationUpdater
2929
import org.jetbrains.kotlin.cli.pipeline.web.WebCliPipeline
3030
import org.jetbrains.kotlin.config.CommonConfigurationKeys
3131
import org.jetbrains.kotlin.config.CompilerConfiguration
32+
import org.jetbrains.kotlin.config.KlibConfigurationKeys
3233
import org.jetbrains.kotlin.config.Services
3334
import org.jetbrains.kotlin.diagnostics.DiagnosticReporterFactory
3435
import org.jetbrains.kotlin.ir.backend.js.*
@@ -124,7 +125,7 @@ class K2JSCompiler : CLICompiler<K2JSCompilerArguments>() {
124125

125126
val zipAccessor = DisposableZipFileSystemAccessor(64)
126127
Disposer.register(rootDisposable, zipAccessor)
127-
targetEnvironment.configuration.put(JSConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR, zipAccessor)
128+
targetEnvironment.configuration.put(KlibConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR, zipAccessor)
128129

129130
val sourcesFiles = targetEnvironment.getSourceFiles()
130131

compiler/config/configuration-keys-generator/src/org/jetbrains/kotlin/config/keys/generator/JsConfigurationKeysContainer.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.backend.js.TsCompilationStrategy
1414
import org.jetbrains.kotlin.js.config.EcmaVersion
1515
import org.jetbrains.kotlin.js.config.SourceMapNamesPolicy
1616
import org.jetbrains.kotlin.js.config.SourceMapSourceEmbedding
17-
import org.jetbrains.kotlin.konan.file.ZipFileSystemAccessor
1817
import org.jetbrains.kotlin.serialization.js.ModuleKind
1918
import java.io.File
2019

@@ -98,8 +97,6 @@ object JsConfigurationKeysContainer : KeysContainer("org.jetbrains.kotlin.js.con
9897

9998
val GENERATE_STRICT_IMPLICIT_EXPORT by key<Boolean>("enable strict implicitly exported entities types inside d.ts files")
10099

101-
val ZIP_FILE_SYSTEM_ACCESSOR by key<ZipFileSystemAccessor>("zip file system accessor, used for klib reading")
102-
103100
val OPTIMIZE_GENERATED_JS by key<Boolean>("perform additional optimizations on the generated JS code")
104101

105102
val USE_ES6_CLASSES by key<Boolean>("perform ES6 class usage")

compiler/config/configuration-keys-generator/src/org/jetbrains/kotlin/config/keys/generator/KlibConfigurationKeysContainer.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.config.keys.generator
88
import org.jetbrains.kotlin.config.DuplicatedUniqueNameStrategy
99
import org.jetbrains.kotlin.config.KlibAbiCompatibilityLevel
1010
import org.jetbrains.kotlin.config.keys.generator.model.KeysContainer
11+
import org.jetbrains.kotlin.konan.file.ZipFileSystemAccessor
1112
import org.jetbrains.kotlin.library.KotlinAbiVersion
1213

1314
@Suppress("unused")
@@ -26,4 +27,6 @@ object KlibConfigurationKeysContainer : KeysContainer("org.jetbrains.kotlin.conf
2627
"KLIB ABI compatibility level",
2728
defaultValue = "KlibAbiCompatibilityLevel.LATEST_STABLE"
2829
)
30+
31+
val ZIP_FILE_SYSTEM_ACCESSOR by key<ZipFileSystemAccessor>("zip file system accessor, used for klib reading")
2932
}

compiler/config/gen/org/jetbrains/kotlin/config/KlibConfigurationKeys.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ package org.jetbrains.kotlin.config
1212
* DO NOT MODIFY IT MANUALLY
1313
*/
1414

15+
import org.jetbrains.kotlin.konan.file.ZipFileSystemAccessor
1516
import org.jetbrains.kotlin.library.KotlinAbiVersion
1617

1718
object KlibConfigurationKeys {
@@ -33,6 +34,9 @@ object KlibConfigurationKeys {
3334
@JvmField
3435
val KLIB_ABI_COMPATIBILITY_LEVEL = CompilerConfigurationKey.create<KlibAbiCompatibilityLevel>("KLIB ABI compatibility level")
3536

37+
@JvmField
38+
val ZIP_FILE_SYSTEM_ACCESSOR = CompilerConfigurationKey.create<ZipFileSystemAccessor>("zip file system accessor, used for klib reading")
39+
3640
}
3741

3842
var CompilerConfiguration.klibRelativePathBases: List<String>
@@ -59,3 +63,7 @@ var CompilerConfiguration.klibAbiCompatibilityLevel: KlibAbiCompatibilityLevel
5963
get() = get(KlibConfigurationKeys.KLIB_ABI_COMPATIBILITY_LEVEL, KlibAbiCompatibilityLevel.LATEST_STABLE)
6064
set(value) { put(KlibConfigurationKeys.KLIB_ABI_COMPATIBILITY_LEVEL, value) }
6165

66+
var CompilerConfiguration.zipFileSystemAccessor: ZipFileSystemAccessor?
67+
get() = get(KlibConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR)
68+
set(value) { put(KlibConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR, requireNotNull(value) { "nullable values are not allowed" }) }
69+

compiler/ir/serialization.js/src/org/jetbrains/kotlin/ir/backend/js/loadWebKlibs.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.ir.backend.js.checkers.WasmLibrarySpecialCompatibili
1616
import org.jetbrains.kotlin.js.config.friendLibraries
1717
import org.jetbrains.kotlin.js.config.includes
1818
import org.jetbrains.kotlin.js.config.libraries
19-
import org.jetbrains.kotlin.js.config.zipFileSystemAccessor
19+
import org.jetbrains.kotlin.config.zipFileSystemAccessor
2020
import org.jetbrains.kotlin.library.KotlinAbiVersion
2121
import org.jetbrains.kotlin.library.loader.KlibLoader
2222
import org.jetbrains.kotlin.library.loader.KlibPlatformChecker

compiler/tests-common-new/testFixtures/org/jetbrains/kotlin/test/frontend/classic/ClassicFrontendFacade.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ import org.jetbrains.kotlin.incremental.components.ExpectActualTracker
4242
import org.jetbrains.kotlin.incremental.components.InlineConstTracker
4343
import org.jetbrains.kotlin.incremental.components.LookupTracker
4444
import org.jetbrains.kotlin.ir.backend.js.JsFactories
45-
import org.jetbrains.kotlin.js.config.zipFileSystemAccessor
45+
import org.jetbrains.kotlin.config.zipFileSystemAccessor
4646
import org.jetbrains.kotlin.library.isAnyPlatformStdlib
4747
import org.jetbrains.kotlin.library.loader.KlibLoader
4848
import org.jetbrains.kotlin.library.loader.KlibPlatformChecker

js/js.frontend/gen/org/jetbrains/kotlin/js/config/JSConfigurationKeys.kt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import org.jetbrains.kotlin.config.CompilerConfigurationKey
2020
import org.jetbrains.kotlin.incremental.js.IncrementalDataProvider
2121
import org.jetbrains.kotlin.incremental.js.IncrementalNextRoundChecker
2222
import org.jetbrains.kotlin.incremental.js.IncrementalResultsConsumer
23-
import org.jetbrains.kotlin.konan.file.ZipFileSystemAccessor
2423
import org.jetbrains.kotlin.serialization.js.ModuleKind
2524

2625
object JSConfigurationKeys {
@@ -135,9 +134,6 @@ object JSConfigurationKeys {
135134
@JvmField
136135
val GENERATE_STRICT_IMPLICIT_EXPORT = CompilerConfigurationKey.create<Boolean>("enable strict implicitly exported entities types inside d.ts files")
137136

138-
@JvmField
139-
val ZIP_FILE_SYSTEM_ACCESSOR = CompilerConfigurationKey.create<ZipFileSystemAccessor>("zip file system accessor, used for klib reading")
140-
141137
@JvmField
142138
val OPTIMIZE_GENERATED_JS = CompilerConfigurationKey.create<Boolean>("perform additional optimizations on the generated JS code")
143139

@@ -342,10 +338,6 @@ var CompilerConfiguration.generateStrictImplicitExport: Boolean
342338
get() = getBoolean(JSConfigurationKeys.GENERATE_STRICT_IMPLICIT_EXPORT)
343339
set(value) { put(JSConfigurationKeys.GENERATE_STRICT_IMPLICIT_EXPORT, value) }
344340

345-
var CompilerConfiguration.zipFileSystemAccessor: ZipFileSystemAccessor?
346-
get() = get(JSConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR)
347-
set(value) { put(JSConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR, requireNotNull(value) { "nullable values are not allowed" }) }
348-
349341
var CompilerConfiguration.optimizeGeneratedJs: Boolean
350342
get() = getBoolean(JSConfigurationKeys.OPTIMIZE_GENERATED_JS)
351343
set(value) { put(JSConfigurationKeys.OPTIMIZE_GENERATED_JS, value) }

js/js.tests/testFixtures/org/jetbrains/kotlin/incremental/AbstractInvalidationTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ abstract class AbstractInvalidationTest(
171171
includedLibrary?.let { copy.includes = includedLibrary }
172172

173173
zipAccessor.reset()
174-
copy.put(JSConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR, zipAccessor)
174+
copy.put(KlibConfigurationKeys.ZIP_FILE_SYSTEM_ACCESSOR, zipAccessor)
175175
return copy
176176
}
177177

0 commit comments

Comments
 (0)