From ff2b0ac2ba66baed31a0a735f58664cd8c748faf Mon Sep 17 00:00:00 2001 From: Fabrizio Scarponi <36624359+fscarponi@users.noreply.github.com> Date: Thu, 7 Nov 2024 15:49:48 +0100 Subject: [PATCH] Update for 243 realease - Switching to PackageApiClientService provided by the platform (#194) * revamped build logic, use ApiClient as provided by the platform * Update dependencies and refactor UI components * update intellij target version * Update Jewel version and add PropertyMapping annotations * Add coroutine support and refactor Gradle module construction * Remove unnecessary serialization annotations * Update IntelliJ version and remove unused @Serializable annotation * Upgrade to JDK 17 in GitHub Actions workflow * Add ExperimentalPathApi annotations in tests * Remove TrustKotlinGradlePluginPatch from workflow Deleted the TrustKotlinGradlePluginPatch scripts and their usage in the GitHub Actions workflow. This simplifies the test step configuration and removes the conditional patching mechanism when tests fail. --- .../workflows/TrustKotlinGradlePluginPatch.kt | 99 - .../TrustKotlinGradlePluginPatch.main.kts | 85 - .github/workflows/test.yml | 97 +- build.gradle.kts | 3 +- buildSrc/build.gradle.kts | 1 + buildSrc/src/main/kotlin/Utils.kt | 10 +- kmp-modifier/build.gradle.kts | 2 +- nitrite-java | 1 - packagesearch.versions.toml | 29 +- plugin/build.gradle.kts | 27 +- plugin/core/build.gradle.kts | 18 +- .../PackageSearchProjectCachesService.kt | 49 - .../packagesearch/plugin/core/utils/Utils.kt | 4 - plugin/gradle/base/build.gradle.kts | 3 +- .../plugin/gradle/GradleModuleProvider.kt | 57 +- .../gradle/PackageSearchGradleModule.kt | 8 +- plugin/gradle/build.gradle.kts | 4 +- plugin/gradle/kmp/build.gradle.kts | 3 +- .../packagesearch/plugin/gradle/KMPUtils.kt | 73 +- .../KotlinMultiplatformModuleProvider.kt | 15 +- .../PackageSearchKotlinMultiplatformModule.kt | 3 +- .../plugin/gradle/GradleModuleTransformer.kt | 6 +- .../PackageSearchGradleDeclaredPackage.kt | 2 - .../plugin/gradle/PackageSearchGradleModel.kt | 50 - .../PackageSearchProjectResolverExtension.kt | 38 +- .../plugin/gradle/utils/GradleUtils.kt | 85 +- .../plugin/gradle/utils/Utils.kt | 6 + .../PackageSearchGradleJavaModelImpl.java | 27 +- plugin/jps/build.gradle.kts | 2 +- plugin/maven/build.gradle.kts | 4 +- ...leanPackageSearchApplicationCacheAction.kt | 10 - .../PackageSearchApplicationCachesService.kt | 163 - .../services/PackageSearchProjectService.kt | 22 +- .../plugin/ui/PackageSearchMetrics.kt | 4 +- .../plugin/ui/PackageSearchToolWindow.kt | 3 + .../plugin/ui/bridge/CustomStyles.kt | 7 +- .../packageslist/PackageListViewModel.kt | 23 +- .../plugin/ui/model/packageslist/Search.kt | 14 +- .../plugin/ui/model/tree/TreeViewModel.kt | 4 +- .../packages/PackageSearchCentralPanel.kt | 2 +- .../packages/PackageSearchPackageList.kt | 33 +- .../ui/panels/side/PackageSearchInfoPanel.kt | 5 +- .../panels/tree/PackageSearchModulesTree.kt | 3 +- .../packagesearch/plugin/utils/Services.kt | 6 +- .../packagesearch/plugin/utils/Utils.kt | 21 +- .../utils/WindowedModuleBuilderContext.kt | 7 +- plugin/src/main/resources/META-INF/plugin.xml | 4 +- .../PackageSearchProjectServiceTest.kt | 3 + plugin/utils/build.gradle.kts | 24 +- .../plugin/utils/ApiPackageCacheEntry.kt | 61 - .../utils/PackageSearchApiPackageCache.kt | 169 - .../packagesearch/plugin/utils/Utils2.kt | 32 - .../plugin/tests/unit/CachesTest.kt | 175 - .../plugin/tests/unit/TestUtils.kt | 30 - plugin/utils/src/test/resources/logback.xml | 3 - .../mock/responses/package_info.json | 20465 ---------------- settings.gradle.kts | 8 - 57 files changed, 233 insertions(+), 21879 deletions(-) delete mode 100644 .github/workflows/TrustKotlinGradlePluginPatch.kt delete mode 100644 .github/workflows/TrustKotlinGradlePluginPatch.main.kts delete mode 160000 nitrite-java delete mode 100644 plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/services/PackageSearchProjectCachesService.kt delete mode 100644 plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModel.kt delete mode 100644 plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/CleanPackageSearchApplicationCacheAction.kt delete mode 100644 plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchApplicationCachesService.kt delete mode 100644 plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/ApiPackageCacheEntry.kt delete mode 100644 plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/PackageSearchApiPackageCache.kt delete mode 100644 plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils2.kt delete mode 100644 plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/CachesTest.kt delete mode 100644 plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/TestUtils.kt delete mode 100644 plugin/utils/src/test/resources/logback.xml delete mode 100644 plugin/utils/src/test/resources/mock/responses/package_info.json diff --git a/.github/workflows/TrustKotlinGradlePluginPatch.kt b/.github/workflows/TrustKotlinGradlePluginPatch.kt deleted file mode 100644 index f1bc6952..00000000 --- a/.github/workflows/TrustKotlinGradlePluginPatch.kt +++ /dev/null @@ -1,99 +0,0 @@ -package com.jetbrains.packagesearch.plugin.tests.scripts - -import java.nio.file.Path -import java.nio.file.Paths -import javax.xml.parsers.DocumentBuilderFactory -import javax.xml.transform.OutputKeys -import javax.xml.transform.TransformerFactory -import javax.xml.transform.dom.DOMSource -import javax.xml.transform.stream.StreamResult -import kotlin.io.path.exists -import kotlin.io.path.listDirectoryEntries -import org.w3c.dom.Document -import org.w3c.dom.Element - -private val domFileName="builtinRegistry" - -fun main(){ - scoutRegistryFiles().forEach { - println("Patching file: $it") - patchKotlinGradlePlugin(it) - } -} - -// WARNING: USE THIS FUNCTION WITH CAUTION AND ONLY FOR TESTS PURPOSES -internal fun scoutRegistryFiles(): List { - println("Scouting registry files") - val userDir = Path.of(System.getProperty("user.home")) - println("current directory: $userDir") - println("contains: ${userDir.listDirectoryEntries()}") - println ("Scouting for gradle ide caches") - val gradleDir= Path.of(userDir.toString(), ".gradle") - println("gradle directory exists: ${gradleDir.exists()}") - val cacheDir= Paths.get(gradleDir.toString(), "caches", "modules-2", "files-2.1", "com.jetbrains.intellij.idea", "ideaIC") - println("idea cache directory exists: ${cacheDir.exists()}") - - //scout for the registry file - val configsFiles= buildList { - cacheDir.toFile().walk().forEach { - if (it.name.contains(domFileName) && it.extension.lowercase().endsWith("xml")) { - add(it.toPath()) - } - } - } - - println("Found ${configsFiles.size} registry files") - configsFiles.forEach { println(it) } - - return configsFiles -} - -internal fun patchKotlinGradlePlugin(xmlPath: Path) { - if (!xmlPath.exists()) { - error("can not find XML file to patch: $xmlPath") - } - - val xmlFile = xmlPath.toFile() - val documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder() - val document: Document = documentBuilder.parse(xmlFile) - - // Create the new plugin element with its attributes - val pluginElement: Element = document.createElement("plugin") - pluginElement.setAttribute("directoryName", "Kotlin") - pluginElement.setAttribute("id", "org.jetbrains.kotlin") - - // Create the dependencies element - val dependenciesElement: Element = document.createElement("dependencies") - - // List of dependency values - val dependencyValues = listOf( - "com.intellij.modules.platform", - "com.intellij.modules.java", - "com.intellij.modules.java-capable", - "com.intellij.java" - ) - - // Add each dependency to the dependencies element - for (dependencyValue in dependencyValues) { - val dependencyElement: Element = document.createElement("dependency") - dependencyElement.appendChild(document.createTextNode(dependencyValue)) - dependenciesElement.appendChild(dependencyElement) - } - - // Append the dependencies element to the plugin element - pluginElement.appendChild(dependenciesElement) - - // Append the plugin element to the root element - document.documentElement.appendChild(pluginElement) - - // Save the updated document back to the file - val transformerFactory = TransformerFactory.newInstance() - val transformer = transformerFactory.newTransformer() - transformer.setOutputProperty(OutputKeys.INDENT, "yes") - transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2") - val source = DOMSource(document) - val result = StreamResult(xmlFile) - transformer.transform(source, result) - - println("XML file updated successfully.") -} \ No newline at end of file diff --git a/.github/workflows/TrustKotlinGradlePluginPatch.main.kts b/.github/workflows/TrustKotlinGradlePluginPatch.main.kts deleted file mode 100644 index 9c703fec..00000000 --- a/.github/workflows/TrustKotlinGradlePluginPatch.main.kts +++ /dev/null @@ -1,85 +0,0 @@ -import java.nio.file.Path -import java.nio.file.Paths -import javax.xml.parsers.DocumentBuilderFactory -import javax.xml.transform.OutputKeys -import javax.xml.transform.TransformerFactory -import javax.xml.transform.dom.DOMSource -import javax.xml.transform.stream.StreamResult -import kotlin.io.path.exists -import kotlin.io.path.listDirectoryEntries -import org.w3c.dom.Document -import org.w3c.dom.Element - -val domFileName = "builtinRegistry" - -println("Scouting registry files") -val userDir = Path.of(System.getProperty("user.home")) -println("current directory: $userDir") -println("contains: ${userDir.listDirectoryEntries()}") -println ("Scouting for gradle ide caches") -val gradleDir = Path.of(userDir.toString(), ".gradle") -println("gradle directory exists: ${gradleDir.exists()}") -val cacheDir = - Paths.get(gradleDir.toString(), "caches", "modules-2", "files-2.1", "com.jetbrains.intellij.idea", "ideaIC") -println("idea cache directory exists: ${cacheDir.exists()}") - -//scout for the registry file -val configsFiles = buildList { - cacheDir.toFile().walk().forEach { - if (it.name.contains(domFileName) && it.extension.lowercase().endsWith("xml")) { - add(it.toPath()) - } - } -} - -println("Found ${configsFiles.size} registry files") -configsFiles.forEach { - xmlPath -> - if (!xmlPath.exists()) { - error("can not find XML file to patch: $xmlPath") - } - - val xmlFile = xmlPath.toFile() - val documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder() - val document: Document = documentBuilder.parse(xmlFile) - - // Create the new plugin element with its attributes - val pluginElement: Element = document.createElement("plugin") - pluginElement.setAttribute("directoryName", "Kotlin") - pluginElement.setAttribute("id", "org.jetbrains.kotlin") - - // Create the dependencies element - val dependenciesElement: Element = document.createElement("dependencies") - - // List of dependency values - val dependencyValues = listOf( - "com.intellij.modules.platform", - "com.intellij.modules.java", - "com.intellij.modules.java-capable", - "com.intellij.java" - ) - - // Add each dependency to the dependencies element - for (dependencyValue in dependencyValues) { - val dependencyElement: Element = document.createElement("dependency") - dependencyElement.appendChild(document.createTextNode(dependencyValue)) - dependenciesElement.appendChild(dependencyElement) - } - - // Append the dependencies element to the plugin element - pluginElement.appendChild(dependenciesElement) - - // Append the plugin element to the root element - document.documentElement.appendChild(pluginElement) - - // Save the updated document back to the file - val transformerFactory = TransformerFactory.newInstance() - val transformer = transformerFactory.newTransformer() - transformer.setOutputProperty(OutputKeys.INDENT, "yes") - transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2") - val source = DOMSource(document) - val result = StreamResult(xmlFile) - transformer.transform(source, result) - - println("XML file updated successfully.") -} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index bf873194..f4bf3dd6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,10 +22,10 @@ jobs: with: submodules: true - uses: gradle/gradle-build-action@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v4 with: - java-version: 11 + java-version: 17 distribution: 'temurin' - name: Run GRADLE tests continue-on-error: true @@ -39,22 +39,7 @@ jobs: SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.GradleProjectTest" - - name: Patch IDE config files - if: steps.simple-build.outcome == 'failure' - run: kotlinc -script ./.github/workflows/TrustKotlinGradlePluginPatch.main.kts - - name: Run GRADLE tests PATCHED - if: steps.simple-build.outcome == 'failure' - env: - KMP: true - GRADLE_VERSION: ${{ matrix.gradle-version }} - GRADLE_ENTERPRISE_KEY: ${{ secrets.GRADLE_ENTERPRISE_KEY }} - JAVA_VERSION: ${{matrix.jdk-version}} - SPACE_INTELLIJ_NIGHTLIES_TOKEN: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_TOKEN }} - SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} - SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} - SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.GradleProjectTest" + run: ./gradlew :plugin:test --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.GradleProjectTest" - name: Upload test result if: always() uses: actions/upload-artifact@v4 @@ -73,10 +58,10 @@ jobs: with: submodules: true - uses: gradle/gradle-build-action@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v4 with: - java-version: 11 + java-version: 17 distribution: 'temurin' - name: Run MAVEN tests id: simple-build @@ -89,21 +74,7 @@ jobs: SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.MavenProjectTest" - - name: Patch IDE config files - if: steps.simple-build.outcome == 'failure' - run: kotlinc -script ./.github/workflows/TrustKotlinGradlePluginPatch.main.kts - - name: Run MAVEN tests Patched - if: steps.simple-build.outcome == 'failure' - env: - KMP: true - GRADLE_ENTERPRISE_KEY: ${{ secrets.GRADLE_ENTERPRISE_KEY }} - JAVA_VERSION: ${{matrix.jdk-version}} - SPACE_INTELLIJ_NIGHTLIES_TOKEN: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_TOKEN }} - SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} - SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} - SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.MavenProjectTest" + run: ./gradlew :plugin:test --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.MavenProjectTest" - name: Upload test result if: always() uses: actions/upload-artifact@v4 @@ -125,10 +96,10 @@ jobs: with: submodules: true - uses: gradle/gradle-build-action@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v4 with: - java-version: 11 + java-version: 17 distribution: 'temurin' - name: Run KMP tests id: simple-build @@ -142,22 +113,7 @@ jobs: SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.KMPGradleProjectTest" - - name: Patch IDE config files - if: steps.simple-build.outcome == 'failure' - run: kotlinc -script ./.github/workflows/TrustKotlinGradlePluginPatch.main.kts - - name: Run KMP tests - if: steps.simple-build.outcome == 'failure' - env: - KMP: true - GRADLE_VERSION: ${{ matrix.gradle-version }} - GRADLE_ENTERPRISE_KEY: ${{ secrets.GRADLE_ENTERPRISE_KEY }} - JAVA_VERSION: ${{matrix.jdk-version}} - SPACE_INTELLIJ_NIGHTLIES_TOKEN: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_TOKEN }} - SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} - SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} - SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.KMPGradleProjectTest" + run: ./gradlew :plugin:test --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.KMPGradleProjectTest" - name: Upload test result if: always() uses: actions/upload-artifact@v4 @@ -181,10 +137,10 @@ jobs: with: submodules: true - uses: gradle/gradle-build-action@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v4 with: - java-version: 11 + java-version: 17 distribution: 'temurin' - name: Run VERSION CATALOG tests continue-on-error: true @@ -199,21 +155,6 @@ jobs: SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.CatalogProjectTest" - - name: Patch IDE config files - if: steps.simple-build.outcome == 'failure' - run: kotlinc -script ./.github/workflows/TrustKotlinGradlePluginPatch.main.kts - - name: Run VERSION CATALOG tests PATCHED - if: steps.simple-build.outcome == 'failure' - env: - KMP: true - GRADLE_VERSION: ${{ matrix.gradle-version }} - GRADLE_ENTERPRISE_KEY: ${{ secrets.GRADLE_ENTERPRISE_KEY }} - JAVA_VERSION: ${{matrix.jdk-version}} - SPACE_INTELLIJ_NIGHTLIES_TOKEN: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_TOKEN }} - SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} - SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} - SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:test --continue --tests "com.jetbrains.packagesearch.plugin.tests.end2end.projectservice.CatalogProjectTest" - name: Upload test result if: always() uses: actions/upload-artifact@v4 @@ -228,10 +169,10 @@ jobs: with: submodules: true - uses: gradle/gradle-build-action@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v4 with: - java-version: 11 + java-version: 17 distribution: 'temurin' - name: Run UNIT tests id: simple-build @@ -243,15 +184,3 @@ jobs: SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} run: ./gradlew :plugin:utils:test - - name: Patch IDE config files - if: steps.simple-build.outcome == 'failure' - run: kotlinc -script ./.github/workflows/TrustKotlinGradlePluginPatch.main.kts - - name: Run UNIT tests - if: steps.simple-build.outcome == 'failure' - env: - GRADLE_ENTERPRISE_KEY: ${{ secrets.GRADLE_ENTERPRISE_KEY }} - SPACE_INTELLIJ_NIGHTLIES_TOKEN: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_TOKEN }} - SPACE_INTELLIJ_NIGHTLIES_USERNAME: ${{ secrets.SPACE_INTELLIJ_NIGHTLIES_USERNAME }} - SPACE_PACKAGE_SEARCH_TOKEN: ${{ secrets.SPACE_PACKAGE_SEARCH_TOKEN }} - SPACE_PACKAGE_SEARCH_USERNAME: ${{ secrets.SPACE_PACKAGE_SEARCH_USERNAME }} - run: ./gradlew :plugin:utils:test diff --git a/build.gradle.kts b/build.gradle.kts index a28f1ea4..66f7a0e7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,7 +6,6 @@ plugins { alias(packageSearchCatalog.plugins.shadow) apply false alias(packageSearchCatalog.plugins.dokka) apply false alias(packageSearchCatalog.plugins.kotlin.jvm) apply false - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) apply false alias(packageSearchCatalog.plugins.kotlin.plugin.compose) apply false alias(packageSearchCatalog.plugins.compose.desktop) apply false alias(packageSearchCatalog.plugins.kotlinter) apply false @@ -14,7 +13,7 @@ plugins { allprojects { group = "org.jetbrains.packagesearch" - val baseVersion = "242-SNAPSHOT" + val baseVersion = "243-SNAPSHOT" version = when (val ref = getenv("GITHUB_REF")) { null -> baseVersion diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 8a454bac..23e82d58 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -11,4 +11,5 @@ dependencies { implementation(libs.poet.kotlin) implementation(libs.flexmark) implementation(libs.gradle.intellij.platform.plugin) + implementation(libs.kotlin.serialization.gradle.plugin) } diff --git a/buildSrc/src/main/kotlin/Utils.kt b/buildSrc/src/main/kotlin/Utils.kt index 6325fef9..672cb19a 100644 --- a/buildSrc/src/main/kotlin/Utils.kt +++ b/buildSrc/src/main/kotlin/Utils.kt @@ -1,20 +1,12 @@ -import java.io.File -import org.gradle.api.plugins.ExtraPropertiesExtension import org.gradle.api.provider.Provider -import org.gradle.api.tasks.Sync -import org.gradle.api.tasks.TaskProvider -import org.gradle.kotlin.dsl.DependencyHandlerScope import org.gradle.kotlin.dsl.PluginDependenciesSpecScope -import org.gradle.kotlin.dsl.getByType -import org.gradle.kotlin.dsl.version import org.gradle.plugin.use.PluginDependency -import org.jetbrains.intellij.platform.gradle.extensions.IntelliJPlatformDependenciesExtension fun PluginDependenciesSpecScope.id(plugin: Provider) = id(plugin.get().pluginId) const val PACKAGE_SEARCH_PLUGIN_ID = "com.jetbrains.packagesearch.intellij-plugin" -const val INTELLIJ_VERSION = "243.18137.10" +const val INTELLIJ_VERSION = "243.21565.23" fun String.containsAny(toDelete: List) = toDelete.any { it in this } diff --git a/kmp-modifier/build.gradle.kts b/kmp-modifier/build.gradle.kts index 06a5df1f..825950c3 100644 --- a/kmp-modifier/build.gradle.kts +++ b/kmp-modifier/build.gradle.kts @@ -4,7 +4,7 @@ plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) id(packageSearchCatalog.plugins.idea.gradle.plugin.base) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) `maven-publish` } diff --git a/nitrite-java b/nitrite-java deleted file mode 160000 index be77b16e..00000000 --- a/nitrite-java +++ /dev/null @@ -1 +0,0 @@ -Subproject commit be77b16e57f1fbb87b29cff782c8968654b8797f diff --git a/packagesearch.versions.toml b/packagesearch.versions.toml index 9b137c82..7e1bc145 100644 --- a/packagesearch.versions.toml +++ b/packagesearch.versions.toml @@ -2,7 +2,7 @@ assertk = "0.28.1" caffeine = "3.1.6" commonsCodec = "1.16.0" -composeDesktop = "1.6.11" +composeDesktop = "1.7.0" coroutines = "1.8.0" detekt = "1.23.6" dokka = "1.9.20" @@ -10,20 +10,20 @@ flexmark = "0.64.8" foojay = "0.5.0" gradlePublishPlugin = "1.1.0" ideStarter = "LATEST-EAP-SNAPSHOT" -idea = "2024.2" +idea = "2024.3" ideaGradlePlugin = "1.17.3" -newIdeaGradlePlugin = "2.1.0" -jewel = "0.19.6" +jewel = "0.26" +jewelSnapshot = "1.0.0-SNAPSHOT" junit = "5.10.2" junit4 = "4.13.2" -kotlin = "2.0.20" +kotlin = "2.0.21" kotlinPoet = "1.15.2" kotlinterGradlePlugin = "3.12.0" kotlinxDatetime = "0.5.0" -kotlinxSerialization = "1.6.3" +kotlinxSerialization = "1.7.3" ktor = "2.3.5" -logback = "1.4.11" -nitrite = "3.4.4" +logback = "1.4.12" +newIdeaGradlePlugin = "2.1.0" packagesearchApiModels = "3.1.0" xmlutilsSerialization = "0.86.2" @@ -50,6 +50,7 @@ ij-platform-ide-impl = { module = "com.jetbrains.intellij.platform:ide-impl", ve jewel-bridge-ij232 = { module = "org.jetbrains.jewel:jewel-ide-laf-bridge-232", version.ref = "jewel" } jewel-bridge-ij233 = { module = "org.jetbrains.jewel:jewel-ide-laf-bridge-233", version.ref = "jewel" } jewel-bridge-ij241 = { module = "org.jetbrains.jewel:jewel-ide-laf-bridge-241", version.ref = "jewel" } +jewel-bridge-ij243 = { module= "org.jetbrains.jewel:jewel-ide-laf-bridge-243", version.ref = "jewelSnapshot"} jewel-foundation = { module = "org.jetbrains.jewel:jewel-foundation", version.ref = "jewel" } jewel-standalone = { module = "org.jetbrains.jewel:jewel-int-ui-standalone", version.ref = "jewel" } jewel-ui = { module = "org.jetbrains.jewel:jewel-ui", version.ref = "jewel" } @@ -58,6 +59,7 @@ junit-jupiter-engine = { module = "org.junit.jupiter:junit-jupiter-engine", vers junit-jupiter-params = { module = "org.junit.jupiter:junit-jupiter-params", version.ref = "junit" } junit-vintage-engine = { module = "org.junit.vintage:junit-vintage-engine", version.ref = "junit" } junit4-base = { module = "junit:junit", version.ref = "junit4" } +kotlin-serialization-gradle-plugin = {module="org.jetbrains.kotlin:kotlin-serialization", version.ref="kotlin"} kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" } kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" } kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "kotlinxDatetime" } @@ -78,14 +80,9 @@ ktor-server-compression = { module = "io.ktor:ktor-server-compression", version. ktor-server-content-negotiation = { module = "io.ktor:ktor-server-content-negotiation", version.ref = "ktor" } ktor-server-test-host = { module = "io.ktor:ktor-server-test-host", version.ref = "ktor" } logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" } -nitrite = { module = "org.dizitart:nitrite", version.ref = "nitrite" } -nitrite-mvstore-adapter = { module = "org.dizitart:nitrite-mvstore-adapter", version.ref = "nitrite" } -packagesearch-api-client = { module = "org.jetbrains.packagesearch:packagesearch-api-client", version.ref = "packagesearchApiModels" } -packagesearch-api-models = { module = "org.jetbrains.packagesearch:packagesearch-api-models", version.ref = "packagesearchApiModels" } packagesearch-build-systems-models = { module = "org.jetbrains.packagesearch:packagesearch-build-systems-models", version.ref = "packagesearchApiModels" } packagesearch-http-models = { module = "org.jetbrains.packagesearch:packagesearch-http-models", version.ref = "packagesearchApiModels" } poet-kotlin = { module = "com.squareup:kotlinpoet", version.ref = "kotlinPoet" } -potassium-nitrite = { module = "org.dizitart:potassium-nitrite", version.ref = "nitrite" } xmlutils-serialization = { module = "io.github.pdvrieze.xmlutil:serialization", version.ref = "xmlutilsSerialization" } @@ -105,12 +102,12 @@ dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" } foojay-resolver = { id = "org.gradle.toolchains.foojay-resolver-convention", version.ref = "foojay" } gradle-publish-plugin = { id = "com.gradle.plugin-publish", version.ref = "gradlePublishPlugin" } idea-gradle-plugin = { id = "org.jetbrains.intellij.platform", version.ref = "newIdeaGradlePlugin" } -idea-gradle-plugin-platform = { id = "org.jetbrains.intellij.platform", version.ref = "newIdeaGradlePlugin" } -idea-gradle-plugin-module = { id = "org.jetbrains.intellij.platform.module", version.ref = "newIdeaGradlePlugin" } idea-gradle-plugin-base = { id = "org.jetbrains.intellij.platform.base", version.ref = "newIdeaGradlePlugin" } +idea-gradle-plugin-module = { id = "org.jetbrains.intellij.platform.module", version.ref = "newIdeaGradlePlugin" } +idea-gradle-plugin-platform = { id = "org.jetbrains.intellij.platform", version.ref = "newIdeaGradlePlugin" } kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } -kotlin-plugin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } kotlin-plugin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } +kotlin-plugin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } kotlinter = { id = "org.jmailen.kotlinter", version.ref = "kotlinterGradlePlugin" } shadow = { id = "com.gradleup.shadow", version = "8.3.3" } diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index c48b4b82..01f55b6d 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -4,7 +4,9 @@ import com.vladsch.flexmark.html.HtmlRenderer import com.vladsch.flexmark.parser.Parser import java.lang.System.getenv import kotlin.math.max +import org.jetbrains.intellij.platform.gradle.tasks.GenerateManifestTask import org.jetbrains.intellij.platform.gradle.tasks.PublishPluginTask +import org.jetbrains.kotlin.util.prefixIfNot plugins { @@ -13,11 +15,10 @@ plugins { alias(packageSearchCatalog.plugins.dokka) alias(packageSearchCatalog.plugins.compose.desktop) alias(packageSearchCatalog.plugins.kotlin.plugin.compose) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) alias(packageSearchCatalog.plugins.shadow) `maven-publish` } - intellijPlatform { instrumentCode = false } @@ -32,16 +33,18 @@ dependencies { intellijIdeaCommunity(INTELLIJ_VERSION) bundledPlugins( "org.jetbrains.idea.reposearch", - "com.jetbrains.performancePlugin" + "com.jetbrains.performancePlugin", + ) + bundledModule( + "intellij.platform.compose" ) } - implementation(compose.desktop.linux_arm64) - implementation(compose.desktop.linux_x64) - implementation(compose.desktop.macos_arm64) - implementation(compose.desktop.macos_x64) - implementation(compose.desktop.windows_x64) - implementation(packageSearchCatalog.jewel.bridge.ij241) + implementation(compose.desktop.currentOs) { + exclude(group = "org.jetbrains.compose.material") + exclude(group = "org.jetbrains.kotlinx") + } + implementation(packageSearchCatalog.jewel.bridge.ij243) //compileonly??? implementation(packageSearchCatalog.kotlinx.serialization.core) implementation(packageSearchCatalog.compose.desktop.components.splitpane) { exclude(group = "org.jetbrains.compose.runtime") @@ -49,7 +52,6 @@ dependencies { } implementation(packageSearchCatalog.ktor.client.logging) implementation(packageSearchCatalog.ktor.client.java) - implementation(packageSearchCatalog.packagesearch.api.models) implementation(projects.plugin.gradle.base) implementation(projects.plugin.gradle.kmp) implementation(projects.plugin.maven) @@ -85,10 +87,15 @@ tasks { changeNotes = getenv("CHANGE_NOTES") ?.let { Parser.builder().build().parse(it) } ?.let { HtmlRenderer.builder().build().render(it) } +// ?.prefixIfNot("") } shadowJar { + val generateManifestTask = named("generateManifest") + dependsOn(generateManifestTask) + manifest.from(generateManifestTask.flatMap { it.generatedManifest }) exclude { it.name.containsAny(JAR_NAMES_TO_REMOVE) } exclude { it.name == "module-info.class" } exclude { it.name.endsWith("kotlin_module") } diff --git a/plugin/core/build.gradle.kts b/plugin/core/build.gradle.kts index 7eec23fb..47550e8d 100644 --- a/plugin/core/build.gradle.kts +++ b/plugin/core/build.gradle.kts @@ -6,7 +6,7 @@ import org.jetbrains.packagesearch.gradle.GeneratePackageSearchObject plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) id(packageSearchCatalog.plugins.idea.gradle.plugin.base) `maven-publish` } @@ -14,18 +14,12 @@ plugins { dependencies { intellijPlatform { intellijIdeaCommunity(INTELLIJ_VERSION) + bundledPlugins( + "org.jetbrains.idea.reposearch", + "com.jetbrains.performancePlugin" + ) } - api(packageSearchCatalog.potassium.nitrite) { - exclude(group = "com.fasterxml.jackson") - exclude(group = "com.fasterxml.jackson.core") - exclude(group = "com.fasterxml.jackson.datatype") - exclude(group = "com.squareup.okhttp3") - exclude(group = "org.slf4j") - } - api(packageSearchCatalog.nitrite.mvstore.adapter) { - exclude(group = "org.slf4j") - } - api(packageSearchCatalog.packagesearch.api.client) + api(packageSearchCatalog.kotlinx.serialization.core) testRuntimeOnly(packageSearchCatalog.junit.jupiter.api) testRuntimeOnly(packageSearchCatalog.junit.jupiter.engine) testImplementation(packageSearchCatalog.kotlinx.coroutines.test) diff --git a/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/services/PackageSearchProjectCachesService.kt b/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/services/PackageSearchProjectCachesService.kt deleted file mode 100644 index 7644d4d6..00000000 --- a/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/services/PackageSearchProjectCachesService.kt +++ /dev/null @@ -1,49 +0,0 @@ -@file:OptIn(PKGSInternalAPI::class) - -package com.jetbrains.packagesearch.plugin.core.services - -import com.intellij.openapi.Disposable -import com.intellij.openapi.components.Service -import com.intellij.openapi.components.Service.Level -import com.intellij.openapi.project.Project -import com.jetbrains.packagesearch.plugin.core.PackageSearch -import com.jetbrains.packagesearch.plugin.core.utils.PKGSInternalAPI -import com.jetbrains.packagesearch.plugin.core.utils.packageSearchProjectDataPath -import kotlin.io.path.absolutePathString -import kotlin.io.path.createParentDirectories -import kotlin.io.path.div -import org.dizitart.kno2.getRepository -import org.dizitart.kno2.loadModule -import org.dizitart.kno2.nitrite -import org.dizitart.kno2.serialization.KotlinXSerializationMapper -import org.dizitart.no2.mvstore.MVStoreModule - -@Service(Level.PROJECT) -class PackageSearchProjectCachesService(private val project: Project) : Disposable { - - private val cacheFilePath - get() = project.packageSearchProjectDataPath / "caches-v${PackageSearch.databaseVersion}.db" - - @PKGSInternalAPI - val cache = nitrite { - validateRepositories = false - loadModule(KotlinXSerializationMapper) - loadModule( - MVStoreModule.withConfig() - .filePath( - cacheFilePath - .createParentDirectories() - .absolutePathString() - ) - .compress(true) - .build() - ) - } - - override fun dispose() = cache.close() - - inline fun getRepository(key: String) = - cache.getRepository(key) - -} - diff --git a/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/utils/Utils.kt b/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/utils/Utils.kt index 0c419520..27915e88 100644 --- a/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/utils/Utils.kt +++ b/plugin/core/src/main/kotlin/com/jetbrains/packagesearch/plugin/core/utils/Utils.kt @@ -40,7 +40,6 @@ import com.intellij.util.messages.Topic import com.jetbrains.packagesearch.plugin.core.data.IconProvider import com.jetbrains.packagesearch.plugin.core.data.PackageSearchDeclaredMavenPackage import com.jetbrains.packagesearch.plugin.core.data.PackageSearchDeclaredPackage -import com.jetbrains.packagesearch.plugin.core.services.PackageSearchProjectCachesService import java.nio.file.Files import java.nio.file.Path import kotlin.contracts.ExperimentalContracts @@ -194,9 +193,6 @@ fun Application.registryFlow(key: String, defaultValue: Boolean = false) = } }.withInitialValue(Registry.`is`(key, defaultValue)) -val Project.PackageSearchProjectCachesService - get() = service() - fun ApiPackage.asMavenApiPackage() = this as? ApiMavenPackage ?: error( "Package $id is of type '${this::class.simpleName}' " + diff --git a/plugin/gradle/base/build.gradle.kts b/plugin/gradle/base/build.gradle.kts index 3d72a505..09d9d9b4 100644 --- a/plugin/gradle/base/build.gradle.kts +++ b/plugin/gradle/base/build.gradle.kts @@ -4,7 +4,7 @@ plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) id(packageSearchCatalog.plugins.idea.gradle.plugin.base) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) `maven-publish` } @@ -18,4 +18,5 @@ dependencies { ) } api(projects.plugin.gradle) + compileOnly(projects.plugin.gradle.tooling) } diff --git a/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleProvider.kt b/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleProvider.kt index 1f99d295..4c043cee 100644 --- a/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleProvider.kt +++ b/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleProvider.kt @@ -6,11 +6,12 @@ import com.intellij.openapi.module.Module import com.jetbrains.packagesearch.plugin.core.PackageSearch import com.jetbrains.packagesearch.plugin.core.data.PackageSearchModule import com.jetbrains.packagesearch.plugin.core.extensions.PackageSearchModuleBuilderContext +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import com.jetbrains.packagesearch.plugin.gradle.utils.getDeclaredDependencies import com.jetbrains.packagesearch.plugin.gradle.utils.toGradle +import kotlin.io.path.Path import kotlinx.coroutines.flow.FlowCollector import org.jetbrains.packagesearch.api.v3.ApiMavenRepository -import org.jetbrains.packagesearch.api.v3.http.PackageSearchEndpointPaths.knownRepositories import org.jetbrains.packagesearch.api.v3.search.androidPackages import org.jetbrains.packagesearch.api.v3.search.buildPackageTypes import org.jetbrains.packagesearch.api.v3.search.jvmGradlePackages @@ -20,7 +21,7 @@ class GradleModuleProvider : AbstractGradleModuleProvider() { override suspend fun FlowCollector.transform( context: PackageSearchModuleBuilderContext, module: Module, - model: PackageSearchGradleModel, + model: PackageSearchGradleJavaModel, ) { if (!PackageSearch.isKMPEnabled || !model.isKotlinMultiplatformApplied) { val availableKnownRepositories = @@ -31,35 +32,41 @@ class GradleModuleProvider : AbstractGradleModuleProvider() { } val configurationNames = model.configurations - .filter { it.canBeDeclared } + .filter { it.isCanBeDeclared } .map { it.name } val declaredDependencies = model.buildFilePath - ?.let { module.getDeclaredDependencies(context, it) } + ?.let { module.getDeclaredDependencies(context) } ?: emptyList() - val packageSearchGradleModule = PackageSearchGradleModule( - name = model.projectName, - identity = PackageSearchModule.Identity( - group = "gradle", - path = model.projectIdentityPath.fixBuildSrc(model), - projectDir = model.projectDir, - ), - buildFilePath = model.buildFilePath, - declaredRepositories = model.declaredRepositories.toGradle(context), + val packageTypes = buildPackageTypes { + mavenPackages() + when { + model.isKotlinAndroidApplied -> androidPackages() + model.isJavaApplied -> jvmGradlePackages("jar") + else -> gradlePackages { + isRootPublication = true + } + } + } + val identity = PackageSearchModule.Identity( + group = "gradle", + path = model.projectIdentityPath.fixBuildSrc(model), + projectDir = Path(model.projectDir), + ) + val buildFilePath = model.buildFilePath?.let { Path(it) } + val declaredRepositories = model.declaredRepositories.toGradle(context) + val defaultScope = "implementation".takeIf { it in configurationNames } ?: configurationNames.firstOrNull() + val projectName = model.projectName + val packageSearchGradleModule: PackageSearchGradleModule = PackageSearchGradleModule( + name = projectName, + identity = identity, + buildFilePath = buildFilePath, + declaredRepositories = declaredRepositories, declaredDependencies = declaredDependencies, availableKnownRepositories = availableKnownRepositories, packageSearchModel = model, - defaultScope = "implementation".takeIf { it in configurationNames } ?: configurationNames.firstOrNull(), + defaultScope = defaultScope, availableScopes = configurationNames, - compatiblePackageTypes = buildPackageTypes { - mavenPackages() - when { - model.isKotlinAndroidApplied -> androidPackages() - model.isJavaApplied -> jvmGradlePackages("jar") - else -> gradlePackages { - isRootPublication = true - } - } - }, + compatiblePackageTypes = packageTypes, nativeModule = module, ) emit(packageSearchGradleModule) @@ -69,7 +76,7 @@ class GradleModuleProvider : AbstractGradleModuleProvider() { } -private fun String.fixBuildSrc(model: PackageSearchGradleModel) = when { +private fun String.fixBuildSrc(model: PackageSearchGradleJavaModel) = when { model.projectName == "buildSrc" && this == ":" -> ":buildSrc" else -> this } diff --git a/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModule.kt b/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModule.kt index 3f27f343..67ce5518 100644 --- a/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModule.kt +++ b/plugin/gradle/base/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModule.kt @@ -3,7 +3,6 @@ package com.jetbrains.packagesearch.plugin.gradle import com.intellij.buildsystem.model.unified.UnifiedDependency -import com.intellij.buildsystem.model.unified.UnifiedDependencyRepository import com.intellij.externalSystem.DependencyModifierService import com.intellij.openapi.application.writeAction import com.intellij.openapi.module.Module @@ -17,6 +16,7 @@ import com.jetbrains.packagesearch.plugin.core.utils.toUnifiedRepository import com.jetbrains.packagesearch.plugin.core.utils.validateMavenDeclaredPackageType import com.jetbrains.packagesearch.plugin.core.utils.validateMavenPackageType import com.jetbrains.packagesearch.plugin.core.utils.validateRepositoryType +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import com.jetbrains.packagesearch.plugin.gradle.utils.toUnifiedRepository import com.jetbrains.packagesearch.plugin.gradle.utils.validateRepositoryType import java.nio.file.Path @@ -24,14 +24,10 @@ import kotlin.io.path.createParentDirectories import kotlin.io.path.exists import kotlin.io.path.extension import kotlin.io.path.writeText -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable import org.jetbrains.packagesearch.api.v3.ApiPackage import org.jetbrains.packagesearch.api.v3.ApiRepository import org.jetbrains.packagesearch.api.v3.search.PackagesType -@Serializable -@SerialName("gradle") data class PackageSearchGradleModule( override val name: String, override val identity: PackageSearchModule.Identity, @@ -41,7 +37,7 @@ data class PackageSearchGradleModule( override val defaultScope: String?, override val availableScopes: List, override val compatiblePackageTypes: List, - val packageSearchModel: PackageSearchGradleModel, + val packageSearchModel: PackageSearchGradleJavaModel, val availableKnownRepositories: Map, val nativeModule: Module, ) : PackageSearchModule.Base { diff --git a/plugin/gradle/build.gradle.kts b/plugin/gradle/build.gradle.kts index dd90a917..f307ee78 100644 --- a/plugin/gradle/build.gradle.kts +++ b/plugin/gradle/build.gradle.kts @@ -1,13 +1,11 @@ @file:Suppress("UnstableApiUsage") -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) id(packageSearchCatalog.plugins.idea.gradle.plugin.base) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) `maven-publish` } diff --git a/plugin/gradle/kmp/build.gradle.kts b/plugin/gradle/kmp/build.gradle.kts index 1e5c65d1..284abf07 100644 --- a/plugin/gradle/kmp/build.gradle.kts +++ b/plugin/gradle/kmp/build.gradle.kts @@ -4,7 +4,7 @@ plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) id(packageSearchCatalog.plugins.idea.gradle.plugin.base) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) `maven-publish` } @@ -20,4 +20,5 @@ dependencies { api(projects.plugin.gradle) api(projects.kmpModifier) + compileOnly(projects.plugin.gradle.tooling) } diff --git a/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KMPUtils.kt b/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KMPUtils.kt index e02d1abd..df5e5b41 100644 --- a/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KMPUtils.kt +++ b/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KMPUtils.kt @@ -2,14 +2,8 @@ package com.jetbrains.packagesearch.plugin.gradle -import com.intellij.openapi.Disposable import com.intellij.openapi.application.readAction -import com.intellij.openapi.components.Service -import com.intellij.openapi.components.Service.Level -import com.intellij.openapi.components.service import com.intellij.openapi.module.Module -import com.intellij.openapi.project.Project -import com.intellij.openapi.vfs.refreshAndFindVirtualFile import com.intellij.packageSearch.mppDependencyUpdater.MppDependency import com.intellij.packageSearch.mppDependencyUpdater.MppDependencyModifier import com.intellij.packageSearch.mppDependencyUpdater.resolved.MppCompilationInfoModel @@ -18,25 +12,17 @@ import com.jetbrains.packagesearch.plugin.core.data.IconProvider import com.jetbrains.packagesearch.plugin.core.data.PackageSearchDeclaredPackage import com.jetbrains.packagesearch.plugin.core.data.PackageSearchModuleVariant import com.jetbrains.packagesearch.plugin.core.extensions.PackageSearchModuleBuilderContext -import com.jetbrains.packagesearch.plugin.core.utils.PackageSearchProjectCachesService import com.jetbrains.packagesearch.plugin.core.utils.icon import com.jetbrains.packagesearch.plugin.core.utils.parseAttributesFromRawStrings -import com.jetbrains.packagesearch.plugin.gradle.utils.GradleDependencyModelCacheEntry import com.jetbrains.packagesearch.plugin.gradle.utils.getDeclaredDependencies import com.jetbrains.packagesearch.plugin.gradle.utils.toGradleDependencyModel import java.nio.file.Path -import korlibs.crypto.sha512 import kotlin.contracts.ExperimentalContracts import kotlin.contracts.contract -import kotlin.io.path.absolutePathString -import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.async import kotlinx.coroutines.coroutineScope -import kotlinx.coroutines.withContext import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable -import org.dizitart.kno2.filters.eq -import org.dizitart.no2.collection.UpdateOptions import org.jetbrains.packagesearch.api.v3.ApiMavenPackage import org.jetbrains.packagesearch.api.v3.ApiPackage import org.jetbrains.packagesearch.api.v3.search.buildPackageTypes @@ -151,7 +137,7 @@ suspend fun Module.getKMPVariants( if (buildFilePath == null) return@coroutineScope emptyList() val dependenciesBlockVariant = async { - val declaredDependencies = getDeclaredDependencies(context, buildFilePath) + val declaredDependencies = getDeclaredDependencies(context) PackageSearchKotlinMultiplatformVariant.DependenciesBlock( declaredDependencies = declaredDependencies.asKmpVariantDependencies(), compatiblePackageTypes = buildPackageTypes { @@ -172,7 +158,7 @@ suspend fun Module.getKMPVariants( ) } - val rawDeclaredSourceSetDependencies = getDependenciesBySourceSet(buildFilePath) + val rawDeclaredSourceSetDependencies = getDependenciesBySourceSet() val packageIds = rawDeclaredSourceSetDependencies .values @@ -236,55 +222,8 @@ suspend fun Module.getKMPVariants( sourceSetVariants + dependenciesBlockVariant.await() } -@Serializable -data class GradleKMPDependencyModelCacheEntry( - @SerialName("_id") val id: Long? = null, - val buildFile: String, - val buildFileSha: String, - val dependencies: Map>, -) -@Service(Level.PROJECT) -class GradleKMPCacheService(project: Project) : Disposable { - val kmpDependencyRepository = - project.PackageSearchProjectCachesService.getRepository("gradle-kmp-dependencies") - - override fun dispose() = kmpDependencyRepository.close() -} - -private suspend fun Module.getDependenciesBySourceSet( - buildFilePath: Path -): Map> { - val vf = buildFilePath.refreshAndFindVirtualFile() ?: return emptyMap() - - val buildFileHash = vf.contentsToByteArray().sha512().hex - - val entry = withContext(Dispatchers.IO) { - project.service() - .kmpDependencyRepository - .find(GradleDependencyModelCacheEntry::buildFile eq buildFilePath.absolutePathString()) - .singleOrNull() - } - - if (entry?.buildFileSha == buildFileHash) return entry.dependencies - - val filteredDependenciesBySourceSet = - MppDependencyModifier.dependenciesBySourceSet(this) - ?.filterNotNullValues() - ?.mapValues { readAction { it.value.artifacts().map { it.toGradleDependencyModel() } }.distinct() } - ?: emptyMap() - - project.service() - .kmpDependencyRepository - .update( - /* filter = */ GradleDependencyModelCacheEntry::buildFile eq buildFilePath.absolutePathString(), - /* update = */ GradleKMPDependencyModelCacheEntry( - buildFile = buildFilePath.absolutePathString(), - buildFileSha = buildFileHash, - dependencies = filteredDependenciesBySourceSet - ), - /* updateOptions = */ UpdateOptions.updateOptions(true) - ) - - return filteredDependenciesBySourceSet -} \ No newline at end of file +private suspend fun Module.getDependenciesBySourceSet(): Map> = MppDependencyModifier.dependenciesBySourceSet(this) + ?.filterNotNullValues() + ?.mapValues { readAction { it.value.artifacts().map { it.toGradleDependencyModel() } }.distinct() } + ?: emptyMap() diff --git a/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KotlinMultiplatformModuleProvider.kt b/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KotlinMultiplatformModuleProvider.kt index 6e5ef624..60abc474 100644 --- a/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KotlinMultiplatformModuleProvider.kt +++ b/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/KotlinMultiplatformModuleProvider.kt @@ -7,26 +7,27 @@ import com.intellij.packageSearch.mppDependencyUpdater.resolved.MppCompilationIn import com.jetbrains.packagesearch.plugin.core.PackageSearch import com.jetbrains.packagesearch.plugin.core.data.PackageSearchModule import com.jetbrains.packagesearch.plugin.core.extensions.PackageSearchModuleBuilderContext +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import com.jetbrains.packagesearch.plugin.gradle.utils.toGradle +import kotlin.io.path.Path import kotlinx.coroutines.flow.FlowCollector -import org.jetbrains.packagesearch.api.v3.http.PackageSearchEndpointPaths.knownRepositories class KotlinMultiplatformModuleProvider : AbstractGradleModuleProvider() { override suspend fun FlowCollector.transform( context: PackageSearchModuleBuilderContext, module: Module, - model: PackageSearchGradleModel, + model: PackageSearchGradleJavaModel, ) { if (PackageSearch.isKMPEnabled && model.isKotlinMultiplatformApplied && !model.isAmperApplied) - MppCompilationInfoProvider.sourceSetsMap(context.project, model.projectDir) + MppCompilationInfoProvider.sourceSetsMap(context.project, Path(model.projectDir)) .collect { compilationModel -> val variants = module.getKMPVariants( context = context, compilationModel = compilationModel, - buildFilePath = model.buildFilePath, + buildFilePath = Path(model.buildFilePath), availableScopes = model.configurations - .filter { it.canBeDeclared } + .filter { it.isCanBeDeclared } .map { it.name } ).associateBy { it.name } val pkgsModule = PackageSearchKotlinMultiplatformModule( @@ -34,9 +35,9 @@ class KotlinMultiplatformModuleProvider : AbstractGradleModuleProvider() { identity = PackageSearchModule.Identity( group = "gradle", path = model.projectIdentityPath, - projectDir = model.projectDir, + projectDir = Path(model.projectDir), ), - buildFilePath = model.buildFilePath, + buildFilePath = Path(model.buildFilePath), declaredRepositories = model.declaredRepositories.toGradle(context), variants = variants, packageSearchModel = model, diff --git a/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchKotlinMultiplatformModule.kt b/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchKotlinMultiplatformModule.kt index 9622610d..fbce30f3 100644 --- a/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchKotlinMultiplatformModule.kt +++ b/plugin/gradle/kmp/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchKotlinMultiplatformModule.kt @@ -12,6 +12,7 @@ import com.jetbrains.packagesearch.plugin.core.data.PackageSearchDeclaredReposit import com.jetbrains.packagesearch.plugin.core.data.PackageSearchModule import com.jetbrains.packagesearch.plugin.core.utils.toUnifiedRepository import com.jetbrains.packagesearch.plugin.core.utils.validateRepositoryType +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import com.jetbrains.packagesearch.plugin.gradle.utils.toUnifiedRepository import com.jetbrains.packagesearch.plugin.gradle.utils.validateRepositoryType import java.nio.file.Path @@ -28,7 +29,7 @@ data class PackageSearchKotlinMultiplatformModule( override val buildFilePath: Path?, override val declaredRepositories: List, override val variants: Map, - val packageSearchModel: PackageSearchGradleModel, + val packageSearchModel: PackageSearchGradleJavaModel, val availableKnownRepositories: Map, val nativeModule: Module, ) : PackageSearchModule.WithVariants { diff --git a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleTransformer.kt b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleTransformer.kt index 0eec7f11..e69a281a 100644 --- a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleTransformer.kt +++ b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/GradleModuleTransformer.kt @@ -15,6 +15,8 @@ import com.jetbrains.packagesearch.plugin.core.extensions.PackageSearchModuleBui import com.jetbrains.packagesearch.plugin.core.extensions.PackageSearchModuleProvider import com.jetbrains.packagesearch.plugin.core.utils.isProjectImportingFlow import com.jetbrains.packagesearch.plugin.core.utils.smartModeFlow +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel +import com.jetbrains.packagesearch.plugin.gradle.utils.GRADLE_MODEL_DATA_NODE_KEY import com.jetbrains.packagesearch.plugin.gradle.utils.awaitExternalSystemInitialization import com.jetbrains.packagesearch.plugin.gradle.utils.getModuleChangesFlow import com.jetbrains.packagesearch.plugin.gradle.utils.initializeProjectFlow @@ -53,7 +55,7 @@ abstract class AbstractGradleModuleProvider : PackageSearchModuleProvider { .filter { nativeModule.isGradle } .mapNotNull { findGradleModuleData(nativeModule) - ?.let { ExternalSystemApiUtil.find(it, PackageSearchGradleModel.DATA_NODE_KEY) } + ?.let { ExternalSystemApiUtil.find(it, GRADLE_MODEL_DATA_NODE_KEY) } ?.data } .flatMapLatest { model -> @@ -68,7 +70,7 @@ abstract class AbstractGradleModuleProvider : PackageSearchModuleProvider { abstract suspend fun FlowCollector.transform( context: PackageSearchModuleBuilderContext, module: Module, - model: PackageSearchGradleModel, + model: PackageSearchGradleJavaModel, ) override fun getSyncStateFlow(project: Project) = flow { diff --git a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleDeclaredPackage.kt b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleDeclaredPackage.kt index 98a5fab7..a8b1db14 100644 --- a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleDeclaredPackage.kt +++ b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleDeclaredPackage.kt @@ -10,8 +10,6 @@ import org.jetbrains.packagesearch.api.v3.ApiMavenPackage import org.jetbrains.packagesearch.api.v3.ApiMavenRepository import org.jetbrains.packagesearch.packageversionutils.normalization.NormalizedVersion -@Serializable -@SerialName("gradle-version") data class PackageSearchGradleDeclaredPackage( override val id: String, override val declaredVersion: NormalizedVersion?, diff --git a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModel.kt b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModel.kt deleted file mode 100644 index 1b06dea8..00000000 --- a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchGradleModel.kt +++ /dev/null @@ -1,50 +0,0 @@ -package com.jetbrains.packagesearch.plugin.gradle - -import com.intellij.openapi.externalSystem.model.Key -import com.jetbrains.packagesearch.plugin.core.utils.SerializablePath -import kotlinx.serialization.Serializable - -@Serializable -data class PackageSearchGradleModel( - val projectDir: SerializablePath, - val configurations: List, - val declaredRepositories: List, - val isJavaApplied: Boolean, - val isAmperApplied: Boolean, - val isKotlinAndroidApplied: Boolean, - val isKotlinMultiplatformApplied: Boolean, - val projectIdentityPath: String, - val projectName: String, - val rootProjectName: String, - val buildFilePath: SerializablePath?, - val rootProjectPath: SerializablePath, - val gradleVersion: String, -) { - - companion object { - val DATA_NODE_KEY: Key = - Key.create(PackageSearchGradleModel::class.java, 100) - } - - @Serializable - data class DeclaredRepository( - val url: String, - val name: String?, - ) - - @Serializable - data class Configuration( - val name: String, - val dependencies: List, - val canBeResolved: Boolean, - val canBeDeclared: Boolean, - val canBeConsumed: Boolean, - ) - - @Serializable - data class Dependency( - val groupId: String, - val artifactId: String, - val version: String, - ) -} \ No newline at end of file diff --git a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchProjectResolverExtension.kt b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchProjectResolverExtension.kt index b2841c84..22b92108 100644 --- a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchProjectResolverExtension.kt +++ b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/PackageSearchProjectResolverExtension.kt @@ -2,11 +2,9 @@ package com.jetbrains.packagesearch.plugin.gradle import com.intellij.openapi.externalSystem.model.DataNode import com.intellij.openapi.externalSystem.model.project.ModuleData -import com.jetbrains.packagesearch.plugin.gradle.PackageSearchGradleModel.Configuration -import com.jetbrains.packagesearch.plugin.gradle.PackageSearchGradleModel.Dependency import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleModelBuilder -import java.nio.file.Paths +import com.jetbrains.packagesearch.plugin.gradle.utils.GRADLE_MODEL_DATA_NODE_KEY import org.gradle.tooling.model.idea.IdeaModule import org.jetbrains.plugins.gradle.service.project.AbstractProjectResolverExtension @@ -23,39 +21,7 @@ class PackageSearchProjectResolverExtension : AbstractProjectResolverExtension() override fun populateModuleExtraModels(gradleModule: IdeaModule, ideModule: DataNode) { gradleModule.getExtraProject() - ?.toPackageSearchModel() - ?.also { ideModule.createChild(PackageSearchGradleModel.DATA_NODE_KEY, it) } + ?.also { ideModule.createChild(GRADLE_MODEL_DATA_NODE_KEY, it) } super.populateModuleExtraModels(gradleModule, ideModule) } } - -internal fun PackageSearchGradleJavaModel.toPackageSearchModel() = - PackageSearchGradleModel( - projectDir = Paths.get(projectDir), - projectName = projectName, - projectIdentityPath = projectIdentityPath, - configurations = configurations.map { - Configuration( - name = it.name, - dependencies = it.dependencies.map { Dependency(it.groupId, it.artifactId, it.version) }, - canBeResolved = it.isCanBeResolved, - canBeDeclared = it.isCanBeDeclared, - canBeConsumed = it.isCanBeConsumed - ) - }, - declaredRepositories = declaredRepositories.map { - PackageSearchGradleModel.DeclaredRepository( - url = it.url, - name = it.name - ) - }, - isJavaApplied = isJavaApplied, - isAmperApplied = isAmperApplied, - isKotlinAndroidApplied = isKotlinAndroidApplied, - isKotlinMultiplatformApplied = isKotlinMultiplatformApplied, - rootProjectName = rootProjectName, - buildFilePath = buildFilePath?.let { Paths.get(it) }, - rootProjectPath = Paths.get(rootProjectPath), - gradleVersion = gradleVersion - ) - diff --git a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/GradleUtils.kt b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/GradleUtils.kt index d5428a9a..bf15e417 100644 --- a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/GradleUtils.kt +++ b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/GradleUtils.kt @@ -5,18 +5,13 @@ package com.jetbrains.packagesearch.plugin.gradle.utils import com.android.tools.idea.gradle.dsl.api.ProjectBuildModel import com.intellij.buildsystem.model.unified.UnifiedDependencyRepository -import com.intellij.openapi.Disposable import com.intellij.openapi.application.readAction -import com.intellij.openapi.components.Service -import com.intellij.openapi.components.service import com.intellij.openapi.module.Module import com.intellij.openapi.project.Project -import com.intellij.openapi.vfs.refreshAndFindVirtualFile import com.intellij.openapi.vfs.toNioPathOrNull import com.jetbrains.packagesearch.plugin.core.data.IconProvider import com.jetbrains.packagesearch.plugin.core.data.PackageSearchDeclaredRepository import com.jetbrains.packagesearch.plugin.core.extensions.PackageSearchModuleBuilderContext -import com.jetbrains.packagesearch.plugin.core.utils.PackageSearchProjectCachesService import com.jetbrains.packagesearch.plugin.core.utils.filesChangedEventFlow import com.jetbrains.packagesearch.plugin.core.utils.icon import com.jetbrains.packagesearch.plugin.core.utils.isSameFileAsSafe @@ -25,25 +20,19 @@ import com.jetbrains.packagesearch.plugin.core.utils.watchExternalFileChanges import com.jetbrains.packagesearch.plugin.gradle.GradleDependencyModel import com.jetbrains.packagesearch.plugin.gradle.PackageSearchGradleDeclaredPackage import com.jetbrains.packagesearch.plugin.gradle.PackageSearchGradleDeclaredRepository -import com.jetbrains.packagesearch.plugin.gradle.PackageSearchGradleModel import com.jetbrains.packagesearch.plugin.gradle.packageId -import java.nio.file.Path +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import java.nio.file.Paths -import korlibs.crypto.sha512 import kotlin.contracts.ExperimentalContracts import kotlin.contracts.contract -import kotlin.io.path.absolutePathString -import kotlinx.coroutines.Dispatchers +import kotlin.io.path.Path import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.flow import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.merge -import kotlinx.coroutines.withContext import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable -import org.dizitart.kno2.filters.eq -import org.dizitart.no2.collection.UpdateOptions import org.jetbrains.packagesearch.api.v3.ApiMavenPackage import org.jetbrains.packagesearch.api.v3.ApiMavenRepository import org.jetbrains.packagesearch.api.v3.ApiPackage @@ -61,16 +50,16 @@ val globalGradlePropertiesPath val knownGradleAncillaryFilesFiles get() = listOf("gradle.properties", "local.properties", "gradle/libs.versions.toml") -fun getModuleChangesFlow(model: PackageSearchGradleModel): Flow { +fun getModuleChangesFlow(model: PackageSearchGradleJavaModel): Flow { val knownFiles = buildSet { if (model.buildFilePath != null) { - add(model.buildFilePath) + add(Path(model.buildFilePath)) } addAll( knownGradleAncillaryFilesFiles.flatMap { listOf( - model.rootProjectPath.resolve(it), - model.projectDir.resolve(it), + Path(model.rootProjectPath).resolve(it), + Path(model.projectDir).resolve(it), ) } ) @@ -87,64 +76,18 @@ fun getModuleChangesFlow(model: PackageSearchGradleModel): Flow { ) } -@Serializable -data class GradleDependencyModelCacheEntry( - @SerialName("_id") val id: String? = null, - val buildFile: String, - val buildFileSha: String, - val dependencies: List, -) - -suspend fun PackageSearchModuleBuilderContext.retrieveGradleDependencyModel(nativeModule: Module, buildFile: Path): List { - val vf = buildFile.refreshAndFindVirtualFile() ?: return emptyList() - - val buildFileSha = vf.contentsToByteArray().sha512().hex - - val cache = withContext(Dispatchers.IO) { - project.service() - .dependencyRepository - .find(GradleDependencyModelCacheEntry::buildFile eq buildFile.absolutePathString()) - .singleOrNull() - } - - if (cache?.buildFileSha == buildFileSha) return cache.dependencies - - val dependencies = readAction { - ProjectBuildModel.get(nativeModule.project).getModuleBuildModel(nativeModule) - ?.dependencies() - ?.artifacts() - ?.map { it.toGradleDependencyModel() } - ?: emptyList() - } - - project.service() - .dependencyRepository - .update( - /* filter = */ GradleDependencyModelCacheEntry::buildFile eq buildFile.absolutePathString(), - /* update = */ GradleDependencyModelCacheEntry( - buildFile = buildFile.absolutePathString(), - buildFileSha = buildFileSha, - dependencies = dependencies - ), - /* updateOptions = */ UpdateOptions.updateOptions(true) - ) - - return dependencies -} - -@Service(Service.Level.PROJECT) -class GradleCacheService(project: Project) : Disposable { - val dependencyRepository = - project.PackageSearchProjectCachesService.getRepository("gradle-dependencies") - - override fun dispose() = dependencyRepository.close() +suspend fun Module.retrieveGradleDependencyModel(): List = readAction { + ProjectBuildModel.get(this.project).getModuleBuildModel(this) + ?.dependencies() + ?.artifacts() + ?.map { it.toGradleDependencyModel() } + ?: emptyList() } suspend fun Module.getDeclaredDependencies( context: PackageSearchModuleBuilderContext, - buildFile: Path ): List { - val declaredDependencies = context.retrieveGradleDependencyModel(this, buildFile) + val declaredDependencies = retrieveGradleDependencyModel() val distinctIds = declaredDependencies .asSequence() @@ -175,7 +118,7 @@ internal val Project.initializeProjectFlow emit(Unit) } -fun List.toGradle(context: PackageSearchModuleBuilderContext) = +fun List.toGradle(context: PackageSearchModuleBuilderContext) = map { PackageSearchGradleDeclaredRepository( url = it.url, diff --git a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/Utils.kt b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/Utils.kt index fc75b05b..f0e75f03 100644 --- a/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/Utils.kt +++ b/plugin/gradle/src/main/kotlin/com/jetbrains/packagesearch/plugin/gradle/utils/Utils.kt @@ -1,6 +1,7 @@ package com.jetbrains.packagesearch.plugin.gradle.utils import com.android.tools.idea.gradle.dsl.api.dependencies.ArtifactDependencyModel +import com.intellij.openapi.externalSystem.model.Key import com.intellij.openapi.externalSystem.model.ProjectSystemId import com.intellij.openapi.externalSystem.service.project.manage.ExternalProjectsManager import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil @@ -9,13 +10,18 @@ import com.intellij.openapi.project.Project import com.jetbrains.packagesearch.plugin.core.extensions.DependencyDeclarationIndexes import com.jetbrains.packagesearch.plugin.core.utils.isSourceSet import com.jetbrains.packagesearch.plugin.gradle.GradleDependencyModel +import com.jetbrains.packagesearch.plugin.gradle.tooling.PackageSearchGradleJavaModel import kotlin.coroutines.resume import kotlinx.coroutines.suspendCancellableCoroutine import org.jetbrains.kotlin.psi.psiUtil.parents import org.jetbrains.plugins.gradle.util.GradleConstants +@Suppress("unused") private val GRADLE_SYSTEM_ID get() = ProjectSystemId("GRADLE") +val GRADLE_MODEL_DATA_NODE_KEY: Key = + Key.create(PackageSearchGradleJavaModel::class.java, 100) + val Module.isGradle get() = ExternalSystemApiUtil.isExternalSystemAwareModule(GradleConstants.SYSTEM_ID, this) && !isSourceSet diff --git a/plugin/gradle/tooling/src/main/java/com/jetbrains/packagesearch/plugin/gradle/tooling/PackageSearchGradleJavaModelImpl.java b/plugin/gradle/tooling/src/main/java/com/jetbrains/packagesearch/plugin/gradle/tooling/PackageSearchGradleJavaModelImpl.java index 2dde5ee4..4920f09a 100644 --- a/plugin/gradle/tooling/src/main/java/com/jetbrains/packagesearch/plugin/gradle/tooling/PackageSearchGradleJavaModelImpl.java +++ b/plugin/gradle/tooling/src/main/java/com/jetbrains/packagesearch/plugin/gradle/tooling/PackageSearchGradleJavaModelImpl.java @@ -1,6 +1,7 @@ package com.jetbrains.packagesearch.plugin.gradle.tooling; -import org.gradle.util.GradleVersion; +import com.intellij.serialization.PropertyMapping; +import kotlinx.serialization.Serializable; import java.util.List; @@ -21,6 +22,21 @@ public class PackageSearchGradleJavaModelImpl implements PackageSearchGradleJava private final String buildFilePath; private final String rootProjectPath; + @PropertyMapping({ + "projectDir", + "projectName", + "rootProjectName", + "projectIdentityPath", + "configurations", + "repositories", + "isJavaApplied", + "isAmperApplied", + "isKotlinMultiplatformApplied", + "isKotlinAndroidApplied", + "buildFilePath", + "rootProjectPath", + "gradleVersion" + }) public PackageSearchGradleJavaModelImpl( String projectDir, String projectName, @@ -120,6 +136,7 @@ static public class DeclaredRepositoryImpl implements DeclaredRepository { private final String url; private final String name; + @PropertyMapping({"url", "name"}) public DeclaredRepositoryImpl(String url, String name) { this.url = url; this.name = name; @@ -142,6 +159,7 @@ static public class DependencyImpl implements Dependency { private final String artifact; private final String version; + @PropertyMapping({"group", "artifact", "version"}) public DependencyImpl(String group, String artifact, String version) { this.group = group; this.artifact = artifact; @@ -173,6 +191,13 @@ static public class ConfigurationImpl implements Configuration { private final boolean canBeDeclared; private final boolean canBeConsumed; + @PropertyMapping({ + "name", + "dependencies", + "canBeResolved", + "canBeDeclared", + "canBeConsumed" + }) public ConfigurationImpl( String name, List dependencies, diff --git a/plugin/jps/build.gradle.kts b/plugin/jps/build.gradle.kts index 29b08d1b..8526a05a 100644 --- a/plugin/jps/build.gradle.kts +++ b/plugin/jps/build.gradle.kts @@ -4,7 +4,7 @@ plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) alias(packageSearchCatalog.plugins.idea.gradle.plugin) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) `build-config` `maven-publish` } diff --git a/plugin/maven/build.gradle.kts b/plugin/maven/build.gradle.kts index 8342df8b..5a30e3a3 100644 --- a/plugin/maven/build.gradle.kts +++ b/plugin/maven/build.gradle.kts @@ -1,13 +1,11 @@ @file:Suppress("UnstableApiUsage") -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { alias(packageSearchCatalog.plugins.kotlin.jvm) id(packageSearchCatalog.plugins.idea.gradle.plugin.base) alias(packageSearchCatalog.plugins.dokka) - alias(packageSearchCatalog.plugins.kotlin.plugin.serialization) + id(packageSearchCatalog.plugins.kotlin.plugin.serialization) `maven-publish` } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/CleanPackageSearchApplicationCacheAction.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/CleanPackageSearchApplicationCacheAction.kt deleted file mode 100644 index cecc8fb3..00000000 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/CleanPackageSearchApplicationCacheAction.kt +++ /dev/null @@ -1,10 +0,0 @@ -@file:Suppress("UnstableApiUsage") - -package com.jetbrains.packagesearch.plugin.services - -import com.intellij.ide.actions.cache.RecoveryAction -import com.jetbrains.packagesearch.plugin.core.utils.IntelliJApplication -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApplicationCachesService - -class CleanPackageSearchApplicationCacheAction : - RecoveryAction by IntelliJApplication.PackageSearchApplicationCachesService \ No newline at end of file diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchApplicationCachesService.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchApplicationCachesService.kt deleted file mode 100644 index df3ae225..00000000 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchApplicationCachesService.kt +++ /dev/null @@ -1,163 +0,0 @@ -@file:Suppress("UnstableApiUsage") -@file:OptIn(PKGSInternalAPI::class) - -package com.jetbrains.packagesearch.plugin.services - -import com.intellij.ide.actions.cache.AsyncRecoveryResult -import com.intellij.ide.actions.cache.RecoveryAction -import com.intellij.ide.actions.cache.RecoveryScope -import com.intellij.openapi.Disposable -import com.intellij.openapi.application.ApplicationInfo -import com.intellij.openapi.application.appSystemDir -import com.intellij.openapi.components.Service -import com.intellij.openapi.components.Service.Level -import com.intellij.openapi.components.service -import com.jetbrains.packagesearch.plugin.PackageSearchBundle -import com.jetbrains.packagesearch.plugin.core.PackageSearch -import com.jetbrains.packagesearch.plugin.core.utils.IntelliJApplication -import com.jetbrains.packagesearch.plugin.core.utils.PKGSInternalAPI -import com.jetbrains.packagesearch.plugin.utils.ApiPackageCacheEntry -import com.jetbrains.packagesearch.plugin.utils.ApiRepositoryCacheEntry -import com.jetbrains.packagesearch.plugin.utils.ApiSearchCacheEntry -import com.jetbrains.packagesearch.plugin.utils.KtorDebugLogger -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApiPackageCache -import com.jetbrains.packagesearch.plugin.utils.PackageSearchLogger -import com.jetbrains.packagesearch.plugin.utils.PackageSearchProjectService -import io.ktor.client.engine.java.Java -import io.ktor.client.plugins.DefaultRequest -import io.ktor.client.plugins.UserAgent -import io.ktor.client.plugins.logging.LogLevel -import io.ktor.client.plugins.logging.Logging -import io.ktor.client.request.headers -import java.util.concurrent.CompletableFuture -import kotlin.io.path.absolutePathString -import kotlin.io.path.createParentDirectories -import kotlin.io.path.div -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.flow.SharingStarted -import kotlinx.coroutines.flow.stateIn -import kotlinx.coroutines.future.future -import kotlinx.coroutines.launch -import kotlinx.coroutines.withContext -import org.dizitart.kno2.getRepository -import org.dizitart.kno2.loadModule -import org.dizitart.kno2.nitrite -import org.dizitart.kno2.serialization.KotlinXSerializationMapper -import org.dizitart.no2.index.IndexOptions -import org.dizitart.no2.index.IndexType -import org.dizitart.no2.mvstore.MVStoreModule -import org.jetbrains.packagesearch.api.v3.http.PackageSearchApiClient -import org.jetbrains.packagesearch.api.v3.http.PackageSearchEndpoints - -@Service(Level.APP) -class PackageSearchApplicationCachesService(private val coroutineScope: CoroutineScope) : Disposable, RecoveryAction { - - companion object { - private val cacheFilePath - get() = appSystemDir / "caches" / "packagesearch" / "db-v${PackageSearch.databaseVersion}.db" - } - - @PKGSInternalAPI - val cache = nitrite { - validateRepositories = false - loadModule(KotlinXSerializationMapper) - loadModule( - MVStoreModule.withConfig() - .filePath( - cacheFilePath - .createParentDirectories() - .absolutePathString() - ) - .build() - ) - } - - override fun dispose() { - cache.close() - } - - private val packagesRepository - get() = cache.getRepository("packages") - - private val searchesRepository - get() = cache.getRepository("searches") - - private val repositoryCache - get() = cache.getRepository("repositories") - - private val apiClient = PackageSearchApiClient( - endpoints = PackageSearchEndpoints.PROD, - httpClient = PackageSearchApiClient.defaultHttpClient(Java) { - install(Logging) { - level = LogLevel.ALL - logger = KtorDebugLogger() - filter { it.attributes.getOrNull(PackageSearchApiClient.Attributes.Cache) == true } - } - install(DefaultRequest) { - headers { - append("JB-Plugin-Version", PackageSearch.pluginVersion) - append("JB-IDE-Version", IntelliJApplication.service().strictVersion) - } - } - install(UserAgent) { - agent = IntelliJApplication.service().fullApplicationName - } - } - ) - - val isOnlineFlow = apiClient.isOnlineFlow() - .stateIn(coroutineScope, SharingStarted.WhileSubscribed(), true) - - val apiPackageCache = PackageSearchApiPackageCache( - apiPackageCache = packagesRepository, - repositoryCache = repositoryCache, - searchCache = searchesRepository, - apiClient = apiClient, - logger = PackageSearchLogger, - isOnline = { isOnlineFlow.value } - ) - - private suspend fun createIndexes() = withContext(Dispatchers.IO) { - searchesRepository.createIndex( - IndexOptions.indexOptions(IndexType.UNIQUE), - ApiSearchCacheEntry::searchHash.name - ) - packagesRepository.createIndex( - IndexOptions.indexOptions(IndexType.NON_UNIQUE), - ApiPackageCacheEntry::packageId.name - ) - packagesRepository.createIndex( - IndexOptions.indexOptions(IndexType.NON_UNIQUE), - ApiPackageCacheEntry::packageIdHash.name - ) - } - - init { - coroutineScope.launch { createIndexes() } - } - - override val actionKey: String - get() = "CleanPackageSearchApplicationCacheAction" - - override val performanceRate: Int - get() = 0 - - override val presentableName: String - get() = PackageSearchBundle.message("packagesearch.cache.clean") - - override fun perform(recoveryScope: RecoveryScope): CompletableFuture = - coroutineScope.future(Dispatchers.IO) { - clearCaches() - recoveryScope.project.PackageSearchProjectService.restart() - AsyncRecoveryResult(recoveryScope, emptyList()) - } - - private suspend fun clearCaches() = withContext(Dispatchers.IO) { - searchesRepository.clear() - packagesRepository.clear() - repositoryCache.clear() - } -} - - diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchProjectService.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchProjectService.kt index 5f4a7c1c..ac6c71fa 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchProjectService.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/services/PackageSearchProjectService.kt @@ -15,7 +15,7 @@ import com.jetbrains.packagesearch.plugin.core.utils.IntelliJApplication import com.jetbrains.packagesearch.plugin.core.utils.fileOpenedFlow import com.jetbrains.packagesearch.plugin.core.utils.replayOn import com.jetbrains.packagesearch.plugin.core.utils.toolWindowOpenedFlow -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApplicationCachesService +import com.jetbrains.packagesearch.plugin.utils.PackageSearchApiClientService import com.jetbrains.packagesearch.plugin.utils.PackageSearchLogger import com.jetbrains.packagesearch.plugin.utils.PackageSearchSettingsService import com.jetbrains.packagesearch.plugin.utils.WindowedModuleBuilderContext @@ -36,7 +36,6 @@ import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.consumeAsFlow import kotlinx.coroutines.flow.debounce import kotlinx.coroutines.flow.distinctUntilChanged -import kotlinx.coroutines.flow.emptyFlow import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.flatMapLatest import kotlinx.coroutines.flow.flatMapMerge @@ -67,8 +66,8 @@ class PackageSearchProjectService( .stateIn(coroutineScope, SharingStarted.Lazily, false) private val knownRepositoriesStateFlow = timer(12.hours) { - IntelliJApplication.PackageSearchApplicationCachesService - .apiPackageCache + IntelliJApplication.PackageSearchApiClientService + .client .getKnownRepositories() .associateBy { it.id } } @@ -87,7 +86,7 @@ class PackageSearchProjectService( private val context = WindowedModuleBuilderContext( project = project, knownRepositoriesGetter = { knownRepositories }, - packagesCache = IntelliJApplication.PackageSearchApplicationCachesService.apiPackageCache, + packageSearchApiClient = IntelliJApplication.PackageSearchApiClientService.client, coroutineScope = coroutineScope, ) @@ -142,16 +141,9 @@ class PackageSearchProjectService( combine( openedBuildFiles.map { it.isEmpty() }, - project.toolWindowOpenedFlow("Package Search") - ) { noOpenedFiles, toolWindowOpened -> noOpenedFiles || !toolWindowOpened } - .flatMapLatest { - // if the tool window is not opened and there are no opened build files, - // we don't need to do anything, and we turn off the isOnlineFlow - when { - it -> IntelliJApplication.PackageSearchApplicationCachesService.isOnlineFlow - else -> emptyFlow() - } - } + project.toolWindowOpenedFlow("Package Search"), + IntelliJApplication.PackageSearchApiClientService.client.onlineStateFlow + ) { noOpenedFiles, toolWindowOpened, isOnline -> noOpenedFiles || !toolWindowOpened || isOnline } .distinctUntilChanged() .filter { it } .throttle(30.minutes) diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchMetrics.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchMetrics.kt index bd50168c..72eebff4 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchMetrics.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchMetrics.kt @@ -14,8 +14,8 @@ object PackageSearchMetrics { val scrollbarWidth: Dp @Composable get() { - val metrics = JewelTheme.scrollbarStyle.metrics - return metrics.thumbThickness + + val metrics = JewelTheme.scrollbarStyle.scrollbarVisibility + return metrics.trackThicknessExpanded + metrics.trackPadding.calculateEndPadding(LocalLayoutDirection.current) } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchToolWindow.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchToolWindow.kt index 74787609..4a560c7d 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchToolWindow.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/PackageSearchToolWindow.kt @@ -13,14 +13,17 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp +import com.intellij.openapi.components.service import com.intellij.ui.JBColor import com.jetbrains.packagesearch.plugin.ui.bridge.LabelInfo import com.jetbrains.packagesearch.plugin.ui.model.PackageSearchToolWindowState import com.jetbrains.packagesearch.plugin.ui.model.ToolWindowViewModel import com.jetbrains.packagesearch.plugin.ui.model.packageslist.PackageListViewModel +import org.jetbrains.idea.packagesearch.api.PackageSearchApiClientService import org.jetbrains.jewel.bridge.toComposeColor import org.jetbrains.jewel.foundation.theme.JewelTheme import org.jetbrains.jewel.ui.component.IndeterminateHorizontalProgressBar +import org.jetbrains.packagesearch.api.PackageSearchApiClientObject @Composable fun PackageSearchToolwindow() { diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/bridge/CustomStyles.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/bridge/CustomStyles.kt index f52ec028..24ef464f 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/bridge/CustomStyles.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/bridge/CustomStyles.kt @@ -19,8 +19,10 @@ import org.jetbrains.jewel.ui.component.styling.LazyTreeMetrics import org.jetbrains.jewel.ui.component.styling.LazyTreeStyle import org.jetbrains.jewel.ui.component.styling.LinkColors import org.jetbrains.jewel.ui.component.styling.LinkStyle +import org.jetbrains.jewel.ui.component.styling.LinkUnderlineBehavior import org.jetbrains.jewel.ui.component.styling.LocalDefaultTabStyle import org.jetbrains.jewel.ui.component.styling.LocalLazyTreeStyle +import org.jetbrains.jewel.ui.component.styling.LocalScrollbarStyle import org.jetbrains.jewel.ui.component.styling.TabMetrics import org.jetbrains.jewel.ui.component.styling.TabStyle import org.jetbrains.jewel.ui.theme.linkStyle @@ -41,7 +43,7 @@ internal fun PackageSearchDropdownLinkStyle(): LinkStyle { ), metrics = currentStyle.metrics, icons = currentStyle.icons, - textStyles = currentStyle.textStyles, + underlineBehavior = LinkUnderlineBehavior.ShowOnHover ) } @@ -59,7 +61,8 @@ internal fun PackageSearchTabStyle(): TabStyle { tabContentSpacing = current.metrics.tabContentSpacing, ), icons = current.icons, - contentAlpha = current.contentAlpha + contentAlpha = current.contentAlpha, + scrollbarStyle = LocalScrollbarStyle.current, ) } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/PackageListViewModel.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/PackageListViewModel.kt index 6333bdff..9ba8ee1a 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/PackageListViewModel.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/PackageListViewModel.kt @@ -21,7 +21,7 @@ import com.jetbrains.packagesearch.plugin.ui.model.hasUpdates import com.jetbrains.packagesearch.plugin.ui.model.infopanel.InfoPanelViewModel import com.jetbrains.packagesearch.plugin.ui.model.packageslist.PackageListItemEvent.SetHeaderState.TargetState import com.jetbrains.packagesearch.plugin.ui.model.packageslist.PackageListItemEvent.SetHeaderState.TargetState.OPEN -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApplicationCachesService +import com.jetbrains.packagesearch.plugin.utils.PackageSearchApiClientService import com.jetbrains.packagesearch.plugin.utils.PackageSearchLogger import com.jetbrains.packagesearch.plugin.utils.PackageSearchProjectService import com.jetbrains.packagesearch.plugin.utils.PackageSearchSettingsService @@ -63,9 +63,7 @@ class PackageListViewModel( private val viewModelScope: CoroutineScope, ) { - private val isOnline - get() = IntelliJApplication.PackageSearchApplicationCachesService - .isOnlineFlow + private val isOnlineFlow = IntelliJApplication.PackageSearchApiClientService.client.onlineStateFlow val isCompactFlow get() = project.PackageSearchSettingsService.isInfoPanelOpenFlow @@ -78,7 +76,7 @@ class PackageListViewModel( .stateIn(viewModelScope, SharingStarted.Eagerly, emptySet()) val isOnlineSearchEnabledFlow = - combine(listOf(selectedModuleIdsSharedFlow.map { it.size == 1 }, isOnline)) { + combine(listOf(selectedModuleIdsSharedFlow.map { it.size == 1 }, isOnlineFlow)) { it.all { it } } .stateIn(viewModelScope, SharingStarted.WhileSubscribed(), true) @@ -216,7 +214,7 @@ class PackageListViewModel( this.searchQuery = searchQuery packagesType = compatiblePackageTypes }, - apis = IntelliJApplication.PackageSearchApplicationCachesService.apiPackageCache, + apis = IntelliJApplication.PackageSearchApiClientService.client, ).execute() headerCollapsedStatesFlow.update { current -> when (headerId) { @@ -251,7 +249,7 @@ class PackageListViewModel( this.searchQuery = searchQuery this.packagesType = packagesType }, - apis = IntelliJApplication.PackageSearchApplicationCachesService.apiPackageCache, + apis = IntelliJApplication.PackageSearchApiClientService.client, attributes = attributes, primaryVariantName = primaryVariantName, additionalVariants = additionalVariants, @@ -271,7 +269,7 @@ class PackageListViewModel( this.searchQuery = searchQuery this.packagesType = packagesType }, - apis = IntelliJApplication.PackageSearchApplicationCachesService.apiPackageCache, + apis = IntelliJApplication.PackageSearchApiClientService.client, attributes = attributes, primaryVariantName = primaryVariantName, additionalVariants = additionalVariants, @@ -324,16 +322,19 @@ class PackageListViewModel( } } + @Suppress("unused") private suspend fun handle(event: PackageListItemEvent.OnRetryPackageSearch) { restartSearchChannel.send(Unit) } + @Suppress("unused") private fun handle(event: PackageListItemEvent.InfoPanelEvent.OnHeaderVariantsClick) { PackageSearchLogger.logTODO() logFUSEvent(PackageSearchFUSEvent.InfoPanelOpened) } - private suspend fun handle(event: PackageListItemEvent.InfoPanelEvent.OnPackageDoubleClick) { + @Suppress("unused") + private fun handle(event: PackageListItemEvent.InfoPanelEvent.OnPackageDoubleClick) { project.PackageSearchSettingsService.isInfoPanelOpenFlow.value = true logFUSEvent(PackageSearchFUSEvent.InfoPanelOpened) } @@ -663,7 +664,7 @@ class PackageListViewModel( } } - private suspend fun handle(event: PackageListItemEvent.InfoPanelEvent.OnHeaderAttributesClick) { + private fun handle(event: PackageListItemEvent.InfoPanelEvent.OnHeaderAttributesClick) { logFUSEvent(PackageSearchFUSEvent.HeaderAttributesClick(event.eventId is PackageListItem.Header.Id.Remote)) val infoPanelViewModel = project.service() @@ -702,7 +703,7 @@ class PackageListViewModel( } - + @Suppress("unused") private suspend fun handle(event: PackageListItemEvent.EditPackageEvent.SetVariant) { val module = event.eventId .getModule() as? PackageSearchModule.WithVariants diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/Search.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/Search.kt index a343c99b..8f9010ea 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/Search.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/packageslist/Search.kt @@ -1,8 +1,8 @@ package com.jetbrains.packagesearch.plugin.ui.model.packageslist -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApiPackageCache -import com.jetbrains.packagesearch.plugin.utils.suspendSafe +import kotlin.coroutines.cancellation.CancellationException import org.jetbrains.packagesearch.api.v3.ApiPackage +import org.jetbrains.packagesearch.api.v3.http.PackageSearchApiClient import org.jetbrains.packagesearch.api.v3.http.SearchPackagesRequest sealed interface Search { @@ -16,13 +16,13 @@ sealed interface Search { sealed interface Query : Search { val query: SearchPackagesRequest - val apis: PackageSearchApiPackageCache + val apis: PackageSearchApiClient suspend fun execute(): Response data class Base( override val query: SearchPackagesRequest, - override val apis: PackageSearchApiPackageCache, + override val apis: PackageSearchApiClient, ) : Query { override suspend fun execute(): Response.Base { val searchResult = @@ -37,7 +37,7 @@ sealed interface Search { data class WithVariants( override val query: SearchPackagesRequest, - override val apis: PackageSearchApiPackageCache, + override val apis: PackageSearchApiClient, override val attributes: List, override val primaryVariantName: String, override val additionalVariants: List, @@ -85,4 +85,6 @@ sealed interface Search { } } -} \ No newline at end of file +} + +fun Result.suspendSafe() = onFailure { if (it is CancellationException) throw it } \ No newline at end of file diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/tree/TreeViewModel.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/tree/TreeViewModel.kt index af31f277..48c2696d 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/tree/TreeViewModel.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/model/tree/TreeViewModel.kt @@ -6,7 +6,7 @@ import com.intellij.openapi.components.Service.Level import com.intellij.openapi.project.Project import com.jetbrains.packagesearch.plugin.core.data.PackageSearchModule import com.jetbrains.packagesearch.plugin.core.utils.IntelliJApplication -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApplicationCachesService +import com.jetbrains.packagesearch.plugin.utils.PackageSearchApiClientService import com.jetbrains.packagesearch.plugin.utils.PackageSearchLogger import com.jetbrains.packagesearch.plugin.utils.PackageSearchProjectService import com.jetbrains.packagesearch.plugin.utils.PackageSearchSettingsService @@ -52,7 +52,7 @@ internal class TreeViewModel( internal val treeState = TreeState(SelectableLazyListState(lazyListState)) val isOnline - get() = IntelliJApplication.PackageSearchApplicationCachesService.isOnlineFlow + get() = IntelliJApplication.PackageSearchApiClientService.client.onlineStateFlow fun expandAll() { treeState.openNodes = treeStateFlow.value.walkBreadthFirst().map { it.id }.toSet() diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchCentralPanel.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchCentralPanel.kt index 7d11c0b0..041f9b3b 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchCentralPanel.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchCentralPanel.kt @@ -45,8 +45,8 @@ fun PackageSearchCentralPanel( onPackageEvent = viewModel::onPackageListItemEvent, ) VerticalScrollbar( - adapter = rememberScrollbarAdapter(scrollState = viewModel.selectableLazyListState.lazyListState), modifier = Modifier.fillMaxHeight().align(Alignment.CenterEnd), + scrollState = viewModel.selectableLazyListState.lazyListState, ) } } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchPackageList.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchPackageList.kt index 972a41b1..69649db7 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchPackageList.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/packages/PackageSearchPackageList.kt @@ -23,6 +23,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -32,6 +33,7 @@ import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import com.intellij.icons.AllIcons +import com.intellij.openapi.externalSystem.service.ui.completion.collector.TextCompletionCollector.Companion.async import com.jetbrains.packagesearch.plugin.PackageSearchBundle.message import com.jetbrains.packagesearch.plugin.core.data.IconProvider import com.jetbrains.packagesearch.plugin.ui.LearnMoreLink @@ -49,21 +51,7 @@ import com.jetbrains.packagesearch.plugin.ui.model.packageslist.PackageListItemE import com.jetbrains.packagesearch.plugin.ui.model.packageslist.PackageListItemEvent.OnPackageAction.Install import com.jetbrains.packagesearch.plugin.ui.model.packageslist.PackageListItemEvent.OnPackageAction.Remove import com.jetbrains.packagesearch.plugin.ui.panels.packages.items.PackageListHeader -import java.net.Socket -import kotlinx.coroutines.CancellationException -import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.Job -import kotlinx.coroutines.channels.Channel -import kotlinx.coroutines.coroutineScope -import kotlinx.coroutines.flow.SharingStarted -import kotlinx.coroutines.flow.consumeAsFlow -import kotlinx.coroutines.flow.shareIn -import kotlinx.coroutines.launch -import kotlinx.coroutines.yield -import kotlinx.serialization.decodeFromByteArray -import kotlinx.serialization.encodeToByteArray -import kotlinx.serialization.protobuf.ProtoBuf +import kotlinx.coroutines.awaitAll import org.jetbrains.jewel.foundation.lazy.SelectableLazyColumn import org.jetbrains.jewel.foundation.lazy.SelectableLazyItemScope import org.jetbrains.jewel.foundation.lazy.SelectableLazyListState @@ -76,6 +64,9 @@ import org.jetbrains.jewel.ui.component.Icon import org.jetbrains.jewel.ui.component.Link import org.jetbrains.jewel.ui.component.Text import org.jetbrains.jewel.ui.component.styling.LocalLazyTreeStyle +import org.jetbrains.jewel.ui.icon.PathIconKey +import org.jetbrains.jewel.ui.icons.AllIconsKeys +import org.jetbrains.jewel.ui.painter.PainterHint @Composable fun PackageSearchPackageList( @@ -336,12 +327,14 @@ private fun RowScope.PackageTitle(item: PackageListItem.Package) { modifier = Modifier.weight(2f, fill = true), horizontalArrangement = Arrangement.spacedBy(8.dp), ) { + val iconPath = if (JewelTheme.isDark) item.icon.darkIconPath else item.icon.lightIconPath Icon( - resource = if (JewelTheme.isDark) item.icon.darkIconPath else item.icon.lightIconPath, + key = PathIconKey(iconPath, IconProvider::class.java), modifier = Modifier.size(16.dp), contentDescription = null, - iconClass = IconProvider::class.java + hint = PainterHint.None ) + Text(text = item.title, maxLines = 1, overflow = TextOverflow.Ellipsis) LabelInfo(text = item.subtitle, maxLines = 1, overflow = TextOverflow.Ellipsis) } @@ -425,9 +418,8 @@ internal fun DeclaredPackageActionPopup( ) { Row(horizontalArrangement = Arrangement.spacedBy(8.dp)) { Icon( - resource = "expui/general/delete.svg", + key = AllIconsKeys.Actions.GC, contentDescription = null, - iconClass = AllIcons::class.java, ) Text(text = message("packagesearch.ui.toolwindow.packages.actions.remove")) } @@ -441,9 +433,8 @@ internal fun DeclaredPackageActionPopup( ) { Row(horizontalArrangement = Arrangement.spacedBy(8.dp)) { Icon( - resource = "actions/edit.svg", + key = AllIconsKeys.Actions.Edit, contentDescription = null, - iconClass = AllIcons::class.java, ) Text(text = message("packagesearch.ui.toolwindow.packages.actions.gotToSource")) } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/side/PackageSearchInfoPanel.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/side/PackageSearchInfoPanel.kt index 320eff28..e04217c2 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/side/PackageSearchInfoPanel.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/side/PackageSearchInfoPanel.kt @@ -26,6 +26,8 @@ import org.jetbrains.jewel.ui.component.SimpleTabContent import org.jetbrains.jewel.ui.component.TabData import org.jetbrains.jewel.ui.component.TabStrip import org.jetbrains.jewel.ui.component.VerticalScrollbar +import org.jetbrains.jewel.ui.component.styling.LocalDefaultTabStyle +import org.jetbrains.jewel.ui.component.styling.LocalEditorTabStyle @Composable fun PackageSearchInfoPanel( @@ -43,6 +45,7 @@ fun PackageSearchInfoPanel( else -> Column(modifier = Modifier.fillMaxSize()) { TabStrip( modifier = Modifier.fillMaxWidth(), + style = LocalDefaultTabStyle.current, tabs = tabs.map { infoPanelContent -> TabData.Default( selected = activeTabTitle == infoPanelContent.tabTitleData.tabTitle, @@ -85,8 +88,8 @@ fun PackageSearchInfoPanel( } } VerticalScrollbar( - adapter = rememberScrollbarAdapter(scrollState = viewModel.scrollState), modifier = Modifier.fillMaxHeight().align(Alignment.CenterEnd), + scrollState = viewModel.scrollState, ) } } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/tree/PackageSearchModulesTree.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/tree/PackageSearchModulesTree.kt index 262bd474..f3aa3fc5 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/tree/PackageSearchModulesTree.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/ui/panels/tree/PackageSearchModulesTree.kt @@ -96,9 +96,10 @@ fun PackageSearchModulesTree( TreeItem(item) } VerticalScrollbar( - adapter = rememberScrollbarAdapter(scrollState = viewModel.lazyListState), modifier = Modifier.fillMaxHeight().align(Alignment.CenterEnd), + scrollState = viewModel.lazyListState, ) + } diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Services.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Services.kt index 4a9c95cf..6c96b8e2 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Services.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Services.kt @@ -5,14 +5,14 @@ import com.intellij.openapi.components.service import com.intellij.openapi.project.Project import com.jetbrains.packagesearch.plugin.core.utils.IntelliJApplication import com.jetbrains.packagesearch.plugin.fus.PackageSearchFUSEvent -import com.jetbrains.packagesearch.plugin.services.PackageSearchApplicationCachesService import com.jetbrains.packagesearch.plugin.services.PackageSearchFUSService import com.jetbrains.packagesearch.plugin.services.PackageSearchProjectService import com.jetbrains.packagesearch.plugin.services.PackageSearchSettingsService +import org.jetbrains.idea.packagesearch.api.PackageSearchApiClientService -val Application.PackageSearchApplicationCachesService - get() = service() +val Application.PackageSearchApiClientService + get() = service< PackageSearchApiClientService>() val Project.PackageSearchProjectService get() = service() diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils.kt index 77933045..df21e1a7 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils.kt @@ -2,8 +2,6 @@ package com.jetbrains.packagesearch.plugin.utils -import androidx.compose.runtime.Composable -import androidx.compose.runtime.collectAsState import com.intellij.openapi.module.Module import com.intellij.openapi.module.ModuleManager import com.intellij.openapi.project.ModuleListener @@ -21,8 +19,6 @@ import kotlinx.coroutines.flow.FlowCollector import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.flow import kotlinx.coroutines.flow.onStart -import org.jetbrains.packagesearch.api.v3.search.SearchParametersBuilder -import org.jetbrains.packagesearch.api.v3.search.buildSearchParameters // keep the type explicit, otherwise the Kotlin plugin breaks internal val Project.nativeModules: List @@ -49,31 +45,16 @@ internal val Project.nativeModulesFlow: FlowWithInitialValue> } }.withInitialValue(nativeModules) -fun interval( - interval: Duration, - emitOnStart: Boolean = false, -) = flow { - if (emitOnStart) { - emit(Unit) - } - while (true) { - delay(interval) - emit(Unit) - } -} - typealias NativeModules = List typealias NativeModule = Module fun Flow.startWithNull() = onStart { emit(null) } -@Suppress("FunctionName") +@Suppress("FunctionName", "unused") fun KtorDebugLogger() = object : Logger { override fun log(message: String) = PackageSearchLogger.logDebug(message = message) } -suspend fun PackageSearchApiPackageCache.searchPackages(builder: SearchParametersBuilder.() -> Unit) = - searchPackages(buildSearchParameters(builder)) /** * Returns a [Flow] whose values are generated by [transform] function that process the most recently emitted values by each flow. diff --git a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/WindowedModuleBuilderContext.kt b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/WindowedModuleBuilderContext.kt index 6a5d5241..4539c28a 100644 --- a/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/WindowedModuleBuilderContext.kt +++ b/plugin/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/WindowedModuleBuilderContext.kt @@ -27,11 +27,12 @@ import kotlinx.coroutines.sync.Mutex import kotlinx.coroutines.sync.withLock import org.jetbrains.packagesearch.api.v3.ApiPackage import org.jetbrains.packagesearch.api.v3.ApiRepository +import org.jetbrains.packagesearch.api.v3.http.PackageSearchApiClient class WindowedModuleBuilderContext( override val project: Project, private val knownRepositoriesGetter: () -> Map, - private val packagesCache: PackageSearchApiPackageCache, + private val packageSearchApiClient: PackageSearchApiClient, override val coroutineScope: CoroutineScope, ) : PackageSearchModuleBuilderContext { @@ -41,10 +42,10 @@ class WindowedModuleBuilderContext( private val idRequestsChannel = Channel() private val hashRequestsChannel = Channel() private val idResultsFlow = idRequestsChannel - .responseFlow("idResultsFlow") { packagesCache.getPackageInfoByIds(it) } + .responseFlow("idResultsFlow") { packageSearchApiClient.getPackageInfoByIds(it) } private val hashResultsFlow = hashRequestsChannel - .responseFlow("hashResultsFlow") { packagesCache.getPackageInfoByIdHashes(it) } + .responseFlow("hashResultsFlow") { packageSearchApiClient.getPackageInfoByIdHashes(it) } override suspend fun getPackageInfoByIds(packageIds: Set) = idResultsFlow.awaitResponse(packageIds, idRequestsChannel) diff --git a/plugin/src/main/resources/META-INF/plugin.xml b/plugin/src/main/resources/META-INF/plugin.xml index c92cd9b7..d381406e 100644 --- a/plugin/src/main/resources/META-INF/plugin.xml +++ b/plugin/src/main/resources/META-INF/plugin.xml @@ -30,13 +30,11 @@ Supports Maven and Gradle projects. - , - val searchHash: String, - val original: SearchPackagesRequest, - @SerialName("_id") val id: String? = null, - val lastUpdate: Instant = Clock.System.now(), -) { - override fun toString() = buildString { - append("ApiSearchCacheEntry(") - append("query=${original.searchQuery}, ") - append("lastUpdate=$lastUpdate") - append(")") - } -} - -@Serializable -data class ApiRepositoryCacheEntry( - val data: List, - @SerialName("_id") val id: String? = null, - val lastUpdate: Instant = Clock.System.now(), -) { - override fun toString() = buildString { - append("ApiRepositoryCacheEntry(") - append("lastUpdate=$lastUpdate") - append(")") - } - -} - -fun ApiPackage.asCacheEntry() = ApiPackageCacheEntry(this, id, idHash) \ No newline at end of file diff --git a/plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/PackageSearchApiPackageCache.kt b/plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/PackageSearchApiPackageCache.kt deleted file mode 100644 index 673fade9..00000000 --- a/plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/PackageSearchApiPackageCache.kt +++ /dev/null @@ -1,169 +0,0 @@ -package com.jetbrains.packagesearch.plugin.utils - -import korlibs.crypto.SHA256 -import kotlin.random.Random -import kotlin.time.Duration -import kotlin.time.Duration.Companion.hours -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.withContext -import kotlinx.datetime.Clock -import kotlinx.serialization.encodeToString -import kotlinx.serialization.json.Json -import org.dizitart.kno2.filters.eq -import org.dizitart.no2.collection.UpdateOptions -import org.dizitart.no2.filters.FluentFilter -import org.dizitart.no2.repository.ObjectRepository -import org.jetbrains.packagesearch.api.v3.ApiPackage -import org.jetbrains.packagesearch.api.v3.ApiRepository -import org.jetbrains.packagesearch.api.v3.http.PackageSearchApiClient -import org.jetbrains.packagesearch.api.v3.http.RefreshPackagesInfoRequest -import org.jetbrains.packagesearch.api.v3.http.SearchPackagesRequest - - -class PackageSearchApiPackageCache( - private val apiPackageCache: ObjectRepository, - private val searchCache: ObjectRepository, - private val repositoryCache: ObjectRepository, - private val apiClient: PackageSearchApiClient, - private val maxAge: Duration = Random.nextDuration(24.hours, 26.hours), - private val logger: PluginLogger, - private val isOnline: () -> Boolean, -) { - - private suspend fun getPackages( - ids: Set, - useHash: Boolean, - ): Map { - val contextName = "${this::class.simpleName}#getPackages | ${Random.nextInt(0, 1000)}, useHash: $useHash" - val field = when { - useHash -> ApiPackageCacheEntry::packageIdHash - else -> ApiPackageCacheEntry::packageId - } - logger.logDebug(contextName) { "Fetching packages | ids = $ids" } - val query = FluentFilter.where(field.name).`in`(ids) - val knownPackageCacheEntries = withContext(Dispatchers.IO) { apiPackageCache.find(query).toList() } - logger.logDebug(contextName) { "Retrieved ${knownPackageCacheEntries.size} known packages from the cache | ids = $ids" } - val knownPackagesMap = knownPackageCacheEntries - .mapNotNull { it.data } - .associateBy { it.id } - - if (!isOnline()) { - logger.logDebug(contextName) { "Returning known packages from the cache because the device is offline | ids = $ids" } - return knownPackagesMap - } - - val staleIds = knownPackageCacheEntries - .filter { it.lastUpdated + maxAge < Clock.System.now() } - .mapNotNull { it.packageIdHash } - .toSet() - - logger.logDebug(contextName) { "Stale ids.size: ${staleIds.size}" } - - val toFetch = ids.hashIfNeeded(useHash) - knownPackageCacheEntries.getIds(true) + staleIds - if (toFetch.isEmpty()) { - return knownPackagesMap - } - logger.logDebug(contextName) { "To fetch ids.size: ${toFetch.size}" } - val cacheRequests = toFetch.map { - RefreshPackagesInfoRequest.CacheRequest( - packageIdHash = it, - latestKnownVersion = knownPackagesMap[it]?.versions?.latest?.normalized?.versionName - ) - } - val refreshedPackages = - kotlin.runCatching { apiClient.refreshPackagesInfo(RefreshPackagesInfoRequest(cacheRequests)) } - .suspendSafe() - .onFailure { logger.logDebug(contextName, it) { "Error while refreshing packages." } } - .getOrDefault(emptyList()) - .associateBy { it.id } - - if (refreshedPackages.isEmpty()) { - logger.logDebug(contextName) { "No packages were fetched from the server | ids = $ids" } - return knownPackagesMap - } - - refreshedPackages.values.forEach { - logger.logDebug(contextName) { "Refreshing cache with id:${it.id}" } - apiPackageCache.update( - /* filter = */ ApiPackageCacheEntry::packageId eq it.id, - /* update = */ it.asCacheEntry(), - UpdateOptions.updateOptions(true) - ) - } - - logger.logDebug(contextName) { "Fetched ${refreshedPackages.size} packages from the server | ids = $ids" } - val unknownIds = ids - knownPackagesMap.getIds(useHash) - refreshedPackages.getIds(useHash) - logger.logDebug(contextName) { "Unknown ids.size: ${unknownIds.size}" } - unknownIds.forEach { id -> - when { - useHash -> apiPackageCache.update( - /* filter = */ ApiPackageCacheEntry::packageIdHash eq id, - /* update = */ ApiPackageCacheEntry(packageIdHash = id), - /* updateOptions = */ UpdateOptions.updateOptions(true) - ) - - else -> apiPackageCache.update( - /* filter = */ ApiPackageCacheEntry::packageId eq id, - /* update = */ ApiPackageCacheEntry(packageId = id), - /* updateOptions = */ UpdateOptions.updateOptions(true) - ) - } - } - return knownPackagesMap + refreshedPackages - } - - suspend fun getPackageInfoByIds(ids: Set): Map = - getPackages(ids = ids, useHash = false) - - suspend fun getPackageInfoByIdHashes(ids: Set): Map = - getPackages(ids = ids, useHash = true) - - suspend fun searchPackages( - request: SearchPackagesRequest, - ): List { - val sha = SHA256.digest(Json.encodeToString(request).toByteArray()).base64 - val contextName = "${Random.nextInt()} | ${this::class}#searchPackages" - logger.logDebug(contextName) { "Searching for packages | searchSha = $sha" } - val cachedEntry = withContext(Dispatchers.IO) { - searchCache.find(ApiSearchCacheEntry::searchHash eq sha) - .singleOrNull() - } - if (cachedEntry != null) { - val isOffline = !isOnline() - val isCacheValid = cachedEntry.lastUpdate + maxAge > Clock.System.now() - if (isOffline || isCacheValid) { - logger.logDebug(contextName) { - "Using cached search results because `isOffline = $isOffline || isCacheValid = $isCacheValid` | searchSha = $sha" - } - return cachedEntry.packages - } - searchCache.remove(ApiSearchCacheEntry::searchHash eq sha) - } - logger.logDebug(contextName) { "Fetching search results from the server | searchSha = $sha" } - return apiClient.searchPackages(request) - .also { searchCache.insert(ApiSearchCacheEntry(it, sha, request)) } - } - - suspend fun getKnownRepositories(): List { - val cached = withContext(Dispatchers.IO) { repositoryCache.find().singleOrNull() } - val isOnlineStatus = isOnline() - if (cached != null && (Clock.System.now() < cached.lastUpdate + maxAge || !isOnlineStatus)) { - return cached.data - } - return when { - isOnlineStatus -> runCatching { apiClient.getKnownRepositories() } - .suspendSafe() - .onSuccess { - repositoryCache.clear() - repositoryCache.insert(ApiRepositoryCacheEntry(it)) - } - .getOrDefault(cached?.data ?: emptyList()) - - else -> emptyList() - } - } - -} - -private inline fun > FluentFilter.`in`(ids: Iterable) = - `in`(*ids.toList().toTypedArray()) diff --git a/plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils2.kt b/plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils2.kt deleted file mode 100644 index 41adef89..00000000 --- a/plugin/utils/src/main/kotlin/com/jetbrains/packagesearch/plugin/utils/Utils2.kt +++ /dev/null @@ -1,32 +0,0 @@ -package com.jetbrains.packagesearch.plugin.utils - -import kotlin.coroutines.cancellation.CancellationException -import kotlin.random.Random -import kotlin.time.Duration -import kotlin.time.Duration.Companion.minutes -import org.jetbrains.packagesearch.api.v3.ApiPackage - -internal fun Map.getIds(useHash: Boolean) = map { - when { - useHash -> it.value.idHash - else -> it.value.id - } -}.toSet() - -internal fun List.getIds(useHash: Boolean) = mapNotNull { - when { - useHash -> it.packageIdHash - else -> it.packageId - } -}.toSet() - -internal fun Iterable.hashIfNeeded(useHash: Boolean) = - if (!useHash) map { ApiPackage.hashPackageId(it) } else toList() - -internal fun Random.Default.nextDuration(start: Duration, end: Duration): Duration { - require(start < end) { "Start duration must be less than end duration" } - val interval = end - start - return nextLong(interval.inWholeMinutes).minutes + start -} - -fun Result.suspendSafe() = onFailure { if (it is CancellationException) throw it } \ No newline at end of file diff --git a/plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/CachesTest.kt b/plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/CachesTest.kt deleted file mode 100644 index ec5c4c64..00000000 --- a/plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/CachesTest.kt +++ /dev/null @@ -1,175 +0,0 @@ -package com.jetbrains.packagesearch.plugin.tests.unit - -import assertk.assertThat -import assertk.assertions.isEqualTo -import assertk.assertions.size -import com.jetbrains.packagesearch.plugin.utils.ApiPackageCacheEntry -import com.jetbrains.packagesearch.plugin.utils.ApiRepositoryCacheEntry -import com.jetbrains.packagesearch.plugin.utils.ApiSearchCacheEntry -import com.jetbrains.packagesearch.plugin.utils.PackageSearchApiPackageCache -import com.jetbrains.packagesearch.plugin.utils.asCacheEntry -import io.ktor.client.engine.mock.MockEngine -import io.ktor.client.engine.mock.MockRequestHandleScope -import io.ktor.client.request.HttpRequestData -import io.ktor.client.request.HttpResponseData -import kotlin.io.path.Path -import kotlin.io.path.absolutePathString -import kotlin.io.path.createParentDirectories -import kotlin.test.Test -import kotlin.time.Duration -import kotlin.time.Duration.Companion.hours -import kotlinx.coroutines.test.runTest -import kotlinx.serialization.json.Json -import kotlinx.serialization.json.decodeFromStream -import org.dizitart.kno2.getRepository -import org.dizitart.kno2.insert -import org.dizitart.kno2.loadModule -import org.dizitart.kno2.nitrite -import org.dizitart.kno2.serialization.KotlinXSerializationMapper -import org.dizitart.no2.mvstore.MVStoreModule -import org.jetbrains.packagesearch.api.v3.ApiPackage -import org.jetbrains.packagesearch.api.v3.http.PackageSearchApiClient -import org.jetbrains.packagesearch.api.v3.http.PackageSearchEndpoints -import org.junit.jupiter.api.AfterEach -import org.junit.jupiter.api.BeforeEach - -class CachesTest { - - val localCachesDbPath - get() = Path(System.getenv("CACHES"), "local-caches.db") - - private val db = nitrite { - validateRepositories = false - loadModule(KotlinXSerializationMapper) - loadModule( - MVStoreModule.withConfig() - .filePath( - localCachesDbPath - .createParentDirectories() - .absolutePathString() - ) - .build() - ) - } - - val apiPackageCaches - get() = db.getRepository("apiPackageCache") - - val searchCaches - get() = db.getRepository("searchCache") - - val repositoryCaches - get() = db.getRepository("apiRepositoryCache") - - fun getCache( - isOnline: Boolean = true, - maxAge: Duration = 1.hours, - engine: suspend MockRequestHandleScope.(HttpRequestData) -> HttpResponseData = { handleHttpRequest(it) }, - ) = - PackageSearchApiPackageCache( - apiPackageCache = apiPackageCaches, - searchCache = searchCaches, - repositoryCache = repositoryCaches, - apiClient = PackageSearchApiClient( - endpoints = PackageSearchEndpoints.DEFAULT, - httpClient = PackageSearchApiClient.defaultHttpClient(MockEngine(engine)) - ), - maxAge = maxAge, - logger = TestLogger, - isOnline = { isOnline } - ) - - suspend fun getTestPackageIds() = - getTestPackages() - .map { it.id } - .toSet() - - private suspend fun getTestPackages() = - Json.decodeFromStream>(getResource("/mock/responses/package_info.json")) - - @BeforeEach - fun setup() = runTest { - apiPackageCaches.clear() - searchCaches.clear() - repositoryCaches.clear() - } - - @AfterEach - fun tearDown() { - db.close() - } - - @Test - fun `assert packages being cached`() = runTest { - val cache = getCache() - val packages = cache.getPackageInfoByIds(getTestPackageIds()) - assertThat(packages) - .size() - .isEqualTo(3) - - val cachedPackages = apiPackageCaches.find().toList() - assertThat(cachedPackages) - .size() - .isEqualTo(3) - - } - - @Test - fun `assert that http requests are not repeated`() = runTest { - var requestCount = 0 - val cache = getCache { - requestCount++ - handleHttpRequest(it) - } - - cache.getPackageInfoByIds(getTestPackageIds()) - cache.getPackageInfoByIds(getTestPackageIds()) - - assertThat(requestCount).isEqualTo(1) - } - - @Test - fun `assert that http requests are repeated when cache is invalidated`() = runTest { - var requestCount = 0 - val cache = getCache( - maxAge = Duration.ZERO, - engine = { - requestCount++ - handleHttpRequest(it) - } - ) - - cache.getPackageInfoByIds(getTestPackageIds()) - cache.getPackageInfoByIds(getTestPackageIds()) - - assertThat(requestCount).isEqualTo(2) - } - - @Test - fun `assert that no http calls are made when offline`() = runTest { - var requestCount = 0 - val cache = getCache(isOnline = false) { - requestCount++ - handleHttpRequest(it) - } - - val packages = cache.getPackageInfoByIds(getTestPackageIds()) - - assertThat(requestCount).isEqualTo(0) - assertThat(packages) - .size() - .isEqualTo(0) - } - - @Test - fun `assert that local caches are used when offline`() = runTest { - val cache = getCache(isOnline = false) - apiPackageCaches.insert(getTestPackages().map { it.asCacheEntry() }) - val packages = cache.getPackageInfoByIds(getTestPackageIds()) - - assertThat(packages) - .size() - .isEqualTo(3) - } -} - diff --git a/plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/TestUtils.kt b/plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/TestUtils.kt deleted file mode 100644 index e20f92f0..00000000 --- a/plugin/utils/src/test/kotlin/com/jetbrains/packagesearch/plugin/tests/unit/TestUtils.kt +++ /dev/null @@ -1,30 +0,0 @@ -package com.jetbrains.packagesearch.plugin.tests.unit - -import io.ktor.client.engine.mock.MockRequestHandleScope -import io.ktor.client.engine.mock.respond -import io.ktor.client.request.HttpRequestData -import io.ktor.http.ContentType -import io.ktor.http.HttpHeaders -import io.ktor.http.headersOf -import io.ktor.utils.io.jvm.javaio.toByteReadChannel -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.withContext -import org.jetbrains.packagesearch.api.v3.http.PackageSearchEndpointPaths - -suspend fun getResource(resource: String) = withContext(Dispatchers.IO) { - CachesTest::class.java.getResourceAsStream(resource) - ?: error("Resource not found: $resource") -} - -suspend fun MockRequestHandleScope.handleHttpRequest(it: HttpRequestData) = - when (it.url.pathSegments.filterNot { it.isBlank() }.first()) { - PackageSearchEndpointPaths.packageInfoByIds, PackageSearchEndpointPaths.packageInfoByIdHashes, PackageSearchEndpointPaths.refreshPackagesInfo -> - respondJson("/mock/responses/package_info.json") - - else -> error("Unhandled ${it.url}") - } - -suspend fun MockRequestHandleScope.respondJson(resourcePath: String) = respond( - content = getResource(resourcePath).toByteReadChannel(), - headers = headersOf(HttpHeaders.ContentType, ContentType.Application.Json.toString()) -) \ No newline at end of file diff --git a/plugin/utils/src/test/resources/logback.xml b/plugin/utils/src/test/resources/logback.xml deleted file mode 100644 index 4283c35d..00000000 --- a/plugin/utils/src/test/resources/logback.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/plugin/utils/src/test/resources/mock/responses/package_info.json b/plugin/utils/src/test/resources/mock/responses/package_info.json deleted file mode 100644 index 3f30df28..00000000 --- a/plugin/utils/src/test/resources/mock/responses/package_info.json +++ /dev/null @@ -1,20465 +0,0 @@ -[ - { - "type": "maven", - "id": "maven:io.ktor:ktor-client-core", - "idHash": "6d2eceeb52da1da9817f4fb83d0c8a98173960f3690eb65206b606ad14b2f1d1", - "rankingMetric": 0.5113194418722041, - "versions": { - "latestStable": { - "type": "gradleVersion", - "normalized": { - "type": "semantic", - "versionName": "2.3.11", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ], - "vulnerability": { - "isVulnerable": false, - "issues": null - }, - "dependencies": [ - { - "groupId": "org.jetbrains.kotlinx", - "artifactId": "kotlinx-coroutines-core", - "version": "1.7.1", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-http", - "version": "2.3.11", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-events", - "version": "2.3.11", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-websocket-serialization", - "version": "2.3.11", - "scope": "runtime" - }, - { - "groupId": "org.jetbrains.kotlin", - "artifactId": "kotlin-stdlib-common", - "version": "1.8.22", - "scope": "runtime" - }, - { - "groupId": "org.jetbrains.kotlinx", - "artifactId": "atomicfu", - "version": "0.19.0", - "scope": "runtime" - } - ], - "artifacts": [ - { - "name": "ktor-client-core-2.3.11-kotlin-tooling-metadata.json", - "md5": "33481d030d7ab3acaa041c6d343935c5", - "sha1": "951d8aa56d8938e65ade0c3c5d5d3c164293ef6d", - "sha256": "babe8d852f311fb3d5a1b3c52597089f2433e735646b0b0fa4ea06afcae40736", - "sha512": "ac5064b3e5bac864feea11fb0b1feca20129832cc92982e4d798439f12d4f12f4f427c8d056499d638b1d964a26c23f4adbf6d64e24964583615e7f8681f3273" - }, - { - "name": "ktor-client-core-2.3.11-sources.jar", - "md5": "8015b0f681fa13694f3d999b7b56b045", - "sha1": "e395ae26f73172f8f0957624f857e704fc34bfa0", - "sha256": "1535d4e2e0f3e72364d2e49b31519a0f11c9298e2e55b4a78514c8fe28ae9587", - "sha512": null - }, - { - "name": "ktor-client-core-2.3.11.jar", - "md5": "1ac8c8b8e3e20de8dd4e1b83c838a11a", - "sha1": "b4f75ab2bce9d3788efdeb557a39611f072f7a4b", - "sha256": "13f9d5ec238aa8da17f2c080500d068a963a38a31a16415097b840e5f8c3bff6", - "sha512": "37af55d9adba953c6e09988a0fe0d9afbb8930efb52c0c011aaea062e4c1594a60e14d64ebafa96bf6f1c0478db8021002a08e69a7517ef1a884bc8179811562" - }, - { - "name": "ktor-client-core-2.3.11.module", - "md5": "f7d7fb9816aa4d205148e7078459b36c", - "sha1": "2599e1c47483f3092dc620350232a711eddaee9a", - "sha256": "127d461a2d17da56605c27f2d266d25317dfac558cdbb230dd17526685d032d6", - "sha512": "20ca7caa5f3cf6e32bd6799a355627e22ba401d59a4aed94dc5919ec84304a1e159fd85dca5d645a6edd1b938a4a6c91f85586b3650a5cb19171044c8eee7530" - }, - { - "name": "ktor-client-core-2.3.11.pom", - "md5": "96a019035c9220e57f2fb1f63af7eaad", - "sha1": "2bcecf049f58dc75158a3354f916b4787b797f21", - "sha256": "140647469a3b0e9aa399e54199084e64f1d8a608e13ba7ba7cc535acf1681857", - "sha512": "73d7c0663e212f58072757d65fa64e9fa587ecb7426481508952ff2e4b4aebff5b62f076b9ee14e79e47c1d9d4a27c6c59bdadf0db32355d264019c2771151ea" - } - ], - "name": "ktor-client-core", - "description": "Ktor is a framework for quickly creating web applications in Kotlin with minimal effort.", - "authors": [ - { - "name": "JetBrains Team", - "email": "", - "org": "JetBrains", - "orgUrl": null - } - ], - "scmUrl": "https://github.com/ktorio/ktor.git", - "variants": [ - { - "type": "withFiles", - "name": "metadataApiElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "common" - } - }, - "dependencies": [ - { - "group": "org.jetbrains.kotlinx", - "module": "kotlinx-coroutines-core", - "version": "1.7.1" - }, - { - "group": "io.ktor", - "module": "ktor-http", - "version": "2.3.11" - }, - { - "group": "io.ktor", - "module": "ktor-events", - "version": "2.3.11" - }, - { - "group": "io.ktor", - "module": "ktor-websocket-serialization", - "version": "2.3.11" - }, - { - "group": "org.jetbrains.kotlin", - "module": "kotlin-stdlib-common", - "version": "1.8.22" - }, - { - "group": "org.jetbrains.kotlinx", - "module": "atomicfu", - "version": "0.19.0" - } - ], - "files": [ - { - "name": "ktor-client-core-metadata-2.3.11.jar", - "url": "ktor-client-core-2.3.11.jar", - "size": 58970, - "sha1": "b4f75ab2bce9d3788efdeb557a39611f072f7a4b", - "md5": "1ac8c8b8e3e20de8dd4e1b83c838a11a", - "sha256": "13f9d5ec238aa8da17f2c080500d068a963a38a31a16415097b840e5f8c3bff6", - "sha512": "37af55d9adba953c6e09988a0fe0d9afbb8930efb52c0c011aaea062e4c1594a60e14d64ebafa96bf6f1c0478db8021002a08e69a7517ef1a884bc8179811562" - } - ] - }, - { - "type": "withFiles", - "name": "metadataSourcesElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "common" - } - }, - "dependencies": [], - "files": [ - { - "name": "ktor-client-core-kotlin-2.3.11-sources.jar", - "url": "ktor-client-core-2.3.11-sources.jar", - "size": 103559, - "sha1": "e395ae26f73172f8f0957624f857e704fc34bfa0", - "md5": "8015b0f681fa13694f3d999b7b56b045", - "sha256": "1535d4e2e0f3e72364d2e49b31519a0f11c9298e2e55b4a78514c8fe28ae9587", - "sha512": "198f29ed507f21b729dd2a7996fc11e2250a775ebad504f450014b6a51ea21992784162ad7cb6e816e93cfc26bd66d09fa92d80162e700f995637c2191a02f02" - } - ] - }, - { - "type": "withAvailableAt", - "name": "iosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosarm64/2.3.11/ktor-client-core-iosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosarm64/2.3.11/ktor-client-core-iosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosarm64/2.3.11/ktor-client-core-iosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosSimulatorArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iossimulatorarm64/2.3.11/ktor-client-core-iossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosSimulatorArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iossimulatorarm64/2.3.11/ktor-client-core-iossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosSimulatorArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iossimulatorarm64/2.3.11/ktor-client-core-iossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosx64/2.3.11/ktor-client-core-iosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosx64/2.3.11/ktor-client-core-iosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "iosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosx64/2.3.11/ktor-client-core-iosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-iosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "jsApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.js.compiler": { - "type": "exactMatch", - "value": "ir" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "js" - } - }, - "available-at": { - "url": "../../ktor-client-core-js/2.3.11/ktor-client-core-js-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-js", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "jsRuntimeElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.js.compiler": { - "type": "exactMatch", - "value": "ir" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "js" - } - }, - "available-at": { - "url": "../../ktor-client-core-js/2.3.11/ktor-client-core-js-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-js", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "jsSourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.js.compiler": { - "type": "exactMatch", - "value": "ir" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "js" - } - }, - "available-at": { - "url": "../../ktor-client-core-js/2.3.11/ktor-client-core-js-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-js", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "jvmApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-api" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "jvm" - } - }, - "available-at": { - "url": "../../ktor-client-core-jvm/2.3.11/ktor-client-core-jvm-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-jvm", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "jvmRuntimeElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-runtime" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "jvm" - } - }, - "available-at": { - "url": "../../ktor-client-core-jvm/2.3.11/ktor-client-core-jvm-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-jvm", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "jvmSourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-runtime" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "jvm" - } - }, - "available-at": { - "url": "../../ktor-client-core-jvm/2.3.11/ktor-client-core-jvm-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-jvm", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "linuxArm64ApiElements-published", - "attributes": { - "artifactType": { - "type": "exactMatch", - "value": "org.jetbrains.kotlin.klib" - }, - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxarm64/2.3.11/ktor-client-core-linuxarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "linuxArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxarm64/2.3.11/ktor-client-core-linuxarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "linuxX64ApiElements-published", - "attributes": { - "artifactType": { - "type": "exactMatch", - "value": "org.jetbrains.kotlin.klib" - }, - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxx64/2.3.11/ktor-client-core-linuxx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "linuxX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxx64/2.3.11/ktor-client-core-linuxx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "macosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosarm64/2.3.11/ktor-client-core-macosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-macosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "macosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosarm64/2.3.11/ktor-client-core-macosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-macosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "macosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosarm64/2.3.11/ktor-client-core-macosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-macosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "macosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosx64/2.3.11/ktor-client-core-macosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-macosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "macosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosx64/2.3.11/ktor-client-core-macosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-macosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "macosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosx64/2.3.11/ktor-client-core-macosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-macosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "mingwX64ApiElements-published", - "attributes": { - "artifactType": { - "type": "exactMatch", - "value": "org.jetbrains.kotlin.klib" - }, - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "mingw_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-mingwx64/2.3.11/ktor-client-core-mingwx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-mingwx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "mingwX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "mingw_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-mingwx64/2.3.11/ktor-client-core-mingwx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-mingwx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosarm64/2.3.11/ktor-client-core-tvosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosarm64/2.3.11/ktor-client-core-tvosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosarm64/2.3.11/ktor-client-core-tvosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosSimulatorArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvossimulatorarm64/2.3.11/ktor-client-core-tvossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosSimulatorArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvossimulatorarm64/2.3.11/ktor-client-core-tvossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosSimulatorArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvossimulatorarm64/2.3.11/ktor-client-core-tvossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosx64/2.3.11/ktor-client-core-tvosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosx64/2.3.11/ktor-client-core-tvosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "tvosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosx64/2.3.11/ktor-client-core-tvosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm32ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm32" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm32/2.3.11/ktor-client-core-watchosarm32-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm32", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm32MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm32" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm32/2.3.11/ktor-client-core-watchosarm32-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm32", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm32SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm32" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm32/2.3.11/ktor-client-core-watchosarm32-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm32", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm64/2.3.11/ktor-client-core-watchosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm64/2.3.11/ktor-client-core-watchosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm64/2.3.11/ktor-client-core-watchosarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosSimulatorArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchossimulatorarm64/2.3.11/ktor-client-core-watchossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosSimulatorArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchossimulatorarm64/2.3.11/ktor-client-core-watchossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosSimulatorArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchossimulatorarm64/2.3.11/ktor-client-core-watchossimulatorarm64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchossimulatorarm64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosx64/2.3.11/ktor-client-core-watchosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosx64/2.3.11/ktor-client-core-watchosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosx64", - "version": "2.3.11" - } - }, - { - "type": "withAvailableAt", - "name": "watchosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosx64/2.3.11/ktor-client-core-watchosx64-2.3.11.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosx64", - "version": "2.3.11" - } - } - ], - "parentComponent": null - }, - "latest": { - "type": "gradleVersion", - "normalized": { - "type": "semantic", - "versionName": "3.0.0-beta-2-eap-884", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-2-eap-884", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ], - "vulnerability": { - "isVulnerable": false, - "issues": null - }, - "dependencies": [ - { - "groupId": "org.jetbrains.kotlinx", - "artifactId": "kotlinx-coroutines-core", - "version": "1.7.3", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-http", - "version": "3.0.0-beta-2-eap-884", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-events", - "version": "3.0.0-beta-2-eap-884", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-websocket-serialization", - "version": "3.0.0-beta-2-eap-884", - "scope": "runtime" - }, - { - "groupId": "io.ktor", - "artifactId": "ktor-sse", - "version": "3.0.0-beta-2-eap-884", - "scope": "runtime" - }, - { - "groupId": "org.jetbrains.kotlin", - "artifactId": "kotlin-stdlib", - "version": "1.9.22", - "scope": "runtime" - }, - { - "groupId": "org.jetbrains.kotlinx", - "artifactId": "atomicfu", - "version": "0.22.0", - "scope": "runtime" - } - ], - "artifacts": [ - { - "name": "ktor-client-core-3.0.0-beta-2-eap-884.jar", - "md5": "c8f4cff765f2e0219b43e0ba6198eaa2", - "sha1": "c63d2b2f8868f53232e9ff6e6f77199f04136a3a", - "sha256": "a5d88ff2494bf6800996784bd56e526eb7ea670cc0f3996f458b4e96b6b58224", - "sha512": "fa3d0d4b243ce4b623d350ce9f6ffc8e98d7df03e1e7382380e871d5e965f88d33aee082302de121b994fc03d091c26512d88aa9218920243d5d41946e9c9efa" - }, - { - "name": "ktor-client-core-3.0.0-beta-2-eap-884-kotlin-tooling-metadata.json", - "md5": "5a05f6185a79ffb4ab5fef58399520cb", - "sha1": "0efdcca5c49371f4444ac9350ccff37cdbc9b1ce", - "sha256": "427b5fef9eac508b986840e931d7c40dc357dc5898e15703aa9e6402f890cbc6", - "sha512": "0f3fe82270626e39f6300c9ee5f798c9e7754b51d9b8b3a41beeaccc738475842d06fa72b2106448c38b35063b8fb84658f7a9426df14fff9114879ea77ac5c5" - }, - { - "name": "ktor-client-core-3.0.0-beta-2-eap-884.module", - "md5": "21f5effd011579f3acaca08b095f6d3d", - "sha1": "0f1a5ba396e070f39e72fe7c62ef69a2b74834b0", - "sha256": "4777bb786ad8f2a388385fc3b1151c59bf223425e8b0bc3b69dab8b65a4935db", - "sha512": "2041433b2cd7a6c4f58d45fc6ec560082a192509953d30e9a2a7ca57027a21e9bf234b61404dd104c5260c3792a2b8e86d6ef7e7a1ecb464c2cc664f198b2c63" - }, - { - "name": "ktor-client-core-3.0.0-beta-2-eap-884.pom", - "md5": "01217b6de7cd416a4fbd110dd45bcf68", - "sha1": "0e24659562e5d920939c567428c81c710e183d42", - "sha256": "75d45bf22f95f9f8e65b4c00757dfc8784552e970232e72dbb8f5be9784279d2", - "sha512": "bfe54458ba85817c9c724b903e861dc146e3cb2afdfe1819cb8f17019e98d53224b27b022281c79a41a4821d92a99876022ed1a4e53d26cc08ff7cf31d7cab8d" - }, - { - "name": "ktor-client-core-3.0.0-beta-2-eap-884-sources.jar", - "md5": "7f4bb28b3c597c08a592b498643827ab", - "sha1": "f19706aa73c5b80e629db7898b2944adcf7df24e", - "sha256": "27f7f1a2e737f1086ccd04655ae4607074460da2ecb4c5b242941edadfde99c0", - "sha512": "56b232a9380d0497209bf787506d430da9313f18a593bb663baed6eae0fa09530e5528c02d108cebac20e05e06c1a93bdc9f472932fcef0c5059e2d6f7968d28" - } - ], - "name": "ktor-client-core", - "description": "Ktor is a framework for quickly creating web applications in Kotlin with minimal effort.", - "authors": [ - { - "name": "JetBrains Team", - "email": "", - "org": "JetBrains", - "orgUrl": null - } - ], - "scmUrl": "https://github.com/ktorio/ktor.git", - "variants": [ - { - "type": "withFiles", - "name": "metadataApiElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "common" - } - }, - "dependencies": [ - { - "group": "org.jetbrains.kotlinx", - "module": "kotlinx-coroutines-core", - "version": "1.7.3" - }, - { - "group": "io.ktor", - "module": "ktor-http", - "version": "3.0.0-beta-2-eap-884" - }, - { - "group": "io.ktor", - "module": "ktor-events", - "version": "3.0.0-beta-2-eap-884" - }, - { - "group": "io.ktor", - "module": "ktor-websocket-serialization", - "version": "3.0.0-beta-2-eap-884" - }, - { - "group": "io.ktor", - "module": "ktor-sse", - "version": "3.0.0-beta-2-eap-884" - }, - { - "group": "org.jetbrains.kotlin", - "module": "kotlin-stdlib", - "version": "1.9.22" - }, - { - "group": "org.jetbrains.kotlinx", - "module": "atomicfu", - "version": "0.22.0" - } - ], - "files": [ - { - "name": "ktor-client-core-metadata-3.0.0-beta-2-eap-884.jar", - "url": "ktor-client-core-3.0.0-beta-2-eap-884.jar", - "size": 60680, - "sha1": "c63d2b2f8868f53232e9ff6e6f77199f04136a3a", - "md5": "c8f4cff765f2e0219b43e0ba6198eaa2", - "sha256": "a5d88ff2494bf6800996784bd56e526eb7ea670cc0f3996f458b4e96b6b58224", - "sha512": "fa3d0d4b243ce4b623d350ce9f6ffc8e98d7df03e1e7382380e871d5e965f88d33aee082302de121b994fc03d091c26512d88aa9218920243d5d41946e9c9efa" - } - ] - }, - { - "type": "withFiles", - "name": "metadataSourcesElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "common" - } - }, - "dependencies": [], - "files": [ - { - "name": "ktor-client-core-kotlin-3.0.0-beta-2-eap-884-sources.jar", - "url": "ktor-client-core-3.0.0-beta-2-eap-884-sources.jar", - "size": 108844, - "sha1": "f19706aa73c5b80e629db7898b2944adcf7df24e", - "md5": "7f4bb28b3c597c08a592b498643827ab", - "sha256": "27f7f1a2e737f1086ccd04655ae4607074460da2ecb4c5b242941edadfde99c0", - "sha512": "56b232a9380d0497209bf787506d430da9313f18a593bb663baed6eae0fa09530e5528c02d108cebac20e05e06c1a93bdc9f472932fcef0c5059e2d6f7968d28" - } - ] - }, - { - "type": "withAvailableAt", - "name": "iosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosarm64/3.0.0-beta-2-eap-884/ktor-client-core-iosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosarm64/3.0.0-beta-2-eap-884/ktor-client-core-iosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosarm64/3.0.0-beta-2-eap-884/ktor-client-core-iosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosSimulatorArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-iossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosSimulatorArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-iossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosSimulatorArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-iossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosx64/3.0.0-beta-2-eap-884/ktor-client-core-iosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosx64/3.0.0-beta-2-eap-884/ktor-client-core-iosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "iosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "ios_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-iosx64/3.0.0-beta-2-eap-884/ktor-client-core-iosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-iosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "jsApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.js.compiler": { - "type": "exactMatch", - "value": "ir" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "js" - } - }, - "available-at": { - "url": "../../ktor-client-core-js/3.0.0-beta-2-eap-884/ktor-client-core-js-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-js", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "jsRuntimeElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.js.compiler": { - "type": "exactMatch", - "value": "ir" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "js" - } - }, - "available-at": { - "url": "../../ktor-client-core-js/3.0.0-beta-2-eap-884/ktor-client-core-js-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-js", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "jsSourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.js.compiler": { - "type": "exactMatch", - "value": "ir" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "js" - } - }, - "available-at": { - "url": "../../ktor-client-core-js/3.0.0-beta-2-eap-884/ktor-client-core-js-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-js", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "jvmApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-api" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "jvm" - } - }, - "available-at": { - "url": "../../ktor-client-core-jvm/3.0.0-beta-2-eap-884/ktor-client-core-jvm-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-jvm", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "jvmRuntimeElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-runtime" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "jvm" - } - }, - "available-at": { - "url": "../../ktor-client-core-jvm/3.0.0-beta-2-eap-884/ktor-client-core-jvm-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-jvm", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "jvmSourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-runtime" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "jvm" - } - }, - "available-at": { - "url": "../../ktor-client-core-jvm/3.0.0-beta-2-eap-884/ktor-client-core-jvm-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-jvm", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "linuxArm64ApiElements-published", - "attributes": { - "artifactType": { - "type": "exactMatch", - "value": "org.jetbrains.kotlin.klib" - }, - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxarm64/3.0.0-beta-2-eap-884/ktor-client-core-linuxarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "linuxArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxarm64/3.0.0-beta-2-eap-884/ktor-client-core-linuxarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "linuxX64ApiElements-published", - "attributes": { - "artifactType": { - "type": "exactMatch", - "value": "org.jetbrains.kotlin.klib" - }, - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxx64/3.0.0-beta-2-eap-884/ktor-client-core-linuxx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "linuxX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "linux_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-linuxx64/3.0.0-beta-2-eap-884/ktor-client-core-linuxx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-linuxx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "macosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosarm64/3.0.0-beta-2-eap-884/ktor-client-core-macosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-macosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "macosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosarm64/3.0.0-beta-2-eap-884/ktor-client-core-macosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-macosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "macosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosarm64/3.0.0-beta-2-eap-884/ktor-client-core-macosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-macosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "macosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosx64/3.0.0-beta-2-eap-884/ktor-client-core-macosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-macosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "macosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosx64/3.0.0-beta-2-eap-884/ktor-client-core-macosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-macosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "macosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "macos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-macosx64/3.0.0-beta-2-eap-884/ktor-client-core-macosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-macosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "mingwX64ApiElements-published", - "attributes": { - "artifactType": { - "type": "exactMatch", - "value": "org.jetbrains.kotlin.klib" - }, - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "mingw_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-mingwx64/3.0.0-beta-2-eap-884/ktor-client-core-mingwx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-mingwx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "mingwX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "mingw_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-mingwx64/3.0.0-beta-2-eap-884/ktor-client-core-mingwx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-mingwx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosarm64/3.0.0-beta-2-eap-884/ktor-client-core-tvosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosarm64/3.0.0-beta-2-eap-884/ktor-client-core-tvosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosarm64/3.0.0-beta-2-eap-884/ktor-client-core-tvosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosSimulatorArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-tvossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosSimulatorArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-tvossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosSimulatorArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-tvossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosx64/3.0.0-beta-2-eap-884/ktor-client-core-tvosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosx64/3.0.0-beta-2-eap-884/ktor-client-core-tvosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "tvosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "tvos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-tvosx64/3.0.0-beta-2-eap-884/ktor-client-core-tvosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-tvosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm32ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm32" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm32/3.0.0-beta-2-eap-884/ktor-client-core-watchosarm32-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm32", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm32SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm32" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm32/3.0.0-beta-2-eap-884/ktor-client-core-watchosarm32-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm32", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm32MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm32" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm32/3.0.0-beta-2-eap-884/ktor-client-core-watchosarm32-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm32", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm64/3.0.0-beta-2-eap-884/ktor-client-core-watchosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm64/3.0.0-beta-2-eap-884/ktor-client-core-watchosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosarm64/3.0.0-beta-2-eap-884/ktor-client-core-watchosarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosSimulatorArm64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-watchossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosSimulatorArm64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-watchossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosSimulatorArm64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_simulator_arm64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchossimulatorarm64/3.0.0-beta-2-eap-884/ktor-client-core-watchossimulatorarm64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchossimulatorarm64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosX64ApiElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-api" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosx64/3.0.0-beta-2-eap-884/ktor-client-core-watchosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosX64SourcesElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "documentation" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.docstype": { - "type": "exactMatch", - "value": "sources" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-runtime" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosx64/3.0.0-beta-2-eap-884/ktor-client-core-watchosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosx64", - "version": "3.0.0-beta-2-eap-884" - } - }, - { - "type": "withAvailableAt", - "name": "watchosX64MetadataElements-published", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "kotlin-metadata" - }, - "org.jetbrains.kotlin.native.target": { - "type": "exactMatch", - "value": "watchos_x64" - }, - "org.jetbrains.kotlin.platform.type": { - "type": "exactMatch", - "value": "native" - } - }, - "available-at": { - "url": "../../ktor-client-core-watchosx64/3.0.0-beta-2-eap-884/ktor-client-core-watchosx64-3.0.0-beta-2-eap-884.module", - "group": "io.ktor", - "module": "ktor-client-core-watchosx64", - "version": "3.0.0-beta-2-eap-884" - } - } - ], - "parentComponent": null - }, - "all": [ - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-3", - "isStable": false, - "releasedAt": "2021-01-29T10:46:08Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-5", - "isStable": false, - "releasedAt": "2021-02-04T12:03:41Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-5", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-6", - "isStable": false, - "releasedAt": "2021-02-04T14:10:42Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-6", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-17", - "isStable": false, - "releasedAt": "2021-02-05T11:33:28Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-19", - "isStable": false, - "releasedAt": "2021-02-05T12:11:52Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-22", - "isStable": false, - "releasedAt": "2021-02-05T15:35:41Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-22", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-23", - "isStable": false, - "releasedAt": "2021-02-10T12:00:55Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-25", - "isStable": false, - "releasedAt": "2021-02-11T20:10:41Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-25", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-24", - "isStable": false, - "releasedAt": "2021-02-11T20:38:43Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-26", - "isStable": false, - "releasedAt": "2021-02-12T20:36:30Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-27", - "isStable": false, - "releasedAt": "2021-02-15T20:15:40Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-28", - "isStable": false, - "releasedAt": "2021-02-16T20:47:39Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-30", - "isStable": false, - "releasedAt": "2021-02-17T20:15:42Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-31", - "isStable": false, - "releasedAt": "2021-02-19T20:48:36Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-36", - "isStable": false, - "releasedAt": "2021-02-26T20:17:56Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-36", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-35", - "isStable": false, - "releasedAt": "2021-02-26T20:48:05Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-37", - "isStable": false, - "releasedAt": "2021-03-01T20:41:19Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-37", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-38", - "isStable": false, - "releasedAt": "2021-03-02T20:47:48Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-39", - "isStable": false, - "releasedAt": "2021-03-05T20:16:07Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-40", - "isStable": false, - "releasedAt": "2021-03-09T20:17:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-41", - "isStable": false, - "releasedAt": "2021-03-10T20:17:23Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-42", - "isStable": false, - "releasedAt": "2021-03-10T20:31:50Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-42", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-43", - "isStable": false, - "releasedAt": "2021-03-12T20:17:48Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-44", - "isStable": false, - "releasedAt": "2021-03-15T20:48:39Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-45", - "isStable": false, - "releasedAt": "2021-03-16T20:48:59Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-46", - "isStable": false, - "releasedAt": "2021-03-17T20:48:41Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-46", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-49", - "isStable": false, - "releasedAt": "2021-03-22T20:08:00Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-52", - "isStable": false, - "releasedAt": "2021-03-23T13:37:55Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-54", - "isStable": false, - "releasedAt": "2021-03-23T20:40:53Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-54", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-53", - "isStable": false, - "releasedAt": "2021-03-23T20:57:18Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-55", - "isStable": false, - "releasedAt": "2021-03-23T21:11:14Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-55", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-56", - "isStable": false, - "releasedAt": "2021-03-25T20:10:24Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-57", - "isStable": false, - "releasedAt": "2021-03-28T20:16:11Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-57", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-58", - "isStable": false, - "releasedAt": "2021-03-29T20:15:08Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-58", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-59", - "isStable": false, - "releasedAt": "2021-03-30T13:48:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-60", - "isStable": false, - "releasedAt": "2021-03-30T20:41:24Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-63", - "isStable": false, - "releasedAt": "2021-03-30T21:01:25Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-64", - "isStable": false, - "releasedAt": "2021-03-31T17:17:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-65", - "isStable": false, - "releasedAt": "2021-03-31T20:08:42Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-66", - "isStable": false, - "releasedAt": "2021-03-31T20:26:16Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-66", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-67", - "isStable": false, - "releasedAt": "2021-04-01T13:08:15Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "new-routing-eap-69", - "isStable": false, - "releasedAt": "2021-04-01T16:27:02Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-70", - "isStable": false, - "releasedAt": "2021-04-02T20:49:38Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-71", - "isStable": false, - "releasedAt": "2021-04-02T21:06:04Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-71", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-72", - "isStable": false, - "releasedAt": "2021-04-06T21:39:41Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-72", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-73", - "isStable": false, - "releasedAt": "2021-04-07T20:39:54Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-75", - "isStable": false, - "releasedAt": "2021-04-08T20:56:43Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-75", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-76", - "isStable": false, - "releasedAt": "2021-04-08T21:11:33Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-76", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-77", - "isStable": false, - "releasedAt": "2021-04-09T14:45:53Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-77" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "master-78", - "isStable": false, - "releasedAt": "2021-04-09T20:45:21Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-79", - "isStable": false, - "releasedAt": "2021-04-09T20:59:48Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-79", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-80", - "isStable": false, - "releasedAt": "2021-04-09T21:14:04Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-80", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-81", - "isStable": false, - "releasedAt": "2021-04-12T20:16:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-82", - "isStable": false, - "releasedAt": "2021-04-12T21:30:37Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-82", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-83", - "isStable": false, - "releasedAt": "2021-04-12T21:44:56Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-83", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-84", - "isStable": false, - "releasedAt": "2021-04-13T20:45:50Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-85", - "isStable": false, - "releasedAt": "2021-04-14T20:45:57Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-85", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-86", - "isStable": false, - "releasedAt": "2021-04-15T20:47:48Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-86", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-88", - "isStable": false, - "releasedAt": "2021-04-16T20:46:36Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-88" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-89", - "isStable": false, - "releasedAt": "2021-04-20T20:46:17Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-90", - "isStable": false, - "releasedAt": "2021-04-20T21:01:35Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-90" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-91", - "isStable": false, - "releasedAt": "2021-04-20T21:17:58Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-91", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-93", - "isStable": false, - "releasedAt": "2021-04-21T20:18:53Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-94", - "isStable": false, - "releasedAt": "2021-04-21T20:47:42Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-94" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-95", - "isStable": false, - "releasedAt": "2021-04-22T20:47:17Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-96", - "isStable": false, - "releasedAt": "2021-04-22T21:03:00Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-96", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-97", - "isStable": false, - "releasedAt": "2021-04-22T21:17:39Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-97" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-99", - "isStable": false, - "releasedAt": "2021-04-23T20:44:53Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-100", - "isStable": false, - "releasedAt": "2021-04-26T20:16:22Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-101", - "isStable": false, - "releasedAt": "2021-04-26T20:48:43Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-101", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-102", - "isStable": false, - "releasedAt": "2021-04-27T21:09:39Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-102", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-104", - "isStable": false, - "releasedAt": "2021-04-28T20:45:40Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-104", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-103", - "isStable": false, - "releasedAt": "2021-04-28T21:01:45Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-103", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-105", - "isStable": false, - "releasedAt": "2021-04-29T20:12:03Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-106", - "isStable": false, - "releasedAt": "2021-04-29T20:27:28Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-106", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-107", - "isStable": false, - "releasedAt": "2021-04-29T20:42:18Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-107", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-108", - "isStable": false, - "releasedAt": "2021-04-29T20:56:21Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-108" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-111", - "isStable": false, - "releasedAt": "2021-04-30T20:10:23Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-111", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-109", - "isStable": false, - "releasedAt": "2021-04-30T20:30:36Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-eap-110", - "isStable": false, - "releasedAt": "2021-04-30T20:46:43Z", - "semanticPart": "1.6.0", - "stabilityMarker": "-eap-110", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-112", - "isStable": false, - "releasedAt": "2021-04-30T21:00:59Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-112" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-113", - "isStable": false, - "releasedAt": "2021-05-03T20:50:18Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-114", - "isStable": false, - "releasedAt": "2021-05-04T20:18:43Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-115", - "isStable": false, - "releasedAt": "2021-05-04T20:45:16Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-115" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-116", - "isStable": false, - "releasedAt": "2021-05-05T20:48:44Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-116", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-117", - "isStable": false, - "releasedAt": "2021-05-06T20:44:47Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-118", - "isStable": false, - "releasedAt": "2021-05-11T20:15:50Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-119", - "isStable": false, - "releasedAt": "2021-05-11T20:31:47Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-119", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-120", - "isStable": false, - "releasedAt": "2021-05-12T20:39:42Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-121", - "isStable": false, - "releasedAt": "2021-05-12T20:56:19Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-121", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-122", - "isStable": false, - "releasedAt": "2021-05-14T20:36:24Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0-new-routing-eap-123", - "isStable": false, - "releasedAt": "2021-05-15T21:13:00Z", - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-new-routing-eap-123" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-128", - "isStable": false, - "releasedAt": "2021-05-20T20:45:06Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-130", - "isStable": false, - "releasedAt": "2021-05-21T20:12:26Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-130", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-131", - "isStable": false, - "releasedAt": "2021-05-24T06:38:41Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-132", - "isStable": false, - "releasedAt": "2021-05-24T11:21:02Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-132", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-133", - "isStable": false, - "releasedAt": "2021-05-24T11:34:46Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-134", - "isStable": false, - "releasedAt": "2021-05-25T20:45:20Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-135", - "isStable": false, - "releasedAt": "2021-05-25T21:22:47Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-135", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-136", - "isStable": false, - "releasedAt": "2021-05-26T20:46:13Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-137", - "isStable": false, - "releasedAt": "2021-05-27T20:44:50Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-138", - "isStable": false, - "releasedAt": "2021-05-27T20:58:47Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-138", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-139", - "isStable": false, - "releasedAt": "2021-05-28T20:12:51Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-140", - "isStable": false, - "releasedAt": "2021-05-29T20:49:05Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-141", - "isStable": false, - "releasedAt": "2021-05-31T20:12:00Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-142", - "isStable": false, - "releasedAt": "2021-05-31T20:25:08Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-142", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-143", - "isStable": false, - "releasedAt": "2021-06-01T21:41:16Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-144", - "isStable": false, - "releasedAt": "2021-06-02T20:44:43Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-144", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-145", - "isStable": false, - "releasedAt": "2021-06-04T20:13:16Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-146", - "isStable": false, - "releasedAt": "2021-06-07T20:13:16Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-147", - "isStable": false, - "releasedAt": "2021-06-07T20:27:22Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-147", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-148", - "isStable": false, - "releasedAt": "2021-06-08T20:45:27Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-148", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-149", - "isStable": false, - "releasedAt": "2021-06-09T21:09:04Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-150", - "isStable": false, - "releasedAt": "2021-06-09T21:21:38Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-150", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-151", - "isStable": false, - "releasedAt": "2021-06-10T20:13:08Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-152", - "isStable": false, - "releasedAt": "2021-06-10T20:26:31Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-152", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-153", - "isStable": false, - "releasedAt": "2021-06-15T20:35:36Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-155", - "isStable": false, - "releasedAt": "2021-06-16T20:48:44Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-156", - "isStable": false, - "releasedAt": "2021-06-16T21:07:16Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-156", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-158", - "isStable": false, - "releasedAt": "2021-06-17T20:48:16Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-158", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-157", - "isStable": false, - "releasedAt": "2021-06-17T21:06:07Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-159", - "isStable": false, - "releasedAt": "2021-06-26T20:46:43Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-160", - "isStable": false, - "releasedAt": "2021-06-28T20:16:16Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-161", - "isStable": false, - "releasedAt": "2021-06-28T20:34:42Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-161", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-162", - "isStable": false, - "releasedAt": "2021-06-29T20:49:22Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-162", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-163", - "isStable": false, - "releasedAt": "2021-06-30T20:47:14Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-164", - "isStable": false, - "releasedAt": "2021-07-01T20:48:00Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-167", - "isStable": false, - "releasedAt": "2021-07-02T20:16:58Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-167", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-166", - "isStable": false, - "releasedAt": "2021-07-02T20:42:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-168", - "isStable": false, - "releasedAt": "2021-07-05T20:47:36Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-168", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-169", - "isStable": false, - "releasedAt": "2021-07-06T20:15:40Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-169", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-170", - "isStable": false, - "releasedAt": "2021-07-09T20:43:44Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-171", - "isStable": false, - "releasedAt": "2021-07-12T20:15:43Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-171", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-172", - "isStable": false, - "releasedAt": "2021-07-14T20:15:16Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-173", - "isStable": false, - "releasedAt": "2021-07-16T20:42:45Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-173", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-174", - "isStable": false, - "releasedAt": "2021-07-19T20:44:23Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-175", - "isStable": false, - "releasedAt": "2021-07-20T20:41:28Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-177", - "isStable": false, - "releasedAt": "2021-07-21T20:41:50Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-177", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-178", - "isStable": false, - "releasedAt": "2021-07-23T20:12:13Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-178", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-180", - "isStable": false, - "releasedAt": "2021-07-26T20:12:10Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-180", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-179", - "isStable": false, - "releasedAt": "2021-07-26T20:39:31Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-181", - "isStable": false, - "releasedAt": "2021-07-28T20:40:56Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-182", - "isStable": false, - "releasedAt": "2021-07-29T20:40:50Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-184", - "isStable": false, - "releasedAt": "2021-08-03T20:13:48Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-184", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-183", - "isStable": false, - "releasedAt": "2021-08-03T20:41:21Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2-native-mm-eap-185", - "isStable": false, - "releasedAt": "2021-08-06T20:13:27Z", - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-native-mm-eap-185" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-186", - "isStable": false, - "releasedAt": "2021-08-06T20:35:53Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-186", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-187", - "isStable": false, - "releasedAt": "2021-08-09T20:16:20Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-187", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2-native-mm-eap-188", - "isStable": false, - "releasedAt": "2021-08-11T16:52:18Z", - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-native-mm-eap-188" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2-native-mm-eap-189", - "isStable": false, - "releasedAt": "2021-08-11T19:04:24Z", - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-native-mm-eap-189" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-191", - "isStable": false, - "releasedAt": "2021-08-11T20:14:37Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-191", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-190", - "isStable": false, - "releasedAt": "2021-08-11T20:40:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2-native-mm-eap-192", - "isStable": false, - "releasedAt": "2021-08-12T20:39:18Z", - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-native-mm-eap-192" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-194", - "isStable": false, - "releasedAt": "2021-08-16T20:14:22Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-194", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-193", - "isStable": false, - "releasedAt": "2021-08-16T20:40:04Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2-native-mm-eap-195", - "isStable": false, - "releasedAt": "2021-08-17T13:53:59Z", - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-native-mm-eap-195" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2-native-mm-eap-196", - "isStable": false, - "releasedAt": "2021-08-17T20:40:36Z", - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-native-mm-eap-196" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-197", - "isStable": false, - "releasedAt": "2021-08-18T20:43:25Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-198", - "isStable": false, - "releasedAt": "2021-08-20T20:44:46Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-200", - "isStable": false, - "releasedAt": "2021-08-23T20:16:53Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-200", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-199", - "isStable": false, - "releasedAt": "2021-08-23T20:41:06Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-201", - "isStable": false, - "releasedAt": "2021-08-25T20:43:29Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-202", - "isStable": false, - "releasedAt": "2021-08-26T20:41:53Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-203", - "isStable": false, - "releasedAt": "2021-08-27T20:42:01Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-205", - "isStable": false, - "releasedAt": "2021-08-31T20:14:03Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-205", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-204", - "isStable": false, - "releasedAt": "2021-08-31T20:42:34Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-211", - "isStable": false, - "releasedAt": "2021-09-08T20:17:11Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-212", - "isStable": false, - "releasedAt": "2021-09-08T20:45:14Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-212", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-213", - "isStable": false, - "releasedAt": "2021-09-09T20:44:01Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-213", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-214", - "isStable": false, - "releasedAt": "2021-09-13T20:15:33Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-215", - "isStable": false, - "releasedAt": "2021-09-13T20:44:47Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-215", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-216", - "isStable": false, - "releasedAt": "2021-09-15T20:13:14Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-217", - "isStable": false, - "releasedAt": "2021-09-15T20:45:25Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-217", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-218", - "isStable": false, - "releasedAt": "2021-09-16T20:41:21Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-219", - "isStable": false, - "releasedAt": "2021-09-16T21:01:50Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-219", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-220", - "isStable": false, - "releasedAt": "2021-09-20T20:40:43Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-221", - "isStable": false, - "releasedAt": "2021-09-22T17:51:28Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-222", - "isStable": false, - "releasedAt": "2021-09-22T18:49:02Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-ide-debug-eap-223", - "isStable": false, - "releasedAt": "2021-09-22T19:28:02Z", - "semanticPart": "2.0.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-ide-debug-eap-223" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-224", - "isStable": false, - "releasedAt": "2021-09-22T20:15:46Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-ide-debug-eap-225", - "isStable": false, - "releasedAt": "2021-09-22T20:47:23Z", - "semanticPart": "2.0.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-ide-debug-eap-225" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-226", - "isStable": false, - "releasedAt": "2021-09-23T20:15:37Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-227", - "isStable": false, - "releasedAt": "2021-09-27T20:42:45Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-228", - "isStable": false, - "releasedAt": "2021-09-28T20:36:40Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-228", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-229", - "isStable": false, - "releasedAt": "2021-09-29T20:45:06Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-229", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-230", - "isStable": false, - "releasedAt": "2021-09-30T20:15:43Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-231", - "isStable": false, - "releasedAt": "2021-10-01T20:40:54Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-232", - "isStable": false, - "releasedAt": "2021-10-04T20:45:32Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-233", - "isStable": false, - "releasedAt": "2021-10-04T21:07:11Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-233", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-234", - "isStable": false, - "releasedAt": "2021-10-05T20:43:57Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-235", - "isStable": false, - "releasedAt": "2021-10-06T20:43:58Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-236", - "isStable": false, - "releasedAt": "2021-10-11T20:14:16Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-237", - "isStable": false, - "releasedAt": "2021-10-12T20:43:13Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-238", - "isStable": false, - "releasedAt": "2021-10-13T20:13:41Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-240", - "isStable": false, - "releasedAt": "2021-10-14T12:31:02Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-241", - "isStable": false, - "releasedAt": "2021-10-14T20:14:23Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-242", - "isStable": false, - "releasedAt": "2021-10-15T20:47:08Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-243", - "isStable": false, - "releasedAt": "2021-10-18T20:43:23Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-244", - "isStable": false, - "releasedAt": "2021-10-19T16:01:31Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-245", - "isStable": false, - "releasedAt": "2021-10-19T17:19:44Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-246", - "isStable": false, - "releasedAt": "2021-10-19T20:13:01Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-247", - "isStable": false, - "releasedAt": "2021-10-20T15:24:33Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-248", - "isStable": false, - "releasedAt": "2021-10-20T20:12:54Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-249", - "isStable": false, - "releasedAt": "2021-10-21T20:46:43Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-250", - "isStable": false, - "releasedAt": "2021-10-22T20:19:13Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-251", - "isStable": false, - "releasedAt": "2021-10-23T20:13:03Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "main-252", - "isStable": false, - "releasedAt": "2021-10-24T20:13:18Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-253", - "isStable": false, - "releasedAt": "2021-10-25T14:32:06Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-253", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-254", - "isStable": false, - "releasedAt": "2021-10-25T15:31:19Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-254", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-255", - "isStable": false, - "releasedAt": "2021-10-25T19:40:58Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-255", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-256", - "isStable": false, - "releasedAt": "2021-10-26T12:51:59Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-256", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-257", - "isStable": false, - "releasedAt": "2021-10-26T14:33:25Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-257", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-258", - "isStable": false, - "releasedAt": "2021-10-27T20:43:14Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-258", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-259", - "isStable": false, - "releasedAt": "2021-10-29T20:15:49Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-259", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-260", - "isStable": false, - "releasedAt": "2021-11-02T20:15:16Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-260", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-261", - "isStable": false, - "releasedAt": "2021-11-03T20:12:58Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-261", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-262", - "isStable": false, - "releasedAt": "2021-11-05T20:15:06Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-262", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-263", - "isStable": false, - "releasedAt": "2021-11-07T20:15:15Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-263", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-265", - "isStable": false, - "releasedAt": "2021-11-11T20:15:27Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-265", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-266", - "isStable": false, - "releasedAt": "2021-11-12T20:15:24Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-266", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-267", - "isStable": false, - "releasedAt": "2021-11-16T20:47:41Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-267", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-268", - "isStable": false, - "releasedAt": "2021-11-17T20:18:37Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-268", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-269", - "isStable": false, - "releasedAt": "2021-11-18T20:48:11Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-269", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-270", - "isStable": false, - "releasedAt": "2021-11-19T20:15:29Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-270", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-271", - "isStable": false, - "releasedAt": "2021-11-22T20:19:57Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-271", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-272", - "isStable": false, - "releasedAt": "2021-11-23T20:47:55Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-272", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-273", - "isStable": false, - "releasedAt": "2021-11-24T20:47:31Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-273", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-274", - "isStable": false, - "releasedAt": "2021-11-25T20:47:37Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-274", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-275", - "isStable": false, - "releasedAt": "2021-11-26T20:17:45Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-275", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-276", - "isStable": false, - "releasedAt": "2021-11-29T20:47:07Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-276", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-277", - "isStable": false, - "releasedAt": "2021-11-30T20:47:32Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-277", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-278", - "isStable": false, - "releasedAt": "2021-12-03T20:45:31Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-278", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "-eap-279", - "isStable": false, - "releasedAt": "2021-12-06T12:19:17Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "-eap-281", - "isStable": false, - "releasedAt": "2021-12-06T14:32:15Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.7-eap-282", - "isStable": false, - "releasedAt": "2021-12-06T15:18:43Z", - "semanticPart": "1.6.7", - "stabilityMarker": "-eap-282", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-283", - "isStable": false, - "releasedAt": "2021-12-08T20:48:03Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-283", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-284", - "isStable": false, - "releasedAt": "2021-12-16T03:02:21Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-284", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-285", - "isStable": false, - "releasedAt": "2021-12-16T20:16:14Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-285", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-286", - "isStable": false, - "releasedAt": "2021-12-17T20:16:29Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-286", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-287", - "isStable": false, - "releasedAt": "2021-12-20T20:16:16Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-287", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-288", - "isStable": false, - "releasedAt": "2021-12-22T20:16:06Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-288", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-289", - "isStable": false, - "releasedAt": "2021-12-23T20:16:04Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-289", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-290", - "isStable": false, - "releasedAt": "2022-01-07T20:15:43Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-290", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-291", - "isStable": false, - "releasedAt": "2022-01-11T20:16:19Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-291", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-292", - "isStable": false, - "releasedAt": "2022-01-11T20:36:34Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-292", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-293", - "isStable": false, - "releasedAt": "2022-01-13T20:17:24Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-293", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-294", - "isStable": false, - "releasedAt": "2022-01-13T20:32:19Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-294", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-295", - "isStable": false, - "releasedAt": "2022-01-14T20:21:56Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-295", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-296", - "isStable": false, - "releasedAt": "2022-01-14T20:51:19Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-296", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-297", - "isStable": false, - "releasedAt": "2022-01-17T20:17:01Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-297", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-298", - "isStable": false, - "releasedAt": "2022-01-17T20:43:43Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-298", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-299", - "isStable": false, - "releasedAt": "2022-01-18T20:17:18Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-299", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-300", - "isStable": false, - "releasedAt": "2022-01-19T20:16:54Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-300", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0-eap-301", - "isStable": false, - "releasedAt": "2022-01-19T20:39:49Z", - "semanticPart": "2.0", - "stabilityMarker": "-eap-301", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-302", - "isStable": false, - "releasedAt": "2022-01-21T20:17:21Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-302", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-310", - "isStable": false, - "releasedAt": "2022-01-27T13:17:54Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-310", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-312", - "isStable": false, - "releasedAt": "2022-01-27T16:55:05Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-312", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-313", - "isStable": false, - "releasedAt": "2022-01-27T20:10:31Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-313", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-314", - "isStable": false, - "releasedAt": "2022-01-27T20:26:28Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-314", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-315", - "isStable": false, - "releasedAt": "2022-01-28T12:35:54Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-315", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-316", - "isStable": false, - "releasedAt": "2022-01-28T20:12:32Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-316", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-317", - "isStable": false, - "releasedAt": "2022-01-28T20:27:16Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-317", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-318", - "isStable": false, - "releasedAt": "2022-01-31T20:10:21Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-318", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-319", - "isStable": false, - "releasedAt": "2022-02-01T20:12:26Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-319", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-320", - "isStable": false, - "releasedAt": "2022-02-01T20:39:43Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-320", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-321", - "isStable": false, - "releasedAt": "2022-02-02T20:12:08Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-321", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-322", - "isStable": false, - "releasedAt": "2022-02-02T20:40:02Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-322", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-323", - "isStable": false, - "releasedAt": "2022-02-03T20:10:36Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-323", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-324", - "isStable": false, - "releasedAt": "2022-02-03T20:26:06Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-324", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-325", - "isStable": false, - "releasedAt": "2022-02-04T20:10:22Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-325", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-326", - "isStable": false, - "releasedAt": "2022-02-07T20:38:48Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-326", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-327", - "isStable": false, - "releasedAt": "2022-02-08T20:12:12Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-327", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-328", - "isStable": false, - "releasedAt": "2022-02-09T20:12:05Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-328", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-329", - "isStable": false, - "releasedAt": "2022-02-10T20:10:19Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-329", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-330", - "isStable": false, - "releasedAt": "2022-02-14T20:10:16Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-330", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-331", - "isStable": false, - "releasedAt": "2022-02-16T20:10:22Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-331", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-332", - "isStable": false, - "releasedAt": "2022-02-17T20:40:19Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-332", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-333", - "isStable": false, - "releasedAt": "2022-02-21T20:10:42Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-333", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-334", - "isStable": false, - "releasedAt": "2022-02-22T11:24:42Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-334", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-336", - "isStable": false, - "releasedAt": "2022-03-02T20:39:29Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-336", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-337", - "isStable": false, - "releasedAt": "2022-03-03T20:39:23Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-337", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8-eap-339", - "isStable": false, - "releasedAt": "2022-03-04T20:39:22Z", - "semanticPart": "1.6.8", - "stabilityMarker": "-eap-339", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-338", - "isStable": false, - "releasedAt": "2022-03-04T20:52:17Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-338", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8-eap-341", - "isStable": false, - "releasedAt": "2022-03-07T20:39:45Z", - "semanticPart": "1.6.8", - "stabilityMarker": "-eap-341", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-340", - "isStable": false, - "releasedAt": "2022-03-07T20:52:40Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-340", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8-eap-343", - "isStable": false, - "releasedAt": "2022-03-08T20:45:26Z", - "semanticPart": "1.6.8", - "stabilityMarker": "-eap-343", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-342", - "isStable": false, - "releasedAt": "2022-03-08T20:59:52Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-342", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8-eap-344", - "isStable": false, - "releasedAt": "2022-03-09T14:02:26Z", - "semanticPart": "1.6.8", - "stabilityMarker": "-eap-344", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8-eap-346", - "isStable": false, - "releasedAt": "2022-03-09T20:47:21Z", - "semanticPart": "1.6.8", - "stabilityMarker": "-eap-346", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-347", - "isStable": false, - "releasedAt": "2022-03-10T20:39:06Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-347", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-348", - "isStable": false, - "releasedAt": "2022-03-11T20:11:24Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-348", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8-eap-349", - "isStable": false, - "releasedAt": "2022-03-11T20:44:17Z", - "semanticPart": "1.6.8", - "stabilityMarker": "-eap-349", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-350", - "isStable": false, - "releasedAt": "2022-03-14T20:12:09Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-350", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-351", - "isStable": false, - "releasedAt": "2022-03-15T20:12:17Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-351", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-352", - "isStable": false, - "releasedAt": "2022-03-16T20:14:02Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-352", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-353", - "isStable": false, - "releasedAt": "2022-03-17T20:10:10Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-353", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-354", - "isStable": false, - "releasedAt": "2022-03-18T20:13:50Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-354", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-355", - "isStable": false, - "releasedAt": "2022-03-21T20:10:07Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-355", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-356", - "isStable": false, - "releasedAt": "2022-03-22T20:11:27Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-356", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-357", - "isStable": false, - "releasedAt": "2022-03-23T20:09:45Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-357", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-358", - "isStable": false, - "releasedAt": "2022-03-24T20:10:04Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-358", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-359", - "isStable": false, - "releasedAt": "2022-03-25T20:12:07Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-359", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-360", - "isStable": false, - "releasedAt": "2022-03-28T20:41:44Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-360", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-361", - "isStable": false, - "releasedAt": "2022-03-30T20:11:41Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-361", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-362", - "isStable": false, - "releasedAt": "2022-03-31T20:38:07Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-362", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-eap-363", - "isStable": false, - "releasedAt": "2022-04-03T20:13:23Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-eap-363", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2-eap-364", - "isStable": false, - "releasedAt": "2022-04-04T20:09:35Z", - "semanticPart": "2", - "stabilityMarker": "-eap-364", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2-eap-365", - "isStable": false, - "releasedAt": "2022-04-05T20:11:40Z", - "semanticPart": "2", - "stabilityMarker": "-eap-365", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2-eap-366", - "isStable": false, - "releasedAt": "2022-04-06T20:40:17Z", - "semanticPart": "2", - "stabilityMarker": "-eap-366", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "-eap-367", - "isStable": false, - "releasedAt": "2022-04-08T20:38:04Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "-eap-368", - "isStable": false, - "releasedAt": "2022-04-11T20:09:58Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "-eap-369", - "isStable": false, - "releasedAt": "2022-04-14T12:57:58Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "garbage", - "versionName": "-eap-370", - "isStable": false, - "releasedAt": "2022-04-14T20:39:23Z" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-371", - "isStable": false, - "releasedAt": "2022-04-19T21:45:42Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-371", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-372", - "isStable": false, - "releasedAt": "2022-04-20T09:46:41Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-372", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-373", - "isStable": false, - "releasedAt": "2022-04-20T21:41:35Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-373", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-374", - "isStable": false, - "releasedAt": "2022-04-21T09:01:16Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-374", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-375", - "isStable": false, - "releasedAt": "2022-04-21T13:25:14Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-375", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-376", - "isStable": false, - "releasedAt": "2022-04-21T20:44:48Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-376", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-377", - "isStable": false, - "releasedAt": "2022-04-25T20:10:00Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-377", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-378", - "isStable": false, - "releasedAt": "2022-04-26T20:11:26Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-378", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-379", - "isStable": false, - "releasedAt": "2022-04-27T20:38:41Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-379", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-380", - "isStable": false, - "releasedAt": "2022-04-27T20:52:47Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-380", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-381", - "isStable": false, - "releasedAt": "2022-04-28T11:38:45Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-381", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-382", - "isStable": false, - "releasedAt": "2022-04-28T16:04:29Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-382", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-383", - "isStable": false, - "releasedAt": "2022-04-28T20:11:26Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-383", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-384", - "isStable": false, - "releasedAt": "2022-04-28T20:38:57Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-384", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1-eap-385", - "isStable": false, - "releasedAt": "2022-04-29T20:09:54Z", - "semanticPart": "2.0.1", - "stabilityMarker": "-eap-385", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-386", - "isStable": false, - "releasedAt": "2022-05-02T14:28:20Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-386", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-387", - "isStable": false, - "releasedAt": "2022-05-02T20:41:55Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-387", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-388", - "isStable": false, - "releasedAt": "2022-05-03T20:11:15Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-388", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-389", - "isStable": false, - "releasedAt": "2022-05-05T09:20:58Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-389", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-390", - "isStable": false, - "releasedAt": "2022-05-05T20:11:43Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-390", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-391", - "isStable": false, - "releasedAt": "2022-05-06T06:54:44Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-391", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-392", - "isStable": false, - "releasedAt": "2022-05-06T20:38:44Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-392", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-393", - "isStable": false, - "releasedAt": "2022-05-09T07:44:27Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-393", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-394", - "isStable": false, - "releasedAt": "2022-05-09T20:11:15Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-394", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-395", - "isStable": false, - "releasedAt": "2022-05-10T20:10:38Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-395", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-396", - "isStable": false, - "releasedAt": "2022-05-11T20:09:57Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-396", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-397", - "isStable": false, - "releasedAt": "2022-05-16T20:12:44Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-397", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-398", - "isStable": false, - "releasedAt": "2022-05-17T20:10:22Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-398", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-399", - "isStable": false, - "releasedAt": "2022-05-18T20:11:14Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-399", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-400", - "isStable": false, - "releasedAt": "2022-05-18T20:29:24Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-400", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-401", - "isStable": false, - "releasedAt": "2022-05-19T20:11:29Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-401", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-402", - "isStable": false, - "releasedAt": "2022-05-19T20:25:53Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-402", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-403", - "isStable": false, - "releasedAt": "2022-05-20T20:13:51Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-403", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-404", - "isStable": false, - "releasedAt": "2022-05-20T20:34:20Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-404", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-405", - "isStable": false, - "releasedAt": "2022-05-23T20:13:53Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-405", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-406", - "isStable": false, - "releasedAt": "2022-05-25T20:11:05Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-406", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-407", - "isStable": false, - "releasedAt": "2022-05-27T20:11:12Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-407", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-408", - "isStable": false, - "releasedAt": "2022-05-30T20:11:17Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-408", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-409", - "isStable": false, - "releasedAt": "2022-05-31T20:10:40Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-409", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-eap-410", - "isStable": false, - "releasedAt": "2022-05-31T20:31:57Z", - "semanticPart": "2.0.2", - "stabilityMarker": "-eap-410", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-411", - "isStable": false, - "releasedAt": "2022-06-01T20:12:18Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-411", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-412", - "isStable": false, - "releasedAt": "2022-06-01T20:26:18Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-412", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-413", - "isStable": false, - "releasedAt": "2022-06-02T20:11:35Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-413", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-414", - "isStable": false, - "releasedAt": "2022-06-03T20:12:55Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-414", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-415", - "isStable": false, - "releasedAt": "2022-06-07T20:10:15Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-415", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-416", - "isStable": false, - "releasedAt": "2022-06-08T20:11:12Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-416", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-417", - "isStable": false, - "releasedAt": "2022-06-08T20:26:20Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-417", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-418", - "isStable": false, - "releasedAt": "2022-06-13T20:11:56Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-418", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-419", - "isStable": false, - "releasedAt": "2022-06-13T20:27:13Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-419", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-420", - "isStable": false, - "releasedAt": "2022-06-14T20:11:30Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-420", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-421", - "isStable": false, - "releasedAt": "2022-06-15T20:13:18Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-421", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-422", - "isStable": false, - "releasedAt": "2022-06-17T20:12:46Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-422", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-423", - "isStable": false, - "releasedAt": "2022-06-20T08:45:12Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-423", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-424", - "isStable": false, - "releasedAt": "2022-06-20T20:10:38Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-424", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-425", - "isStable": false, - "releasedAt": "2022-06-21T20:12:50Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-425", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-426", - "isStable": false, - "releasedAt": "2022-06-22T20:10:45Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-426", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-427", - "isStable": false, - "releasedAt": "2022-06-23T20:12:10Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-427", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-428", - "isStable": false, - "releasedAt": "2022-06-23T20:26:33Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-428", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-429", - "isStable": false, - "releasedAt": "2022-06-27T20:10:25Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-429", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3-eap-430", - "isStable": false, - "releasedAt": "2022-06-28T20:09:45Z", - "semanticPart": "2.0.3", - "stabilityMarker": "-eap-430", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-431", - "isStable": false, - "releasedAt": "2022-06-28T20:24:13Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-431", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-432", - "isStable": false, - "releasedAt": "2022-06-30T20:10:26Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-432", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-433", - "isStable": false, - "releasedAt": "2022-07-04T20:10:38Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-433", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-434", - "isStable": false, - "releasedAt": "2022-07-06T20:11:03Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-434", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-435", - "isStable": false, - "releasedAt": "2022-07-07T20:11:01Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-435", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-436", - "isStable": false, - "releasedAt": "2022-07-08T20:10:32Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-436", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-437", - "isStable": false, - "releasedAt": "2022-07-08T20:25:05Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-437", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-1.7.0-eap-438", - "isStable": false, - "releasedAt": "2022-07-12T13:33:54Z", - "semanticPart": "2.0.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-1.7.0-eap-438" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-1.7.0-eap-439", - "isStable": false, - "releasedAt": "2022-07-12T20:10:09Z", - "semanticPart": "2.0.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-1.7.0-eap-439" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2-1.7.0-eap-441", - "isStable": false, - "releasedAt": "2022-07-13T08:05:51Z", - "semanticPart": "2.0.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-1.7.0-eap-441" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-442", - "isStable": false, - "releasedAt": "2022-07-13T20:10:50Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-442", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-443", - "isStable": false, - "releasedAt": "2022-07-14T20:13:39Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-443", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-444", - "isStable": false, - "releasedAt": "2022-07-21T08:46:58Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-444", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-445", - "isStable": false, - "releasedAt": "2022-07-21T20:11:23Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-445", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-446", - "isStable": false, - "releasedAt": "2022-07-22T20:14:17Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-446", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-447", - "isStable": false, - "releasedAt": "2022-07-22T21:08:47Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-447", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-448", - "isStable": false, - "releasedAt": "2022-07-25T07:54:45Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-448" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-449", - "isStable": false, - "releasedAt": "2022-07-25T20:11:11Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-449", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-450", - "isStable": false, - "releasedAt": "2022-07-26T06:08:44Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-450" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-451", - "isStable": false, - "releasedAt": "2022-07-26T10:05:59Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-451" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-452", - "isStable": false, - "releasedAt": "2022-07-26T14:09:09Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-452" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-453", - "isStable": false, - "releasedAt": "2022-07-26T20:07:25Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-453", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-454", - "isStable": false, - "releasedAt": "2022-07-27T08:33:52Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-454" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-455", - "isStable": false, - "releasedAt": "2022-07-28T09:44:14Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-455" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-456", - "isStable": false, - "releasedAt": "2022-07-28T12:47:54Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-456" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-457", - "isStable": false, - "releasedAt": "2022-07-29T09:44:32Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-457" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-458", - "isStable": false, - "releasedAt": "2022-08-08T20:07:33Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-458", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-459", - "isStable": false, - "releasedAt": "2022-08-08T20:17:20Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-459" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-460", - "isStable": false, - "releasedAt": "2022-08-09T08:50:41Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-460" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-461", - "isStable": false, - "releasedAt": "2022-08-09T09:25:24Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-461" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-462", - "isStable": false, - "releasedAt": "2022-08-09T09:34:57Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-462" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-463", - "isStable": false, - "releasedAt": "2022-08-09T20:07:56Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-463" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-465", - "isStable": false, - "releasedAt": "2022-08-10T07:18:01Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-465" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-space-eap-466", - "isStable": false, - "releasedAt": "2022-08-10T07:26:06Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": "-space-eap-466" - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-467", - "isStable": false, - "releasedAt": "2022-08-10T20:08:51Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-467", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-468", - "isStable": false, - "releasedAt": "2022-08-11T20:09:43Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-468", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-470", - "isStable": false, - "releasedAt": "2022-08-15T20:09:36Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-470", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-472", - "isStable": false, - "releasedAt": "2022-08-17T20:12:33Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-472", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-473", - "isStable": false, - "releasedAt": "2022-08-18T20:08:24Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-473", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-474", - "isStable": false, - "releasedAt": "2022-08-18T20:16:30Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-474", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-475", - "isStable": false, - "releasedAt": "2022-08-20T20:12:23Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-475", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-476", - "isStable": false, - "releasedAt": "2022-08-22T20:09:05Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-476", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0-eap-479", - "isStable": false, - "releasedAt": "2022-08-24T20:13:44Z", - "semanticPart": "2.1.0", - "stabilityMarker": "-eap-479", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-480", - "isStable": false, - "releasedAt": "2022-08-25T20:09:27Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-480", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-481", - "isStable": false, - "releasedAt": "2022-08-25T20:17:56Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-481", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-482", - "isStable": false, - "releasedAt": "2022-08-26T20:09:07Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-482", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-483", - "isStable": false, - "releasedAt": "2022-08-26T20:17:01Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-483", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-484", - "isStable": false, - "releasedAt": "2022-08-29T20:09:41Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-484", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-485", - "isStable": false, - "releasedAt": "2022-08-30T20:07:59Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-485", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-486", - "isStable": false, - "releasedAt": "2022-08-31T20:07:34Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-486", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-487", - "isStable": false, - "releasedAt": "2022-08-31T20:15:38Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-487", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-488", - "isStable": false, - "releasedAt": "2022-09-01T20:09:41Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-488", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-489", - "isStable": false, - "releasedAt": "2022-09-02T20:07:22Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-489", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-490", - "isStable": false, - "releasedAt": "2022-09-02T20:15:13Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-490", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-491", - "isStable": false, - "releasedAt": "2022-09-05T08:08:59Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-491", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-492", - "isStable": false, - "releasedAt": "2022-09-05T08:54:06Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-492", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-493", - "isStable": false, - "releasedAt": "2022-09-05T20:07:28Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-493", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-494", - "isStable": false, - "releasedAt": "2022-09-05T20:16:46Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-494", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-495", - "isStable": false, - "releasedAt": "2022-09-06T20:08:15Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-495", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-496", - "isStable": false, - "releasedAt": "2022-09-06T20:15:53Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-496", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-497", - "isStable": false, - "releasedAt": "2022-09-07T20:08:56Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-497", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-498", - "isStable": false, - "releasedAt": "2022-09-07T20:16:35Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-498", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-499", - "isStable": false, - "releasedAt": "2022-09-08T20:07:09Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-499", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-500", - "isStable": false, - "releasedAt": "2022-09-08T20:14:40Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-500", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-501", - "isStable": false, - "releasedAt": "2022-09-26T20:10:19Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-501", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-502", - "isStable": false, - "releasedAt": "2022-09-26T20:21:36Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-502", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-503", - "isStable": false, - "releasedAt": "2022-09-27T20:08:24Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-503", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-504", - "isStable": false, - "releasedAt": "2022-09-27T20:19:09Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-504", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-505", - "isStable": false, - "releasedAt": "2022-09-28T20:15:11Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-505", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-506", - "isStable": false, - "releasedAt": "2022-09-29T20:10:46Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-506", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-507", - "isStable": false, - "releasedAt": "2022-09-29T20:25:32Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-507", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-508", - "isStable": false, - "releasedAt": "2022-09-30T20:09:28Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-508", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-509", - "isStable": false, - "releasedAt": "2022-10-03T20:08:50Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-509", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-510", - "isStable": false, - "releasedAt": "2022-10-04T20:11:26Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-510", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-511", - "isStable": false, - "releasedAt": "2022-10-05T20:08:34Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-511", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2-eap-512", - "isStable": false, - "releasedAt": "2022-10-05T20:20:38Z", - "semanticPart": "2.1.2", - "stabilityMarker": "-eap-512", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-513", - "isStable": false, - "releasedAt": "2022-10-06T20:10:22Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-513", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1-eap-514", - "isStable": false, - "releasedAt": "2022-10-06T20:21:05Z", - "semanticPart": "2.1.1", - "stabilityMarker": "-eap-514", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-516", - "isStable": false, - "releasedAt": "2022-10-10T20:11:21Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-516", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-515", - "isStable": false, - "releasedAt": "2022-10-10T20:28:35Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-515", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-517", - "isStable": false, - "releasedAt": "2022-10-11T20:11:40Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-517", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-518", - "isStable": false, - "releasedAt": "2022-10-12T20:08:38Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-518", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-519", - "isStable": false, - "releasedAt": "2022-10-12T20:16:03Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-519", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-520", - "isStable": false, - "releasedAt": "2022-10-14T20:09:17Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-520", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-521", - "isStable": false, - "releasedAt": "2022-10-17T20:09:18Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-521", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-522", - "isStable": false, - "releasedAt": "2022-10-18T20:09:18Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-522", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-523", - "isStable": false, - "releasedAt": "2022-10-19T07:59:04Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-523", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-524", - "isStable": false, - "releasedAt": "2022-10-19T20:06:56Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-524", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-525", - "isStable": false, - "releasedAt": "2022-10-20T20:08:55Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-525", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-526", - "isStable": false, - "releasedAt": "2022-10-24T20:06:46Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-526", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-527", - "isStable": false, - "releasedAt": "2022-10-24T20:14:11Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-527", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-528", - "isStable": false, - "releasedAt": "2022-10-25T20:09:18Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-528", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-529", - "isStable": false, - "releasedAt": "2022-10-25T20:18:28Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-529", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-531", - "isStable": false, - "releasedAt": "2022-10-26T10:12:23Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-531", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-532", - "isStable": false, - "releasedAt": "2022-10-26T20:07:04Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-532", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-533", - "isStable": false, - "releasedAt": "2022-10-27T20:06:59Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-533", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-534", - "isStable": false, - "releasedAt": "2022-10-28T20:06:28Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-534", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-535", - "isStable": false, - "releasedAt": "2022-10-31T20:07:30Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-535", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-536", - "isStable": false, - "releasedAt": "2022-11-02T20:06:53Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-536", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-537", - "isStable": false, - "releasedAt": "2022-11-02T20:14:22Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-537", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3-eap-538", - "isStable": false, - "releasedAt": "2022-11-03T20:06:51Z", - "semanticPart": "2.1.3", - "stabilityMarker": "-eap-538", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-539", - "isStable": false, - "releasedAt": "2022-11-04T20:07:25Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-539", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-540", - "isStable": false, - "releasedAt": "2022-11-07T20:07:19Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-540", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-541", - "isStable": false, - "releasedAt": "2022-11-08T20:07:20Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-541", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-542", - "isStable": false, - "releasedAt": "2022-11-09T20:08:32Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-542", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-543", - "isStable": false, - "releasedAt": "2022-11-10T20:06:49Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-543", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-544", - "isStable": false, - "releasedAt": "2022-11-11T20:07:48Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-544", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-545", - "isStable": false, - "releasedAt": "2022-11-14T20:10:02Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-545", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-546", - "isStable": false, - "releasedAt": "2022-11-15T20:06:56Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-546", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-547", - "isStable": false, - "releasedAt": "2022-11-16T20:08:17Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-547", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-548", - "isStable": false, - "releasedAt": "2022-11-17T20:07:45Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-548", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-549", - "isStable": false, - "releasedAt": "2022-11-18T20:06:41Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-549", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-550", - "isStable": false, - "releasedAt": "2022-11-21T08:11:06Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-550", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-551", - "isStable": false, - "releasedAt": "2022-11-21T20:06:58Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-551", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-552", - "isStable": false, - "releasedAt": "2022-11-22T20:10:13Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-552", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-553", - "isStable": false, - "releasedAt": "2022-11-23T17:18:58Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-553", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-554", - "isStable": false, - "releasedAt": "2022-11-23T20:10:09Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-554", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-555", - "isStable": false, - "releasedAt": "2022-11-24T20:08:37Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-555", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-557", - "isStable": false, - "releasedAt": "2022-11-25T20:11:05Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-557", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-558", - "isStable": false, - "releasedAt": "2022-11-28T20:07:13Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-558", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-559", - "isStable": false, - "releasedAt": "2022-11-28T20:14:52Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-559", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-560", - "isStable": false, - "releasedAt": "2022-11-29T20:08:27Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-560", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-561", - "isStable": false, - "releasedAt": "2022-11-30T20:09:15Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-561", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-562", - "isStable": false, - "releasedAt": "2022-12-01T20:07:38Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-562", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-563", - "isStable": false, - "releasedAt": "2022-12-02T20:10:59Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-563", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-eap-564", - "isStable": false, - "releasedAt": "2022-12-06T20:07:17Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-eap-564", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.1-eap-565", - "isStable": false, - "releasedAt": "2022-12-07T18:59:06Z", - "semanticPart": "2.2.1", - "stabilityMarker": "-eap-565", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.1-eap-566", - "isStable": false, - "releasedAt": "2022-12-07T20:05:49Z", - "semanticPart": "2.2.1", - "stabilityMarker": "-eap-566", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-567", - "isStable": false, - "releasedAt": "2022-12-08T20:04:07Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-567", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-568", - "isStable": false, - "releasedAt": "2022-12-09T20:04:03Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-568", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-569", - "isStable": false, - "releasedAt": "2022-12-12T20:06:29Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-569", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-570", - "isStable": false, - "releasedAt": "2022-12-12T20:12:48Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-570", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-571", - "isStable": false, - "releasedAt": "2022-12-13T20:04:52Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-571", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-572", - "isStable": false, - "releasedAt": "2022-12-13T20:13:36Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-572", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-573", - "isStable": false, - "releasedAt": "2022-12-14T20:04:19Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-573", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-574", - "isStable": false, - "releasedAt": "2022-12-14T20:12:50Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-574", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-575", - "isStable": false, - "releasedAt": "2022-12-15T20:05:41Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-575", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-576", - "isStable": false, - "releasedAt": "2022-12-19T20:03:53Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-576", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-577", - "isStable": false, - "releasedAt": "2022-12-19T20:12:18Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-577", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-578", - "isStable": false, - "releasedAt": "2022-12-20T20:07:44Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-578", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-579", - "isStable": false, - "releasedAt": "2022-12-20T20:15:58Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-579", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-580", - "isStable": false, - "releasedAt": "2022-12-27T20:06:39Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-580", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-581", - "isStable": false, - "releasedAt": "2022-12-28T20:04:11Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-581", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-582", - "isStable": false, - "releasedAt": "2023-01-02T20:08:30Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-582", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-583", - "isStable": false, - "releasedAt": "2023-01-03T20:05:56Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-583", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-584", - "isStable": false, - "releasedAt": "2023-01-05T20:04:31Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-584", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-585", - "isStable": false, - "releasedAt": "2023-01-05T20:10:54Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-585", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-586", - "isStable": false, - "releasedAt": "2023-01-06T20:04:01Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-586", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-587", - "isStable": false, - "releasedAt": "2023-01-09T20:06:16Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-587", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2-eap-588", - "isStable": false, - "releasedAt": "2023-01-09T20:15:00Z", - "semanticPart": "2.2.2", - "stabilityMarker": "-eap-588", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-589", - "isStable": false, - "releasedAt": "2023-01-10T20:06:25Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-589", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-590", - "isStable": false, - "releasedAt": "2023-01-11T20:07:39Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-590", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-591", - "isStable": false, - "releasedAt": "2023-01-12T20:07:23Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-591", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-592", - "isStable": false, - "releasedAt": "2023-01-16T20:09:31Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-592", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-593", - "isStable": false, - "releasedAt": "2023-01-16T20:18:28Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-593", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-594", - "isStable": false, - "releasedAt": "2023-01-17T20:04:43Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-594", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-595", - "isStable": false, - "releasedAt": "2023-01-18T20:07:54Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-595", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-596", - "isStable": false, - "releasedAt": "2023-01-19T20:08:03Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-596", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-597", - "isStable": false, - "releasedAt": "2023-01-23T20:07:33Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-597", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-598", - "isStable": false, - "releasedAt": "2023-01-24T20:09:41Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-598", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-599", - "isStable": false, - "releasedAt": "2023-01-30T20:07:29Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-599", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-600", - "isStable": false, - "releasedAt": "2023-01-31T20:08:30Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-600", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-601", - "isStable": false, - "releasedAt": "2023-02-06T20:06:28Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-601", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-602", - "isStable": false, - "releasedAt": "2023-02-06T20:11:24Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-602", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-603", - "isStable": false, - "releasedAt": "2023-02-09T20:07:41Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-603", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-604", - "isStable": false, - "releasedAt": "2023-02-10T20:03:58Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-604", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-605", - "isStable": false, - "releasedAt": "2023-02-13T20:05:51Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-605", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-606", - "isStable": false, - "releasedAt": "2023-02-13T20:17:53Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-606", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-607", - "isStable": false, - "releasedAt": "2023-02-14T20:04:26Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-607", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-608", - "isStable": false, - "releasedAt": "2023-02-17T20:09:04Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-608", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-609", - "isStable": false, - "releasedAt": "2023-02-17T20:13:10Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-609", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-610", - "isStable": false, - "releasedAt": "2023-02-21T20:04:30Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-610", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-611", - "isStable": false, - "releasedAt": "2023-02-22T20:04:18Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-611", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-612", - "isStable": false, - "releasedAt": "2023-02-22T20:14:33Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-612", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-613", - "isStable": false, - "releasedAt": "2023-02-24T20:04:11Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-613", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-614", - "isStable": false, - "releasedAt": "2023-02-24T20:11:37Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-614", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4-eap-615", - "isStable": false, - "releasedAt": "2023-02-28T20:04:33Z", - "semanticPart": "2.2.4", - "stabilityMarker": "-eap-615", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-616", - "isStable": false, - "releasedAt": "2023-02-28T20:10:53Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-616", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-617", - "isStable": false, - "releasedAt": "2023-03-01T20:03:49Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-617", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-618", - "isStable": false, - "releasedAt": "2023-03-03T20:06:09Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-618", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-619", - "isStable": false, - "releasedAt": "2023-03-06T20:04:05Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-619", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-620", - "isStable": false, - "releasedAt": "2023-03-08T20:06:56Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-620", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-621", - "isStable": false, - "releasedAt": "2023-03-09T20:04:00Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-621", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-622", - "isStable": false, - "releasedAt": "2023-03-10T20:05:07Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-622", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-623", - "isStable": false, - "releasedAt": "2023-03-14T20:07:58Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-623", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-624", - "isStable": false, - "releasedAt": "2023-03-15T20:05:29Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-624", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-625", - "isStable": false, - "releasedAt": "2023-03-16T20:04:04Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-625", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-626", - "isStable": false, - "releasedAt": "2023-03-17T20:06:49Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-626", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-627", - "isStable": false, - "releasedAt": "2023-03-20T20:03:56Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-627", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-628", - "isStable": false, - "releasedAt": "2023-03-21T20:06:16Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-628", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-629", - "isStable": false, - "releasedAt": "2023-03-22T20:05:15Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-629", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-630", - "isStable": false, - "releasedAt": "2023-03-23T20:05:06Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-630", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-631", - "isStable": false, - "releasedAt": "2023-03-24T20:05:20Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-631", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-632", - "isStable": false, - "releasedAt": "2023-03-25T20:06:23Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-632", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-633", - "isStable": false, - "releasedAt": "2023-03-27T20:06:19Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-633", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-634", - "isStable": false, - "releasedAt": "2023-03-28T20:06:41Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-634", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-635", - "isStable": false, - "releasedAt": "2023-03-29T20:07:40Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-635", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-636", - "isStable": false, - "releasedAt": "2023-03-30T20:06:31Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-636", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-637", - "isStable": false, - "releasedAt": "2023-04-03T20:08:00Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-637", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-638", - "isStable": false, - "releasedAt": "2023-04-03T20:13:11Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-638", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-640", - "isStable": false, - "releasedAt": "2023-04-05T20:05:04Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-640", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3-eap-645", - "isStable": false, - "releasedAt": "2023-04-08T12:45:08Z", - "semanticPart": "2.2.3", - "stabilityMarker": "-eap-645", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-648", - "isStable": false, - "releasedAt": "2023-04-10T16:20:33Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-648", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-649", - "isStable": false, - "releasedAt": "2023-04-10T20:08:24Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-649", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-651", - "isStable": false, - "releasedAt": "2023-04-12T20:06:56Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-651", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-653", - "isStable": false, - "releasedAt": "2023-04-13T20:10:08Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-653", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-654", - "isStable": false, - "releasedAt": "2023-04-18T03:48:14Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-654", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-655", - "isStable": false, - "releasedAt": "2023-04-18T20:09:24Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-655", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-eap-656", - "isStable": false, - "releasedAt": "2023-04-19T20:06:19Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-eap-656", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-657", - "isStable": false, - "releasedAt": "2023-04-20T20:07:50Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-657", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-658", - "isStable": false, - "releasedAt": "2023-04-21T20:08:08Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-658", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-659", - "isStable": false, - "releasedAt": "2023-04-21T20:15:09Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-659", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-660", - "isStable": false, - "releasedAt": "2023-04-25T20:05:59Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-660", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-661", - "isStable": false, - "releasedAt": "2023-04-26T20:06:38Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-661", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-662", - "isStable": false, - "releasedAt": "2023-04-27T20:06:13Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-662", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-663", - "isStable": false, - "releasedAt": "2023-04-27T20:12:49Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-663", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-664", - "isStable": false, - "releasedAt": "2023-04-28T20:07:41Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-664", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-665", - "isStable": false, - "releasedAt": "2023-04-28T20:14:24Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-665", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-666", - "isStable": false, - "releasedAt": "2023-05-01T20:06:17Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-666", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-667", - "isStable": false, - "releasedAt": "2023-05-02T12:00:28Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-667", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-668", - "isStable": false, - "releasedAt": "2023-05-02T20:06:06Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-668", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-669", - "isStable": false, - "releasedAt": "2023-05-04T20:05:48Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-669", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-670", - "isStable": false, - "releasedAt": "2023-05-05T20:06:21Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-670", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-671", - "isStable": false, - "releasedAt": "2023-05-08T20:06:38Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-671", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-672", - "isStable": false, - "releasedAt": "2023-05-10T20:06:07Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-672", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-673", - "isStable": false, - "releasedAt": "2023-05-11T20:06:13Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-673", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-674", - "isStable": false, - "releasedAt": "2023-05-12T20:07:34Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-674", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-675", - "isStable": false, - "releasedAt": "2023-05-15T20:08:29Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-675", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-676", - "isStable": false, - "releasedAt": "2023-05-16T20:07:44Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-676", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-677", - "isStable": false, - "releasedAt": "2023-05-17T20:08:02Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-677", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-678", - "isStable": false, - "releasedAt": "2023-05-19T20:06:15Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-678", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-679", - "isStable": false, - "releasedAt": "2023-05-20T20:09:51Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-679", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-680", - "isStable": false, - "releasedAt": "2023-05-23T20:07:47Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-680", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-681", - "isStable": false, - "releasedAt": "2023-05-24T20:07:49Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-681", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-682", - "isStable": false, - "releasedAt": "2023-05-25T20:08:30Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-682", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-683", - "isStable": false, - "releasedAt": "2023-05-29T20:07:45Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-683", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-684", - "isStable": false, - "releasedAt": "2023-05-31T20:07:11Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-684", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-685", - "isStable": false, - "releasedAt": "2023-05-31T20:15:08Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-685", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-686", - "isStable": false, - "releasedAt": "2023-06-01T20:07:31Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-686", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-687", - "isStable": false, - "releasedAt": "2023-06-01T20:15:53Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-687", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-688", - "isStable": false, - "releasedAt": "2023-06-02T20:07:54Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-688", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-689", - "isStable": false, - "releasedAt": "2023-06-02T20:14:46Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-689", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-690", - "isStable": false, - "releasedAt": "2023-06-05T20:07:29Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-690", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-691", - "isStable": false, - "releasedAt": "2023-06-06T20:07:44Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-691", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-692", - "isStable": false, - "releasedAt": "2023-06-07T20:09:11Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-692", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-693", - "isStable": false, - "releasedAt": "2023-06-12T20:07:50Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-693", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-694", - "isStable": false, - "releasedAt": "2023-06-12T20:15:14Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-694", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-695", - "isStable": false, - "releasedAt": "2023-06-13T20:08:01Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-695", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-696", - "isStable": false, - "releasedAt": "2023-06-20T14:57:38Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-696", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-697", - "isStable": false, - "releasedAt": "2023-06-20T20:08:28Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-697", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-698", - "isStable": false, - "releasedAt": "2023-06-20T20:17:10Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-698", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-699", - "isStable": false, - "releasedAt": "2023-06-21T20:08:40Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-699", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-700", - "isStable": false, - "releasedAt": "2023-06-23T12:49:43Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-700", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-701", - "isStable": false, - "releasedAt": "2023-06-26T20:07:48Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-701", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-702", - "isStable": false, - "releasedAt": "2023-06-27T13:20:11Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-702", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-703", - "isStable": false, - "releasedAt": "2023-06-27T20:05:57Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-703", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-705", - "isStable": false, - "releasedAt": "2023-06-28T01:35:49Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-705", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-706", - "isStable": false, - "releasedAt": "2023-06-28T14:32:49Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-706", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-707", - "isStable": false, - "releasedAt": "2023-06-28T20:05:11Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-707", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-708", - "isStable": false, - "releasedAt": "2023-06-28T20:10:59Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-708", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-709", - "isStable": false, - "releasedAt": "2023-06-29T11:05:45Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-709", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2-eap-710", - "isStable": false, - "releasedAt": "2023-06-29T20:05:16Z", - "semanticPart": "2.3.2", - "stabilityMarker": "-eap-710", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-711", - "isStable": false, - "releasedAt": "2023-06-30T13:00:56Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-711", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-712", - "isStable": false, - "releasedAt": "2023-06-30T20:05:20Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-712", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-713", - "isStable": false, - "releasedAt": "2023-07-03T20:05:28Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-713", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-714", - "isStable": false, - "releasedAt": "2023-07-05T20:05:22Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-714", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-715", - "isStable": false, - "releasedAt": "2023-07-06T06:47:23Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-715", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-716", - "isStable": false, - "releasedAt": "2023-07-06T09:15:59Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-716", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-717", - "isStable": false, - "releasedAt": "2023-07-06T20:06:28Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-717", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-718", - "isStable": false, - "releasedAt": "2023-07-06T20:11:57Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-718", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-719", - "isStable": false, - "releasedAt": "2023-07-06T20:17:43Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-719", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-720", - "isStable": false, - "releasedAt": "2023-07-07T20:04:59Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-720", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-721", - "isStable": false, - "releasedAt": "2023-07-07T20:10:34Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-721", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-722", - "isStable": false, - "releasedAt": "2023-07-08T20:07:03Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-722", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-723", - "isStable": false, - "releasedAt": "2023-07-08T20:12:47Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-723", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1-eap-724", - "isStable": false, - "releasedAt": "2023-07-10T13:00:42Z", - "semanticPart": "2.3.1", - "stabilityMarker": "-eap-724", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-725", - "isStable": false, - "releasedAt": "2023-07-10T20:05:19Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-725", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-726", - "isStable": false, - "releasedAt": "2023-07-10T20:10:57Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-726", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-727", - "isStable": false, - "releasedAt": "2023-07-12T14:42:43Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-727", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-728", - "isStable": false, - "releasedAt": "2023-07-12T20:07:07Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-728", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-730", - "isStable": false, - "releasedAt": "2023-07-13T20:05:50Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-730", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-731", - "isStable": false, - "releasedAt": "2023-07-13T20:12:29Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-731", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-732", - "isStable": false, - "releasedAt": "2023-07-13T20:18:39Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-732", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-733", - "isStable": false, - "releasedAt": "2023-07-13T20:57:23Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-733", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-734", - "isStable": false, - "releasedAt": "2023-07-14T11:16:18Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-734", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-736", - "isStable": false, - "releasedAt": "2023-07-14T20:11:20Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-736", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-737", - "isStable": false, - "releasedAt": "2023-07-17T16:48:57Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-737", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-738", - "isStable": false, - "releasedAt": "2023-07-17T17:32:14Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-738", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-739", - "isStable": false, - "releasedAt": "2023-07-17T20:07:09Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-739", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-740", - "isStable": false, - "releasedAt": "2023-07-18T20:05:23Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-740", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-741", - "isStable": false, - "releasedAt": "2023-07-18T20:10:48Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-741", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-751", - "isStable": false, - "releasedAt": "2023-07-26T10:57:14Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-751", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-756", - "isStable": false, - "releasedAt": "2023-07-31T07:13:14Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-756", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-757", - "isStable": false, - "releasedAt": "2023-07-31T09:09:50Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-757", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-758", - "isStable": false, - "releasedAt": "2023-07-31T20:07:13Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-758", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-759", - "isStable": false, - "releasedAt": "2023-07-31T20:13:40Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-759", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-761", - "isStable": false, - "releasedAt": "2023-08-01T20:05:49Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-761", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-762", - "isStable": false, - "releasedAt": "2023-08-01T20:12:20Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-762", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-763", - "isStable": false, - "releasedAt": "2023-08-02T20:05:15Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-763", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-764", - "isStable": false, - "releasedAt": "2023-08-04T20:05:26Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-764", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-765", - "isStable": false, - "releasedAt": "2023-08-07T20:05:45Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-765", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-766", - "isStable": false, - "releasedAt": "2023-08-08T20:05:07Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-766", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-767", - "isStable": false, - "releasedAt": "2023-08-09T20:05:20Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-767", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-768", - "isStable": false, - "releasedAt": "2023-08-10T20:06:31Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-768", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-769", - "isStable": false, - "releasedAt": "2023-08-11T20:06:49Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-769", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-770", - "isStable": false, - "releasedAt": "2023-08-14T20:05:42Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-770", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-771", - "isStable": false, - "releasedAt": "2023-08-16T20:06:08Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-771", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-772", - "isStable": false, - "releasedAt": "2023-08-17T20:07:09Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-772", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-773", - "isStable": false, - "releasedAt": "2023-08-19T20:07:33Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-773", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-774", - "isStable": false, - "releasedAt": "2023-08-20T20:06:59Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-774", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-775", - "isStable": false, - "releasedAt": "2023-08-21T20:06:04Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-775", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-776", - "isStable": false, - "releasedAt": "2023-08-21T20:11:41Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-776", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-777", - "isStable": false, - "releasedAt": "2023-08-22T20:06:05Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-777", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-778", - "isStable": false, - "releasedAt": "2023-08-22T20:13:25Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-778", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-779", - "isStable": false, - "releasedAt": "2023-08-28T20:06:25Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-779", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-780", - "isStable": false, - "releasedAt": "2023-08-30T20:08:51Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-780", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3-eap-781", - "isStable": false, - "releasedAt": "2023-08-30T20:14:14Z", - "semanticPart": "2.3.3", - "stabilityMarker": "-eap-781", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-784", - "isStable": false, - "releasedAt": "2023-09-01T20:07:09Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-784", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-785", - "isStable": false, - "releasedAt": "2023-09-01T20:12:53Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-785", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-786", - "isStable": false, - "releasedAt": "2023-09-02T18:46:33Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-786", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-787", - "isStable": false, - "releasedAt": "2023-09-04T11:21:45Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-787", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-788", - "isStable": false, - "releasedAt": "2023-09-04T16:19:32Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-788", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-789", - "isStable": false, - "releasedAt": "2023-09-04T20:05:37Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-789", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-790", - "isStable": false, - "releasedAt": "2023-09-05T16:12:23Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-790", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-791", - "isStable": false, - "releasedAt": "2023-09-05T20:05:49Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-791", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-792", - "isStable": false, - "releasedAt": "2023-09-07T15:06:33Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-792", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-793", - "isStable": false, - "releasedAt": "2023-09-07T20:06:57Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-793", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-794", - "isStable": false, - "releasedAt": "2023-09-07T20:12:39Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-794", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-795", - "isStable": false, - "releasedAt": "2023-09-11T20:05:50Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-795", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-796", - "isStable": false, - "releasedAt": "2023-09-11T20:12:02Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-796", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-797", - "isStable": false, - "releasedAt": "2023-09-11T21:49:39Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-797", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-799", - "isStable": false, - "releasedAt": "2023-09-11T22:04:28Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-799", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-800", - "isStable": false, - "releasedAt": "2023-09-12T05:41:57Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-800", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-801", - "isStable": false, - "releasedAt": "2023-09-18T20:05:39Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-801", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-802", - "isStable": false, - "releasedAt": "2023-09-20T20:06:48Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-802", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-803", - "isStable": false, - "releasedAt": "2023-09-21T20:07:10Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-803", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-804", - "isStable": false, - "releasedAt": "2023-09-22T20:06:49Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-804", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-805", - "isStable": false, - "releasedAt": "2023-09-25T20:06:58Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-805", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-806", - "isStable": false, - "releasedAt": "2023-09-26T20:07:08Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-806", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-807", - "isStable": false, - "releasedAt": "2023-09-28T20:06:51Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-807", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-808", - "isStable": false, - "releasedAt": "2023-09-29T20:06:24Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-808", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-809", - "isStable": false, - "releasedAt": "2023-10-02T13:45:01Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-809", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-810", - "isStable": false, - "releasedAt": "2023-10-02T20:06:57Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-810", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-813", - "isStable": false, - "releasedAt": "2023-10-04T20:07:15Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-813", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-815", - "isStable": false, - "releasedAt": "2023-10-06T20:06:20Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-815", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-816", - "isStable": false, - "releasedAt": "2023-10-10T09:37:57Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-816", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-817", - "isStable": false, - "releasedAt": "2023-10-10T20:07:53Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-817", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-818", - "isStable": false, - "releasedAt": "2023-10-12T20:06:37Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-818", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-819", - "isStable": false, - "releasedAt": "2023-10-16T20:06:08Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-819", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-820", - "isStable": false, - "releasedAt": "2023-10-16T20:29:11Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-820", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-821", - "isStable": false, - "releasedAt": "2023-10-16T21:11:01Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-821", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-822", - "isStable": false, - "releasedAt": "2023-10-17T07:47:59Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-822", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-823", - "isStable": false, - "releasedAt": "2023-10-17T13:30:08Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-823", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-824", - "isStable": false, - "releasedAt": "2023-10-17T20:07:57Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-824", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-825", - "isStable": false, - "releasedAt": "2023-10-17T20:15:01Z", - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-825", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.0-rc", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.0.0", - "stabilityMarker": "-rc", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.0.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.0.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.1.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.1.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.1.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.1.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.5", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.1.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.0-rc", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.2.0", - "stabilityMarker": "-rc", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.0-rc2", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.2.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.3-rc", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.2.3", - "stabilityMarker": "-rc", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.5", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.6", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.2.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-rc", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.3.0", - "stabilityMarker": "-rc", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-rc2", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.3.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.3.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.3.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.2-1.4.0-rc", - "isStable": false, - "releasedAt": null, - "semanticPart": "1.3.2", - "stabilityMarker": null, - "nonSemanticSuffix": "-1.4.0-rc" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.5", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.6", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.7", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.6.8", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.6.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-beta-1", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.0.0", - "stabilityMarker": "-beta-1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-rc-1", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.0.0", - "stabilityMarker": "-rc-1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.0.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.0.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.0.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.0.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.1.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.1.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.1.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.2.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.2.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.2.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.2.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.2.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.5", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.6", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.7", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-826", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-826", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-827", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-827", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-828", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-828", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-829", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-829", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-830", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-830", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-831", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-831", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-832", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-832", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.6-eap-833", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.3.6", - "stabilityMarker": "-eap-833", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.6-eap-834", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.3.6", - "stabilityMarker": "-eap-834", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-835", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-835", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.6-eap-836", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.3.6", - "stabilityMarker": "-eap-836", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-837", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-837", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.6-eap-838", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.3.6", - "stabilityMarker": "-eap-838", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-839", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-839", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-840", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-840", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-841", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-841", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-842", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-842", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-843", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-843", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-844", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-844", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-845", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-845", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-846", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-846", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-847", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-847", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-848", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-848", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-849", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-849", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-850", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-850", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-851", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-851", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-eap-852", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-eap-852", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-853", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-853", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-854", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-854", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-856", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-856", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.7-eap-857", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.3.7", - "stabilityMarker": "-eap-857", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-858", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-858", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-859", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-859", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-860", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-860", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-861", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-861", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.7-eap-862", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.3.7", - "stabilityMarker": "-eap-862", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-863", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-863", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-864", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-864", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-865", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-865", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-866", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-866", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-867", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-867", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-868", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-868", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-869", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-869", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-870", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-870", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-871", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-871", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-872", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-872", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-873", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-873", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-874", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-874", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-875", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-875", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-876", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-876", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-877", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-877", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-878", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-878", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-879", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-879", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-880", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-880", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-881", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-881", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-2-eap-884", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-2-eap-884", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-885", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-885", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-886", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-886", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-888", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-888", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "3.0.0-beta-1-eap-889", - "isStable": false, - "releasedAt": null, - "semanticPart": "3.0.0", - "stabilityMarker": "-beta-1-eap-889", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "ktor_eap" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.9", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.11", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.3.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - } - ] - }, - "licenses": { - "mainLicense": { - "name": "The Apache Software License, Version 2.0", - "url": "https://www.apache.org/licenses/LICENSE-2.0.txt" - }, - "otherLicenses": [] - }, - "groupId": "io.ktor", - "artifactId": "ktor-client-core", - "scm": { - "type": "github", - "url": "https://github.com/ktorio/ktor.git", - "urlHash": "6f0779e7fd7cac97e2186145d417bfa9f934234e53d7fc8355634a51d3ef811d", - "description": "Framework for quickly creating connected applications in Kotlin with minimal effort", - "readmeUrl": "https://raw.githubusercontent.com/ktorio/ktor/main/README.md", - "license": { - "name": "Apache License 2.0", - "url": "https://api.github.com/licenses/apache-2.0", - "htmlUrl": "https://github.com/ktorio/ktor/blob/main/LICENSE", - "spdxId": "Apache-2.0", - "key": "apache-2.0" - }, - "htmlUrl": "https://github.com/ktorio/ktor", - "isFork": false, - "ossHealthIndex": 0.5113194418722041, - "stars": 12003, - "watchers": 12003, - "forks": 992, - "subscribers": 177, - "readme": { - "rawUrl": "https://raw.githubusercontent.com/ktorio/ktor/main/README.md", - "htmlUrl": "https://github.com/ktorio/ktor/blob/main/README.md" - } - } - }, - { - "type": "maven", - "id": "maven:ch.qos.logback:logback-classic", - "idHash": "a7095fc5b723c13a5c8f660e59ebe618f07a8e31f80c77346034b6d1af4ee88a", - "rankingMetric": 0.0, - "versions": { - "latestStable": { - "type": "mavenVersion", - "normalized": { - "type": "semantic", - "versionName": "1.5.6", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ], - "vulnerability": { - "isVulnerable": false, - "issues": null - }, - "dependencies": [ - { - "groupId": "org.assertj", - "artifactId": "assertj-core", - "version": "3.23.1", - "scope": "test" - }, - { - "groupId": "org.junit.jupiter", - "artifactId": "junit-jupiter-api", - "version": "5.9.1", - "scope": "test" - }, - { - "groupId": "org.junit.jupiter", - "artifactId": "junit-jupiter-engine", - "version": "5.9.1", - "scope": "test" - }, - { - "groupId": "org.hamcrest", - "artifactId": "hamcrest-library", - "version": "2.2", - "scope": "test" - }, - { - "groupId": "ch.qos.logback", - "artifactId": "logback-core", - "version": "1.5.6", - "scope": null - }, - { - "groupId": "org.slf4j", - "artifactId": "slf4j-api", - "version": "2.0.13", - "scope": null - }, - { - "groupId": "org.slf4j", - "artifactId": "slf4j-api", - "version": "2.0.13", - "scope": "test" - }, - { - "groupId": "org.slf4j", - "artifactId": "log4j-over-slf4j", - "version": "2.0.13", - "scope": "test" - }, - { - "groupId": "org.slf4j", - "artifactId": "jul-to-slf4j", - "version": "2.0.13", - "scope": "test" - }, - { - "groupId": "ch.qos.reload4j", - "artifactId": "reload4j", - "version": "1.2.18.4", - "scope": "test" - }, - { - "groupId": "org.dom4j", - "artifactId": "dom4j", - "version": "2.0.3", - "scope": "test" - }, - { - "groupId": "jakarta.mail", - "artifactId": "jakarta.mail-api", - "version": "2.1.0", - "scope": "compile" - }, - { - "groupId": "jakarta.activation", - "artifactId": "jakarta.activation-api", - "version": "2.1.0", - "scope": "compile" - }, - { - "groupId": "org.eclipse.angus", - "artifactId": "angus-mail", - "version": "1.0.0", - "scope": "test" - }, - { - "groupId": "org.codehaus.janino", - "artifactId": "janino", - "version": "3.1.8", - "scope": null - }, - { - "groupId": "ch.qos.logback", - "artifactId": "logback-core", - "version": "1.5.6", - "scope": "test" - }, - { - "groupId": "jakarta.servlet", - "artifactId": "jakarta.servlet-api", - "version": "5.0.0", - "scope": "provided" - }, - { - "groupId": "org.apache.felix", - "artifactId": "org.apache.felix.main", - "version": "5.6.10", - "scope": "test" - }, - { - "groupId": "org.mockito", - "artifactId": "mockito-core", - "version": "4.8.0", - "scope": "test" - }, - { - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-databind", - "version": "2.15.0", - "scope": "test" - } - ], - "artifacts": [ - { - "name": "logback-classic-1.5.6-javadoc.jar", - "md5": "0a14660bfa529ba3f47e6bc79407a2df", - "sha1": "f31545d5ce9283d9b5dab496e0ce5ca7cc07e3d7", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6-sources.jar", - "md5": "4a3a673abf59a9e7f85f170ead121b18", - "sha1": "f476c6c116cd4702a0df07ab4f217f1d02bb2ed9", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6-test-sources.jar", - "md5": "abf869fcc1e2ed19de7817b161bbf325", - "sha1": "333936a80de925c9a51709bd9aaa6039390ebe7e", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6-tests.jar", - "md5": "c040eeec6626dbab334c37ad07f6b9f6", - "sha1": "7725fe38dce6fd6c703ebe497eab6a3c63ed4d83", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6.jar", - "md5": "83cff9a718cf3449f75d2bda0b9276c6", - "sha1": "afc75d260d838a3bddfb8f207c2805ed7d1b34f9", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6.pom", - "md5": "e06c058cb81a158c04fa0805f7265ad0", - "sha1": "c36ed6ab109f34e3340ef2bb7a5faac267019f8c", - "sha256": null, - "sha512": null - } - ], - "name": "Logback Classic Module", - "description": "logback-classic module", - "authors": [], - "scmUrl": null - }, - "latest": { - "type": "mavenVersion", - "normalized": { - "type": "semantic", - "versionName": "1.5.6", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ], - "vulnerability": { - "isVulnerable": false, - "issues": null - }, - "dependencies": [ - { - "groupId": "org.assertj", - "artifactId": "assertj-core", - "version": "3.23.1", - "scope": "test" - }, - { - "groupId": "org.junit.jupiter", - "artifactId": "junit-jupiter-api", - "version": "5.9.1", - "scope": "test" - }, - { - "groupId": "org.junit.jupiter", - "artifactId": "junit-jupiter-engine", - "version": "5.9.1", - "scope": "test" - }, - { - "groupId": "org.hamcrest", - "artifactId": "hamcrest-library", - "version": "2.2", - "scope": "test" - }, - { - "groupId": "ch.qos.logback", - "artifactId": "logback-core", - "version": "1.5.6", - "scope": null - }, - { - "groupId": "org.slf4j", - "artifactId": "slf4j-api", - "version": "2.0.13", - "scope": null - }, - { - "groupId": "org.slf4j", - "artifactId": "slf4j-api", - "version": "2.0.13", - "scope": "test" - }, - { - "groupId": "org.slf4j", - "artifactId": "log4j-over-slf4j", - "version": "2.0.13", - "scope": "test" - }, - { - "groupId": "org.slf4j", - "artifactId": "jul-to-slf4j", - "version": "2.0.13", - "scope": "test" - }, - { - "groupId": "ch.qos.reload4j", - "artifactId": "reload4j", - "version": "1.2.18.4", - "scope": "test" - }, - { - "groupId": "org.dom4j", - "artifactId": "dom4j", - "version": "2.0.3", - "scope": "test" - }, - { - "groupId": "jakarta.mail", - "artifactId": "jakarta.mail-api", - "version": "2.1.0", - "scope": "compile" - }, - { - "groupId": "jakarta.activation", - "artifactId": "jakarta.activation-api", - "version": "2.1.0", - "scope": "compile" - }, - { - "groupId": "org.eclipse.angus", - "artifactId": "angus-mail", - "version": "1.0.0", - "scope": "test" - }, - { - "groupId": "org.codehaus.janino", - "artifactId": "janino", - "version": "3.1.8", - "scope": null - }, - { - "groupId": "ch.qos.logback", - "artifactId": "logback-core", - "version": "1.5.6", - "scope": "test" - }, - { - "groupId": "jakarta.servlet", - "artifactId": "jakarta.servlet-api", - "version": "5.0.0", - "scope": "provided" - }, - { - "groupId": "org.apache.felix", - "artifactId": "org.apache.felix.main", - "version": "5.6.10", - "scope": "test" - }, - { - "groupId": "org.mockito", - "artifactId": "mockito-core", - "version": "4.8.0", - "scope": "test" - }, - { - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-databind", - "version": "2.15.0", - "scope": "test" - } - ], - "artifacts": [ - { - "name": "logback-classic-1.5.6-javadoc.jar", - "md5": "0a14660bfa529ba3f47e6bc79407a2df", - "sha1": "f31545d5ce9283d9b5dab496e0ce5ca7cc07e3d7", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6-sources.jar", - "md5": "4a3a673abf59a9e7f85f170ead121b18", - "sha1": "f476c6c116cd4702a0df07ab4f217f1d02bb2ed9", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6-test-sources.jar", - "md5": "abf869fcc1e2ed19de7817b161bbf325", - "sha1": "333936a80de925c9a51709bd9aaa6039390ebe7e", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6-tests.jar", - "md5": "c040eeec6626dbab334c37ad07f6b9f6", - "sha1": "7725fe38dce6fd6c703ebe497eab6a3c63ed4d83", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6.jar", - "md5": "83cff9a718cf3449f75d2bda0b9276c6", - "sha1": "afc75d260d838a3bddfb8f207c2805ed7d1b34f9", - "sha256": null, - "sha512": null - }, - { - "name": "logback-classic-1.5.6.pom", - "md5": "e06c058cb81a158c04fa0805f7265ad0", - "sha1": "c36ed6ab109f34e3340ef2bb7a5faac267019f8c", - "sha256": null, - "sha512": null - } - ], - "name": "Logback Classic Module", - "description": "logback-classic module", - "authors": [], - "scmUrl": null - }, - "all": [ - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.2.5", - "isStable": true, - "releasedAt": "2019-07-15T01:58:45.558Z", - "semanticPart": "0.2.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.3", - "isStable": true, - "releasedAt": "2019-07-15T02:08:36.930Z", - "semanticPart": "0.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.5", - "isStable": true, - "releasedAt": "2019-07-15T02:18:29.825Z", - "semanticPart": "0.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.6", - "isStable": true, - "releasedAt": "2019-07-15T02:28:26.989Z", - "semanticPart": "0.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.7", - "isStable": true, - "releasedAt": "2019-07-15T02:38:26.563Z", - "semanticPart": "0.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.7.1", - "isStable": true, - "releasedAt": "2019-07-15T02:48:31.866Z", - "semanticPart": "0.7.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.8", - "isStable": true, - "releasedAt": "2019-07-15T02:58:35.140Z", - "semanticPart": "0.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.8.1", - "isStable": true, - "releasedAt": "2019-07-15T03:08:31.703Z", - "semanticPart": "0.8.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9", - "isStable": true, - "releasedAt": "2019-07-15T03:18:32.602Z", - "semanticPart": "0.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.1", - "isStable": true, - "releasedAt": "2019-07-15T03:28:35.851Z", - "semanticPart": "0.9.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.2", - "isStable": true, - "releasedAt": "2019-07-15T05:16:46.291Z", - "semanticPart": "0.9.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.3", - "isStable": true, - "releasedAt": "2019-07-15T06:59:32.438Z", - "semanticPart": "0.9.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.4", - "isStable": true, - "releasedAt": "2019-07-15T22:44:32.259Z", - "semanticPart": "0.9.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.5", - "isStable": true, - "releasedAt": "2019-07-15T22:51:13.543Z", - "semanticPart": "0.9.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.6", - "isStable": true, - "releasedAt": "2019-07-15T22:57:52.551Z", - "semanticPart": "0.9.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.7", - "isStable": true, - "releasedAt": "2019-07-15T23:04:40.449Z", - "semanticPart": "0.9.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.8", - "isStable": true, - "releasedAt": "2019-07-15T23:11:30.267Z", - "semanticPart": "0.9.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.9", - "isStable": true, - "releasedAt": "2019-07-15T23:18:15.243Z", - "semanticPart": "0.9.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.10", - "isStable": true, - "releasedAt": "2019-07-15T03:38:37.724Z", - "semanticPart": "0.9.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.11", - "isStable": true, - "releasedAt": "2019-07-15T03:48:44.335Z", - "semanticPart": "0.9.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.12", - "isStable": true, - "releasedAt": "2019-07-15T03:58:47.229Z", - "semanticPart": "0.9.12", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.13", - "isStable": true, - "releasedAt": "2019-07-15T04:08:45.756Z", - "semanticPart": "0.9.13", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.14", - "isStable": true, - "releasedAt": "2019-07-15T04:18:37.305Z", - "semanticPart": "0.9.14", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.15", - "isStable": true, - "releasedAt": "2019-07-15T04:28:27.333Z", - "semanticPart": "0.9.15", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.16", - "isStable": true, - "releasedAt": "2019-07-15T04:38:03.635Z", - "semanticPart": "0.9.16", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.17", - "isStable": true, - "releasedAt": "2019-07-15T04:47:40Z", - "semanticPart": "0.9.17", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.18", - "isStable": true, - "releasedAt": "2019-07-15T04:57:28.455Z", - "semanticPart": "0.9.18", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.19", - "isStable": true, - "releasedAt": "2019-07-15T05:07:09.366Z", - "semanticPart": "0.9.19", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.20", - "isStable": true, - "releasedAt": "2019-07-15T05:26:28.067Z", - "semanticPart": "0.9.20", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.21", - "isStable": true, - "releasedAt": "2019-07-15T05:36:21.982Z", - "semanticPart": "0.9.21", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.22", - "isStable": true, - "releasedAt": "2019-07-15T05:46:16.640Z", - "semanticPart": "0.9.22", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.23", - "isStable": true, - "releasedAt": "2019-07-15T05:56:00.607Z", - "semanticPart": "0.9.23", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.24", - "isStable": true, - "releasedAt": "2019-07-15T06:05:27.284Z", - "semanticPart": "0.9.24", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.25", - "isStable": true, - "releasedAt": "2019-07-15T06:14:48.292Z", - "semanticPart": "0.9.25", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.26", - "isStable": true, - "releasedAt": "2019-07-15T06:23:59.355Z", - "semanticPart": "0.9.26", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.27", - "isStable": true, - "releasedAt": "2019-07-15T06:33:07.314Z", - "semanticPart": "0.9.27", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.28", - "isStable": true, - "releasedAt": "2019-07-15T06:42:00.108Z", - "semanticPart": "0.9.28", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.29", - "isStable": true, - "releasedAt": "2019-07-15T06:50:45.979Z", - "semanticPart": "0.9.29", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "0.9.30", - "isStable": true, - "releasedAt": "2019-07-15T07:08:20.466Z", - "semanticPart": "0.9.30", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.0", - "isStable": true, - "releasedAt": "2019-07-15T23:24:53.534Z", - "semanticPart": "1.0.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.1", - "isStable": true, - "releasedAt": "2019-07-15T23:31:30.024Z", - "semanticPart": "1.0.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.2", - "isStable": true, - "releasedAt": "2019-07-16T00:02:51.615Z", - "semanticPart": "1.0.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.3", - "isStable": true, - "releasedAt": "2019-07-16T00:09:00.750Z", - "semanticPart": "1.0.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.4", - "isStable": true, - "releasedAt": "2019-07-16T00:15:02.921Z", - "semanticPart": "1.0.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.5", - "isStable": true, - "releasedAt": "2019-07-16T00:20:58.925Z", - "semanticPart": "1.0.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.6", - "isStable": true, - "releasedAt": "2019-07-16T00:27:04.079Z", - "semanticPart": "1.0.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.7", - "isStable": true, - "releasedAt": "2019-07-16T00:32:52.317Z", - "semanticPart": "1.0.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.8", - "isStable": true, - "releasedAt": "2019-07-16T00:38:45.615Z", - "semanticPart": "1.0.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.9", - "isStable": true, - "releasedAt": "2019-07-16T00:44:30.801Z", - "semanticPart": "1.0.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.10", - "isStable": true, - "releasedAt": "2019-07-15T23:37:59.437Z", - "semanticPart": "1.0.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.11", - "isStable": true, - "releasedAt": "2019-07-15T23:44:17.270Z", - "semanticPart": "1.0.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.12", - "isStable": true, - "releasedAt": "2019-07-15T23:50:26.821Z", - "semanticPart": "1.0.12", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.0.13", - "isStable": true, - "releasedAt": "2019-07-15T23:56:37.958Z", - "semanticPart": "1.0.13", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.0", - "isStable": true, - "releasedAt": "2019-07-16T00:50:18.777Z", - "semanticPart": "1.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.1", - "isStable": true, - "releasedAt": "2019-07-16T00:56:02.203Z", - "semanticPart": "1.1.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.2", - "isStable": true, - "releasedAt": "2019-07-16T01:12:25.129Z", - "semanticPart": "1.1.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.3", - "isStable": true, - "releasedAt": "2019-07-16T01:17:50.404Z", - "semanticPart": "1.1.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.4", - "isStable": true, - "releasedAt": "2019-07-16T01:23:03.669Z", - "semanticPart": "1.1.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.5", - "isStable": true, - "releasedAt": "2019-07-16T01:28:27.925Z", - "semanticPart": "1.1.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.6", - "isStable": true, - "releasedAt": "2019-07-16T01:33:47.394Z", - "semanticPart": "1.1.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.7", - "isStable": true, - "releasedAt": "2019-07-16T01:39:06.097Z", - "semanticPart": "1.1.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.8", - "isStable": true, - "releasedAt": "2019-07-16T01:44:32.254Z", - "semanticPart": "1.1.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.9", - "isStable": true, - "releasedAt": "2019-07-16T01:49:56.445Z", - "semanticPart": "1.1.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.10", - "isStable": true, - "releasedAt": "2019-07-16T01:01:29.665Z", - "semanticPart": "1.1.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.1.11", - "isStable": true, - "releasedAt": "2019-07-16T01:06:55.291Z", - "semanticPart": "1.1.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.0", - "isStable": true, - "releasedAt": "2019-07-16T01:55:14.410Z", - "semanticPart": "1.2.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.1", - "isStable": true, - "releasedAt": "2019-07-16T02:00:49.824Z", - "semanticPart": "1.2.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.2", - "isStable": true, - "releasedAt": "2019-07-16T02:06:18.612Z", - "semanticPart": "1.2.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.3", - "isStable": true, - "releasedAt": "2019-07-16T02:11:51.298Z", - "semanticPart": "1.2.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.4", - "isStable": true, - "releasedAt": "2021-07-19T07:53:03.238Z", - "semanticPart": "1.2.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.4-groovyless", - "isStable": true, - "releasedAt": "2021-07-23T07:53:10.779Z", - "semanticPart": "1.2.4", - "stabilityMarker": null, - "nonSemanticSuffix": "-groovyless" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.5", - "isStable": true, - "releasedAt": "2021-07-26T17:49:30.761Z", - "semanticPart": "1.2.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.6", - "isStable": true, - "releasedAt": "2021-09-09T23:53:21.929Z", - "semanticPart": "1.2.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.7", - "isStable": true, - "releasedAt": "2021-11-11T19:49:58.868Z", - "semanticPart": "1.2.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.8", - "isStable": true, - "releasedAt": "2021-12-14T15:52:20.328Z", - "semanticPart": "1.2.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.9", - "isStable": true, - "releasedAt": "2021-12-17T13:52:24.004Z", - "semanticPart": "1.2.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.10", - "isStable": true, - "releasedAt": "2021-12-23T11:52:59.238Z", - "semanticPart": "1.2.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.11", - "isStable": true, - "releasedAt": "2022-03-05T21:52:51.794Z", - "semanticPart": "1.2.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.2.12", - "isStable": true, - "releasedAt": "2023-03-23T23:53:30.066Z", - "semanticPart": "1.2.12", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha0", - "isStable": false, - "releasedAt": "2019-07-16T02:17:22.354Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha0", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha1", - "isStable": false, - "releasedAt": "2019-07-16T02:23:09.132Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha2", - "isStable": false, - "releasedAt": "2019-07-16T02:28:51.047Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha3", - "isStable": false, - "releasedAt": "2019-07-16T02:34:43.699Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha4", - "isStable": false, - "releasedAt": "2019-07-16T02:40:20.587Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha4", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha5", - "isStable": false, - "releasedAt": "2019-11-07T01:32:26.457Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha5", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha6", - "isStable": false, - "releasedAt": "2021-07-28T23:53:02.704Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha6", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha7", - "isStable": false, - "releasedAt": "2021-08-10T15:52:21.666Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha7", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha8", - "isStable": false, - "releasedAt": "2021-08-12T23:53:04.260Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha8", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha9", - "isStable": false, - "releasedAt": "2021-08-13T13:52:16.198Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha9", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha10", - "isStable": false, - "releasedAt": "2021-08-23T15:52:20.019Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha10", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha11", - "isStable": false, - "releasedAt": "2021-12-17T19:49:44.405Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha11", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha12", - "isStable": false, - "releasedAt": "2021-12-23T01:52:41.557Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha12", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha13", - "isStable": false, - "releasedAt": "2022-01-31T19:49:57.374Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha13", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha14", - "isStable": false, - "releasedAt": "2022-02-12T01:52:39.368Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha14", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha15", - "isStable": false, - "releasedAt": "2022-05-09T19:50:26.244Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha15", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-alpha16", - "isStable": false, - "releasedAt": "2022-05-19T15:52:52.177Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-alpha16", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0-beta0", - "isStable": false, - "releasedAt": "2022-08-09T11:53:07.049Z", - "semanticPart": "1.3.0", - "stabilityMarker": "-beta0", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.0", - "isStable": true, - "releasedAt": "2022-08-28T19:50:39.806Z", - "semanticPart": "1.3.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.1", - "isStable": true, - "releasedAt": "2022-09-14T23:53:32.971Z", - "semanticPart": "1.3.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.2", - "isStable": true, - "releasedAt": "2022-10-02T21:51:43.335Z", - "semanticPart": "1.3.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.3", - "isStable": true, - "releasedAt": "2022-10-02T23:53:49.919Z", - "semanticPart": "1.3.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.4", - "isStable": true, - "releasedAt": "2022-10-07T21:51:36.758Z", - "semanticPart": "1.3.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.5", - "isStable": true, - "releasedAt": "2022-11-18T21:51:51.239Z", - "semanticPart": "1.3.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.6", - "isStable": true, - "releasedAt": "2023-03-15T15:53:22.008Z", - "semanticPart": "1.3.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.7", - "isStable": true, - "releasedAt": "2023-04-19T21:51:14.792Z", - "semanticPart": "1.3.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.8", - "isStable": true, - "releasedAt": "2023-06-13T13:52:57.597Z", - "semanticPart": "1.3.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.9", - "isStable": true, - "releasedAt": "2023-08-04T23:54:03.829Z", - "semanticPart": "1.3.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.10", - "isStable": true, - "releasedAt": "2023-08-09T13:53:17.540Z", - "semanticPart": "1.3.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.11", - "isStable": true, - "releasedAt": "2023-08-09T21:51:35.047Z", - "semanticPart": "1.3.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.0", - "isStable": true, - "releasedAt": "2022-08-28T19:50:38.574Z", - "semanticPart": "1.4.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.1", - "isStable": true, - "releasedAt": "2022-09-14T23:53:35.433Z", - "semanticPart": "1.4.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.2", - "isStable": true, - "releasedAt": "2022-10-02T19:50:38.307Z", - "semanticPart": "1.4.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.3", - "isStable": true, - "releasedAt": "2022-10-02T23:53:52.195Z", - "semanticPart": "1.4.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.4", - "isStable": true, - "releasedAt": "2022-10-10T09:53:49.142Z", - "semanticPart": "1.4.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.5", - "isStable": true, - "releasedAt": "2022-11-18T21:51:53.407Z", - "semanticPart": "1.4.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.6", - "isStable": true, - "releasedAt": "2023-03-15T15:53:20.621Z", - "semanticPart": "1.4.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.7", - "isStable": true, - "releasedAt": "2023-04-19T21:51:13.968Z", - "semanticPart": "1.4.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.8", - "isStable": true, - "releasedAt": "2023-06-13T13:52:54.437Z", - "semanticPart": "1.4.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.9", - "isStable": true, - "releasedAt": "2023-08-04T23:54:00.212Z", - "semanticPart": "1.4.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.10", - "isStable": true, - "releasedAt": "2023-08-09T11:53:47.696Z", - "semanticPart": "1.4.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.11", - "isStable": true, - "releasedAt": "2023-08-09T21:51:33.534Z", - "semanticPart": "1.4.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.12", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.3.12", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.13", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.3.13", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.12", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.12", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.13", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.13", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.3.14", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.3.14", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.4.14", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.4.14", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.2", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "1.5.6", - "isStable": true, - "releasedAt": null, - "semanticPart": "1.5.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - } - ] - }, - "licenses": null, - "groupId": "ch.qos.logback", - "artifactId": "logback-classic", - "scm": null - }, - { - "type": "maven", - "id": "maven:com.fasterxml.jackson.core:jackson-databind", - "idHash": "3eebcc2c9ff822d4ac1a6cf0c92fd14aa74f08402ea25c017fb090f6db45e3c6", - "rankingMetric": 0.6060332233672555, - "versions": { - "latestStable": { - "type": "gradleVersion", - "normalized": { - "type": "semantic", - "versionName": "2.16.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.16.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ], - "vulnerability": { - "isVulnerable": false, - "issues": null - }, - "dependencies": [ - { - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-annotations", - "version": "${jackson.version.annotations}", - "scope": null - }, - { - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-core", - "version": "${jackson.version.core}", - "scope": null - }, - { - "groupId": "org.powermock", - "artifactId": "powermock-core", - "version": "${version.powermock}", - "scope": "test" - }, - { - "groupId": "org.powermock", - "artifactId": "powermock-module-junit4", - "version": "${version.powermock}", - "scope": "test" - }, - { - "groupId": "org.powermock", - "artifactId": "powermock-api-mockito2", - "version": "${version.powermock}", - "scope": "test" - }, - { - "groupId": "com.google.guava", - "artifactId": "guava-testlib", - "version": "31.1-jre", - "scope": "test" - }, - { - "groupId": "javax.measure", - "artifactId": "jsr-275", - "version": "0.9.1", - "scope": "test" - }, - { - "groupId": "org.openjdk.jol", - "artifactId": "jol-core", - "version": "0.16", - "scope": "test" - } - ], - "artifacts": [ - { - "name": "jackson-databind-2.16.1-javadoc.jar", - "md5": "165a00a635b0b8c85b1de6055cef8958", - "sha1": "72713646adea93a14a015f788fe7c44cb5bb2b2b", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.16.1-sources.jar", - "md5": "dda7a0396303f129ca505cefebd378c0", - "sha1": "49d81b4832bc388e38901b9d6cf0f8a170820849", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.16.1.jar", - "md5": "ac71b868569d329136f2c63f34dd2c89", - "sha1": "02a16efeb840c45af1e2f31753dfe76795278b73", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.16.1.module", - "md5": "0ee21857012c7780f386ee8c5642a999", - "sha1": "523d54a6a1ed15eb79901703829c520315ec3516", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.16.1.pom", - "md5": "a69383d5f674eb6a372ea74d8e9dd28a", - "sha1": "f8f201fe4b2a734228c7ff73f1fe80e2c4e11801", - "sha256": null, - "sha512": null - } - ], - "name": "jackson-databind", - "description": "General data-binding functionality for Jackson: works on core streaming API", - "authors": [], - "scmUrl": "https://github.com/FasterXML/jackson-databind", - "variants": [ - { - "type": "withFiles", - "name": "apiElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-api" - } - }, - "dependencies": [ - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-annotations", - "version": "2.16.1" - }, - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-core", - "version": "2.16.1" - }, - { - "group": "com.fasterxml.jackson", - "module": "jackson-bom", - "version": "2.16.1" - } - ], - "files": [ - { - "name": "jackson-databind-2.16.1.jar", - "url": "jackson-databind-2.16.1.jar", - "size": 1637611, - "sha1": "2a16efeb840c45af1e2f31753dfe76795278b73", - "md5": "ac71b868569d329136f2c63f34dd2c89", - "sha256": "baf8a8ebee8f45ef68cdd5e2dd3923b3e296c0937b96ec0b4806aa3a31bccd1d", - "sha512": "e826126759ef714b35c546a524d0fc82e8ae38ad19d0502a58d360926aef3d13492092372302fcea19e78b24432838a40023ebf5dfae4e8c566478c4833ea998" - } - ] - }, - { - "type": "withFiles", - "name": "runtimeElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-runtime" - } - }, - "dependencies": [ - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-annotations", - "version": "2.16.1" - }, - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-core", - "version": "2.16.1" - }, - { - "group": "com.fasterxml.jackson", - "module": "jackson-bom", - "version": "2.16.1" - } - ], - "files": [ - { - "name": "jackson-databind-2.16.1.jar", - "url": "jackson-databind-2.16.1.jar", - "size": 1637611, - "sha1": "2a16efeb840c45af1e2f31753dfe76795278b73", - "md5": "ac71b868569d329136f2c63f34dd2c89", - "sha256": "baf8a8ebee8f45ef68cdd5e2dd3923b3e296c0937b96ec0b4806aa3a31bccd1d", - "sha512": "e826126759ef714b35c546a524d0fc82e8ae38ad19d0502a58d360926aef3d13492092372302fcea19e78b24432838a40023ebf5dfae4e8c566478c4833ea998" - } - ] - } - ], - "parentComponent": null - }, - "latest": { - "type": "gradleVersion", - "normalized": { - "type": "semantic", - "versionName": "2.17.0-rc1", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.17.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ], - "vulnerability": { - "isVulnerable": false, - "issues": null - }, - "dependencies": [ - { - "groupId": "junit", - "artifactId": "junit", - "version": "4.13.2", - "scope": "test" - }, - { - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-annotations", - "version": "2.17.0-rc1", - "scope": null - }, - { - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-core", - "version": "2.17.0-rc1", - "scope": null - }, - { - "groupId": "org.assertj", - "artifactId": "assertj-core", - "version": "3.24.2", - "scope": "test" - }, - { - "groupId": "com.google.guava", - "artifactId": "guava-testlib", - "version": "31.1-jre", - "scope": "test" - }, - { - "groupId": "javax.measure", - "artifactId": "jsr-275", - "version": "0.9.1", - "scope": "test" - }, - { - "groupId": "org.openjdk.jol", - "artifactId": "jol-core", - "version": "0.16", - "scope": "test" - }, - { - "groupId": "org.mockito", - "artifactId": "mockito-core", - "version": "4.11.0", - "scope": "test" - }, - { - "groupId": "org.mockito", - "artifactId": "mockito-inline", - "version": "4.11.0", - "scope": "test" - }, - { - "groupId": "net.bytebuddy", - "artifactId": "byte-buddy", - "version": "1.14.9", - "scope": null - } - ], - "artifacts": [ - { - "name": "jackson-databind-2.17.0-rc1-javadoc.jar", - "md5": "139af1726648ecc857d3d9003e7428d9", - "sha1": "f6e855bcd54ec93029028b8c76c0f8f2dbf1721b", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.17.0-rc1-sources.jar", - "md5": "c4f8069f6691359d2dd94bbb90d87a41", - "sha1": "3fd1c8f20decc713eef8b91ba4964ca25c4a4532", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.17.0-rc1.jar", - "md5": "14dcf804bb4583a1659a801d71607c88", - "sha1": "905f272c2e32091ea6ac3f8741f627b6880977bf", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.17.0-rc1.module", - "md5": "bdd00918f00e6a9ca3568d1dfb177128", - "sha1": "31781f0a07fd6879b8dbaff0c151fdc57b85275d", - "sha256": null, - "sha512": null - }, - { - "name": "jackson-databind-2.17.0-rc1.pom", - "md5": "bb0d344e44a69f07abc8a921b13578cc", - "sha1": "3c0c2e8666572ce69be80d4c825cb75c1798fda1", - "sha256": null, - "sha512": null - } - ], - "name": "jackson-databind", - "description": "General data-binding functionality for Jackson: works on core streaming API", - "authors": [], - "scmUrl": "https://github.com/FasterXML/jackson-databind", - "variants": [ - { - "type": "withFiles", - "name": "apiElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-api" - } - }, - "dependencies": [ - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-annotations", - "version": "2.17.0-rc1" - }, - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-core", - "version": "2.17.0-rc1" - }, - { - "group": "net.bytebuddy", - "module": "byte-buddy", - "version": "1.14.9" - }, - { - "group": "com.fasterxml.jackson", - "module": "jackson-bom", - "version": "2.17.0-rc1" - } - ], - "files": [ - { - "name": "jackson-databind-2.17.0-rc1.jar", - "url": "jackson-databind-2.17.0-rc1.jar", - "size": 1648595, - "sha1": "905f272c2e32091ea6ac3f8741f627b6880977bf", - "md5": "14dcf804bb4583a1659a801d71607c88", - "sha256": "4f8dd053af053eb2719a2d4c6202e69a4538ecd33e689c527c0ab3fcc582a25", - "sha512": "235586a4c590552262a8386d7418899ca883bf96b82f4c63e3a40497f1384e6853f15ed6be5cdebef52967e904023f2191943187e75c65f92ff4aac9f98a1909" - } - ] - }, - { - "type": "withFiles", - "name": "runtimeElements", - "attributes": { - "org.gradle.category": { - "type": "exactMatch", - "value": "library" - }, - "org.gradle.dependency.bundling": { - "type": "exactMatch", - "value": "external" - }, - "org.gradle.libraryelements": { - "type": "exactMatch", - "value": "jar" - }, - "org.gradle.usage": { - "type": "exactMatch", - "value": "java-runtime" - } - }, - "dependencies": [ - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-annotations", - "version": "2.17.0-rc1" - }, - { - "group": "com.fasterxml.jackson.core", - "module": "jackson-core", - "version": "2.17.0-rc1" - }, - { - "group": "net.bytebuddy", - "module": "byte-buddy", - "version": "1.14.9" - }, - { - "group": "com.fasterxml.jackson", - "module": "jackson-bom", - "version": "2.17.0-rc1" - } - ], - "files": [ - { - "name": "jackson-databind-2.17.0-rc1.jar", - "url": "jackson-databind-2.17.0-rc1.jar", - "size": 1648595, - "sha1": "905f272c2e32091ea6ac3f8741f627b6880977bf", - "md5": "14dcf804bb4583a1659a801d71607c88", - "sha256": "4f8dd053af053eb2719a2d4c6202e69a4538ecd33e689c527c0ab3fcc582a25", - "sha512": "235586a4c590552262a8386d7418899ca883bf96b82f4c63e3a40497f1384e6853f15ed6be5cdebef52967e904023f2191943187e75c65f92ff4aac9f98a1909" - } - ] - } - ], - "parentComponent": null - }, - "all": [ - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-RC1", - "isStable": false, - "releasedAt": "2019-07-23T09:12:39Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-RC1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-RC2", - "isStable": false, - "releasedAt": "2019-07-23T09:15:55Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-RC2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0-RC3", - "isStable": false, - "releasedAt": "2019-07-23T09:19:09Z", - "semanticPart": "2.0.0", - "stabilityMarker": "-RC3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.0", - "isStable": true, - "releasedAt": "2019-07-23T09:09:28Z", - "semanticPart": "2.0.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.1", - "isStable": true, - "releasedAt": "2019-07-23T09:22:33Z", - "semanticPart": "2.0.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.2", - "isStable": true, - "releasedAt": "2019-07-23T09:26:01Z", - "semanticPart": "2.0.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.4", - "isStable": true, - "releasedAt": "2019-07-23T09:29:38Z", - "semanticPart": "2.0.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.5", - "isStable": true, - "releasedAt": "2019-07-23T09:33:06Z", - "semanticPart": "2.0.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.0.6", - "isStable": true, - "releasedAt": "2019-07-23T09:36:38Z", - "semanticPart": "2.0.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.0", - "isStable": true, - "releasedAt": "2019-07-23T09:40:18Z", - "semanticPart": "2.1.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.1", - "isStable": true, - "releasedAt": "2019-07-23T09:44:11Z", - "semanticPart": "2.1.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.2", - "isStable": true, - "releasedAt": "2019-07-23T09:48:04Z", - "semanticPart": "2.1.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.3", - "isStable": true, - "releasedAt": "2019-07-23T09:52:04Z", - "semanticPart": "2.1.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.4", - "isStable": true, - "releasedAt": "2019-07-23T09:56:09Z", - "semanticPart": "2.1.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.1.5", - "isStable": true, - "releasedAt": "2019-07-23T10:00:16Z", - "semanticPart": "2.1.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0-rc1", - "isStable": false, - "releasedAt": "2019-07-23T10:08:31Z", - "semanticPart": "2.2.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.0", - "isStable": true, - "releasedAt": "2019-07-23T10:04:27Z", - "semanticPart": "2.2.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.1", - "isStable": true, - "releasedAt": "2019-07-23T10:12:32Z", - "semanticPart": "2.2.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.2", - "isStable": true, - "releasedAt": "2019-07-23T10:16:39Z", - "semanticPart": "2.2.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.3", - "isStable": true, - "releasedAt": "2019-07-23T10:20:47Z", - "semanticPart": "2.2.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.2.4", - "isStable": true, - "releasedAt": "2019-07-23T10:24:49Z", - "semanticPart": "2.2.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0-rc1", - "isStable": false, - "releasedAt": "2019-07-23T10:33:01Z", - "semanticPart": "2.3.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.0", - "isStable": true, - "releasedAt": "2019-07-23T10:28:53Z", - "semanticPart": "2.3.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.1", - "isStable": true, - "releasedAt": "2019-07-23T10:37:08Z", - "semanticPart": "2.3.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.2", - "isStable": true, - "releasedAt": "2019-07-23T10:41:20Z", - "semanticPart": "2.3.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.3", - "isStable": true, - "releasedAt": "2019-07-23T10:45:30Z", - "semanticPart": "2.3.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.4", - "isStable": true, - "releasedAt": "2019-07-23T10:49:44Z", - "semanticPart": "2.3.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.3.5", - "isStable": true, - "releasedAt": "2019-07-23T10:53:47Z", - "semanticPart": "2.3.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.0-rc1", - "isStable": false, - "releasedAt": "2019-07-23T11:01:52Z", - "semanticPart": "2.4.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.0-rc2", - "isStable": false, - "releasedAt": "2019-07-23T11:05:59Z", - "semanticPart": "2.4.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.0-rc3", - "isStable": false, - "releasedAt": "2019-07-23T11:10:09Z", - "semanticPart": "2.4.0", - "stabilityMarker": "-rc3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.0", - "isStable": true, - "releasedAt": "2019-07-23T10:57:49Z", - "semanticPart": "2.4.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.1", - "isStable": true, - "releasedAt": "2019-07-23T11:14:20Z", - "semanticPart": "2.4.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.1.1", - "isStable": true, - "releasedAt": "2019-07-23T11:18:32Z", - "semanticPart": "2.4.1.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.1.2", - "isStable": true, - "releasedAt": "2019-07-23T11:22:42Z", - "semanticPart": "2.4.1.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.1.3", - "isStable": true, - "releasedAt": "2019-07-23T11:26:50Z", - "semanticPart": "2.4.1.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.2", - "isStable": true, - "releasedAt": "2019-07-23T11:31:00Z", - "semanticPart": "2.4.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.3", - "isStable": true, - "releasedAt": "2019-07-23T11:35:04Z", - "semanticPart": "2.4.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.4", - "isStable": true, - "releasedAt": "2019-07-23T11:39:03Z", - "semanticPart": "2.4.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.5", - "isStable": true, - "releasedAt": "2019-07-23T11:43:04Z", - "semanticPart": "2.4.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.5.1", - "isStable": true, - "releasedAt": "2019-07-23T11:47:10Z", - "semanticPart": "2.4.5.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.4.6", - "isStable": true, - "releasedAt": "2019-07-23T11:51:06Z", - "semanticPart": "2.4.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.5.0-rc1", - "isStable": false, - "releasedAt": "2019-07-23T12:02:53Z", - "semanticPart": "2.5.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.5.0", - "isStable": true, - "releasedAt": "2019-07-23T11:58:54Z", - "semanticPart": "2.5.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.5.1", - "isStable": true, - "releasedAt": "2019-07-23T12:06:41Z", - "semanticPart": "2.5.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.5.2", - "isStable": true, - "releasedAt": "2019-07-23T12:10:31Z", - "semanticPart": "2.5.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.5.3", - "isStable": true, - "releasedAt": "2019-07-23T12:14:23Z", - "semanticPart": "2.5.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.5.5", - "isStable": true, - "releasedAt": "2019-07-23T12:22:05Z", - "semanticPart": "2.5.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.0-rc1", - "isStable": false, - "releasedAt": "2019-07-23T12:29:31Z", - "semanticPart": "2.6.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.0-rc2", - "isStable": false, - "releasedAt": "2019-07-23T12:33:15Z", - "semanticPart": "2.6.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.0-rc3", - "isStable": false, - "releasedAt": "2019-07-23T12:36:50Z", - "semanticPart": "2.6.0", - "stabilityMarker": "-rc3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.0-rc4", - "isStable": false, - "releasedAt": "2019-07-23T12:41:11Z", - "semanticPart": "2.6.0", - "stabilityMarker": "-rc4", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.0", - "isStable": true, - "releasedAt": "2019-07-23T12:25:21Z", - "semanticPart": "2.6.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.1", - "isStable": true, - "releasedAt": "2019-07-23T12:43:49Z", - "semanticPart": "2.6.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.2", - "isStable": true, - "releasedAt": "2019-07-23T12:47:13Z", - "semanticPart": "2.6.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.3", - "isStable": true, - "releasedAt": "2019-07-23T12:50:10Z", - "semanticPart": "2.6.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.4", - "isStable": true, - "releasedAt": "2019-07-23T12:53:52Z", - "semanticPart": "2.6.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.5", - "isStable": true, - "releasedAt": "2019-07-23T12:57:14Z", - "semanticPart": "2.6.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.6", - "isStable": true, - "releasedAt": "2019-07-23T13:00:32Z", - "semanticPart": "2.6.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.7", - "isStable": true, - "releasedAt": "2019-07-23T13:03:14Z", - "semanticPart": "2.6.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.7.1", - "isStable": true, - "releasedAt": "2019-07-23T13:06:06Z", - "semanticPart": "2.6.7.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.7.2", - "isStable": true, - "releasedAt": "2019-07-23T13:09:37Z", - "semanticPart": "2.6.7.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.7.3", - "isStable": true, - "releasedAt": "2019-11-07T02:31:46Z", - "semanticPart": "2.6.7.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.7.4", - "isStable": true, - "releasedAt": "2020-10-25T03:59:58Z", - "semanticPart": "2.6.7.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.6.7.5", - "isStable": true, - "releasedAt": "2021-06-22T06:00:11Z", - "semanticPart": "2.6.7.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.0-rc1", - "isStable": false, - "releasedAt": "2019-07-23T13:16:28Z", - "semanticPart": "2.7.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.0-rc2", - "isStable": false, - "releasedAt": "2019-07-23T13:19:40Z", - "semanticPart": "2.7.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.0-rc3", - "isStable": false, - "releasedAt": "2019-07-23T13:22:53Z", - "semanticPart": "2.7.0", - "stabilityMarker": "-rc3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.0", - "isStable": true, - "releasedAt": "2019-07-23T13:13:16Z", - "semanticPart": "2.7.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.1", - "isStable": true, - "releasedAt": "2019-07-23T13:26:12Z", - "semanticPart": "2.7.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.1-1", - "isStable": true, - "releasedAt": "2019-07-23T13:29:28Z", - "semanticPart": "2.7.1", - "stabilityMarker": null, - "nonSemanticSuffix": "-1" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.2", - "isStable": true, - "releasedAt": "2019-07-23T13:32:47Z", - "semanticPart": "2.7.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.3", - "isStable": true, - "releasedAt": "2019-07-23T13:36:10Z", - "semanticPart": "2.7.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.4", - "isStable": true, - "releasedAt": "2019-07-23T13:39:30Z", - "semanticPart": "2.7.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.5", - "isStable": true, - "releasedAt": "2019-07-23T13:42:16Z", - "semanticPart": "2.7.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.6", - "isStable": true, - "releasedAt": "2019-07-23T13:45:25Z", - "semanticPart": "2.7.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.7", - "isStable": true, - "releasedAt": "2019-07-23T13:48:34Z", - "semanticPart": "2.7.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.8", - "isStable": true, - "releasedAt": "2019-07-23T13:51:44Z", - "semanticPart": "2.7.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9", - "isStable": true, - "releasedAt": "2019-07-23T13:54:56Z", - "semanticPart": "2.7.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.1", - "isStable": true, - "releasedAt": "2019-07-23T13:58:10Z", - "semanticPart": "2.7.9.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.2", - "isStable": true, - "releasedAt": "2019-07-23T14:01:21Z", - "semanticPart": "2.7.9.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.3", - "isStable": true, - "releasedAt": "2019-07-23T14:04:35Z", - "semanticPart": "2.7.9.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.4", - "isStable": true, - "releasedAt": "2019-07-23T14:07:44Z", - "semanticPart": "2.7.9.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.5", - "isStable": true, - "releasedAt": "2019-07-23T14:10:57Z", - "semanticPart": "2.7.9.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.6", - "isStable": true, - "releasedAt": "2019-11-07T02:31:47Z", - "semanticPart": "2.7.9.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.7.9.7", - "isStable": true, - "releasedAt": "2020-03-10T19:59:17Z", - "semanticPart": "2.7.9.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.0.rc1", - "isStable": false, - "releasedAt": "2019-07-23T14:17:06Z", - "semanticPart": "2.8.0", - "stabilityMarker": ".rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.0.rc2", - "isStable": false, - "releasedAt": "2019-07-23T14:20:14Z", - "semanticPart": "2.8.0", - "stabilityMarker": ".rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.0", - "isStable": true, - "releasedAt": "2019-07-23T14:13:58Z", - "semanticPart": "2.8.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.1", - "isStable": true, - "releasedAt": "2019-07-23T14:23:16Z", - "semanticPart": "2.8.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.2", - "isStable": true, - "releasedAt": "2019-07-23T14:40:52Z", - "semanticPart": "2.8.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.3", - "isStable": true, - "releasedAt": "2019-07-23T14:43:36Z", - "semanticPart": "2.8.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.4", - "isStable": true, - "releasedAt": "2019-07-23T14:46:21Z", - "semanticPart": "2.8.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.5", - "isStable": true, - "releasedAt": "2019-07-23T14:48:55Z", - "semanticPart": "2.8.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.6", - "isStable": true, - "releasedAt": "2019-07-23T14:51:30Z", - "semanticPart": "2.8.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.7", - "isStable": true, - "releasedAt": "2019-07-23T14:54:01Z", - "semanticPart": "2.8.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.8", - "isStable": true, - "releasedAt": "2019-07-23T14:56:29Z", - "semanticPart": "2.8.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.8.1", - "isStable": true, - "releasedAt": "2019-07-23T14:58:48Z", - "semanticPart": "2.8.8.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.9", - "isStable": true, - "releasedAt": "2019-07-23T15:01:00Z", - "semanticPart": "2.8.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.10", - "isStable": true, - "releasedAt": "2019-07-23T14:26:24Z", - "semanticPart": "2.8.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11", - "isStable": true, - "releasedAt": "2019-07-23T14:29:23Z", - "semanticPart": "2.8.11", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11.1", - "isStable": true, - "releasedAt": "2019-07-23T14:32:26Z", - "semanticPart": "2.8.11.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11.2", - "isStable": true, - "releasedAt": "2019-07-23T14:35:21Z", - "semanticPart": "2.8.11.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11.3", - "isStable": true, - "releasedAt": "2019-07-23T14:38:03Z", - "semanticPart": "2.8.11.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11.4", - "isStable": true, - "releasedAt": "2019-11-07T02:31:49Z", - "semanticPart": "2.8.11.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11.5", - "isStable": true, - "releasedAt": "2020-02-10T02:00:25Z", - "semanticPart": "2.8.11.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.8.11.6", - "isStable": true, - "releasedAt": "2020-03-10T19:59:14Z", - "semanticPart": "2.8.11.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.0", - "isStable": true, - "releasedAt": "2019-07-23T15:03:14Z", - "semanticPart": "2.9.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.0.pr1", - "isStable": true, - "releasedAt": "2019-07-23T15:05:33Z", - "semanticPart": "2.9.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr1" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.0.pr2", - "isStable": true, - "releasedAt": "2019-07-23T15:07:42Z", - "semanticPart": "2.9.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr2" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.0.pr3", - "isStable": true, - "releasedAt": "2019-07-23T15:09:51Z", - "semanticPart": "2.9.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr3" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.0.pr4", - "isStable": true, - "releasedAt": "2019-07-23T15:12:00Z", - "semanticPart": "2.9.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr4" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.1", - "isStable": true, - "releasedAt": "2019-07-23T15:14:04Z", - "semanticPart": "2.9.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.2", - "isStable": true, - "releasedAt": "2019-07-23T15:16:17Z", - "semanticPart": "2.9.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.3", - "isStable": true, - "releasedAt": "2019-07-23T15:18:25Z", - "semanticPart": "2.9.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.4", - "isStable": true, - "releasedAt": "2019-07-23T15:20:42Z", - "semanticPart": "2.9.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.5", - "isStable": true, - "releasedAt": "2019-07-23T15:22:52Z", - "semanticPart": "2.9.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.6", - "isStable": true, - "releasedAt": "2019-07-23T15:25:01Z", - "semanticPart": "2.9.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.7", - "isStable": true, - "releasedAt": "2019-07-23T15:27:14Z", - "semanticPart": "2.9.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.8", - "isStable": true, - "releasedAt": "2019-07-23T15:29:24Z", - "semanticPart": "2.9.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.9", - "isStable": true, - "releasedAt": "2019-11-07T02:31:50Z", - "semanticPart": "2.9.9", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.9.1", - "isStable": true, - "releasedAt": "2019-11-07T02:31:46Z", - "semanticPart": "2.9.9.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.9.2", - "isStable": true, - "releasedAt": "2019-11-07T02:31:46Z", - "semanticPart": "2.9.9.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.9.3", - "isStable": true, - "releasedAt": "2019-11-07T02:31:46Z", - "semanticPart": "2.9.9.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10", - "isStable": true, - "releasedAt": "2019-11-07T02:31:47Z", - "semanticPart": "2.9.10", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.1", - "isStable": true, - "releasedAt": "2019-11-07T02:31:50Z", - "semanticPart": "2.9.10.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.2", - "isStable": true, - "releasedAt": "2020-01-03T02:01:13Z", - "semanticPart": "2.9.10.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.3", - "isStable": true, - "releasedAt": "2020-02-23T04:01:34Z", - "semanticPart": "2.9.10.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.4", - "isStable": true, - "releasedAt": "2020-04-11T19:56:19Z", - "semanticPart": "2.9.10.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.5", - "isStable": true, - "releasedAt": "2020-06-22T01:58:37Z", - "semanticPart": "2.9.10.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.6", - "isStable": true, - "releasedAt": "2020-08-25T00:00:17Z", - "semanticPart": "2.9.10.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.7", - "isStable": true, - "releasedAt": "2020-12-02T03:59:34Z", - "semanticPart": "2.9.10.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.9.10.8", - "isStable": true, - "releasedAt": "2021-01-06T03:58:16Z", - "semanticPart": "2.9.10.8", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.0", - "isStable": true, - "releasedAt": "2019-11-07T02:31:47Z", - "semanticPart": "2.10.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.0.pr1", - "isStable": true, - "releasedAt": "2019-11-07T02:31:47Z", - "semanticPart": "2.10.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr1" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.0.pr2", - "isStable": true, - "releasedAt": "2019-11-07T02:31:48Z", - "semanticPart": "2.10.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr2" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.0.pr3", - "isStable": true, - "releasedAt": "2019-11-07T02:31:48Z", - "semanticPart": "2.10.0", - "stabilityMarker": null, - "nonSemanticSuffix": ".pr3" - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.1", - "isStable": true, - "releasedAt": "2019-11-10T00:02:49Z", - "semanticPart": "2.10.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.2", - "isStable": true, - "releasedAt": "2020-01-05T03:59:28Z", - "semanticPart": "2.10.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.3", - "isStable": true, - "releasedAt": "2020-03-03T04:01:49Z", - "semanticPart": "2.10.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.4", - "isStable": true, - "releasedAt": "2020-05-03T00:00:54Z", - "semanticPart": "2.10.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.5", - "isStable": true, - "releasedAt": "2020-07-21T03:56:17Z", - "semanticPart": "2.10.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.10.5.1", - "isStable": true, - "releasedAt": "2020-12-02T06:00:17Z", - "semanticPart": "2.10.5.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.11.0.rc1", - "isStable": false, - "releasedAt": "2020-03-24T20:00:42Z", - "semanticPart": "2.11.0", - "stabilityMarker": ".rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.11.0", - "isStable": true, - "releasedAt": "2020-04-26T01:58:07Z", - "semanticPart": "2.11.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.11.1", - "isStable": true, - "releasedAt": "2020-06-25T02:54:43Z", - "semanticPart": "2.11.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.11.2", - "isStable": true, - "releasedAt": "2020-08-02T19:04:13Z", - "semanticPart": "2.11.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.11.3", - "isStable": true, - "releasedAt": "2020-10-02T02:00:12Z", - "semanticPart": "2.11.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.11.4", - "isStable": true, - "releasedAt": "2020-12-12T02:00:34Z", - "semanticPart": "2.11.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.0-rc1", - "isStable": false, - "releasedAt": "2020-10-12T01:59:32Z", - "semanticPart": "2.12.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.0-rc2", - "isStable": false, - "releasedAt": "2020-11-15T03:59:34Z", - "semanticPart": "2.12.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.0", - "isStable": true, - "releasedAt": "2020-11-29T01:59:08Z", - "semanticPart": "2.12.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.1", - "isStable": true, - "releasedAt": "2021-01-09T01:58:56Z", - "semanticPart": "2.12.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.2", - "isStable": true, - "releasedAt": "2021-03-03T22:00:18Z", - "semanticPart": "2.12.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.3", - "isStable": true, - "releasedAt": "2021-04-12T19:57:25Z", - "semanticPart": "2.12.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.4", - "isStable": true, - "releasedAt": "2021-07-06T21:57:09Z", - "semanticPart": "2.12.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.5", - "isStable": true, - "releasedAt": "2021-08-27T02:02:06Z", - "semanticPart": "2.12.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.6", - "isStable": true, - "releasedAt": "2021-12-15T04:02:45Z", - "semanticPart": "2.12.6", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.6.1", - "isStable": true, - "releasedAt": "2022-03-27T03:59:22Z", - "semanticPart": "2.12.6.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.7", - "isStable": true, - "releasedAt": "2022-05-26T19:58:16Z", - "semanticPart": "2.12.7", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.12.7.1", - "isStable": true, - "releasedAt": "2022-10-13T06:07:36Z", - "semanticPart": "2.12.7.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.0-rc1", - "isStable": false, - "releasedAt": "2021-07-14T02:02:50Z", - "semanticPart": "2.13.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.0-rc2", - "isStable": false, - "releasedAt": "2021-08-27T05:59:38Z", - "semanticPart": "2.13.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.0", - "isStable": true, - "releasedAt": "2021-09-30T21:57:57Z", - "semanticPart": "2.13.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.1", - "isStable": true, - "releasedAt": "2021-12-21T04:01:39Z", - "semanticPart": "2.13.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.2", - "isStable": true, - "releasedAt": "2022-03-06T22:02:29Z", - "semanticPart": "2.13.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.2.1", - "isStable": true, - "releasedAt": "2022-03-25T04:00:58Z", - "semanticPart": "2.13.2.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.2.2", - "isStable": true, - "releasedAt": "2022-03-29T04:04:36Z", - "semanticPart": "2.13.2.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.3", - "isStable": true, - "releasedAt": "2022-05-14T17:57:40Z", - "semanticPart": "2.13.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.4", - "isStable": true, - "releasedAt": "2022-09-04T00:04:31Z", - "semanticPart": "2.13.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.4.1", - "isStable": true, - "releasedAt": "2022-10-12T22:07:53Z", - "semanticPart": "2.13.4.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.4.2", - "isStable": true, - "releasedAt": "2022-10-13T20:05:15Z", - "semanticPart": "2.13.4.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.13.5", - "isStable": true, - "releasedAt": "2023-01-23T02:46:30Z", - "semanticPart": "2.13.5", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.0-rc1", - "isStable": false, - "releasedAt": "2022-09-26T00:14:46Z", - "semanticPart": "2.14.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.0-rc2", - "isStable": false, - "releasedAt": "2022-10-11T00:23:58Z", - "semanticPart": "2.14.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.0-rc3", - "isStable": false, - "releasedAt": "2022-10-29T00:20:49Z", - "semanticPart": "2.14.0", - "stabilityMarker": "-rc3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.0", - "isStable": true, - "releasedAt": "2022-11-05T22:05:58Z", - "semanticPart": "2.14.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.1", - "isStable": true, - "releasedAt": "2022-11-22T02:16:33Z", - "semanticPart": "2.14.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.2", - "isStable": true, - "releasedAt": "2023-01-29T02:06:10Z", - "semanticPart": "2.14.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.14.3", - "isStable": true, - "releasedAt": "2023-05-05T18:05:17Z", - "semanticPart": "2.14.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.0-rc1", - "isStable": false, - "releasedAt": "2023-03-18T22:13:21Z", - "semanticPart": "2.15.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.0-rc2", - "isStable": false, - "releasedAt": "2023-03-29T00:12:49Z", - "semanticPart": "2.15.0", - "stabilityMarker": "-rc2", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.0-rc3", - "isStable": false, - "releasedAt": "2023-04-14T22:03:33Z", - "semanticPart": "2.15.0", - "stabilityMarker": "-rc3", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.0", - "isStable": true, - "releasedAt": "2023-04-24T00:05:29Z", - "semanticPart": "2.15.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.1", - "isStable": true, - "releasedAt": "2023-05-17T00:21:38Z", - "semanticPart": "2.15.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.2", - "isStable": true, - "releasedAt": "2023-05-31T02:01:30Z", - "semanticPart": "2.15.2", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.3", - "isStable": true, - "releasedAt": "2023-10-13T04:08:00Z", - "semanticPart": "2.15.3", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.16.0-rc1", - "isStable": false, - "releasedAt": "2023-10-21T00:20:13Z", - "semanticPart": "2.16.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.16.0", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.16.0", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.16.1", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.16.1", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.15.4", - "isStable": true, - "releasedAt": null, - "semanticPart": "2.15.4", - "stabilityMarker": null, - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - }, - { - "normalizedVersion": { - "type": "semantic", - "versionName": "2.17.0-rc1", - "isStable": false, - "releasedAt": null, - "semanticPart": "2.17.0", - "stabilityMarker": "-rc1", - "nonSemanticSuffix": null - }, - "repositoryIds": [ - "maven_central" - ] - } - ] - }, - "licenses": { - "mainLicense": { - "name": "The Apache Software License, Version 2.0", - "url": "https://www.apache.org/licenses/LICENSE-2.0.txt" - }, - "otherLicenses": [] - }, - "groupId": "com.fasterxml.jackson.core", - "artifactId": "jackson-databind", - "scm": { - "type": "github", - "url": "https://github.com/FasterXML/jackson-databind", - "urlHash": "54f28a2e5ff86e723a96453e61c8a3a90df983eef2b91afaf14fe59c49b359cc", - "description": "General data-binding package for Jackson (2.x): works on streaming API (core) implementation(s)", - "readmeUrl": null, - "license": { - "name": "Apache License 2.0", - "url": "https://api.github.com/licenses/apache-2.0", - "htmlUrl": "https://github.com/FasterXML/jackson-databind/blob/2.17/LICENSE", - "spdxId": "Apache-2.0", - "key": "apache-2.0" - }, - "htmlUrl": "https://github.com/FasterXML/jackson-databind", - "isFork": false, - "ossHealthIndex": 0.6060332233672555, - "stars": 3430, - "watchers": 3430, - "forks": 1365, - "subscribers": 169, - "readme": { - "rawUrl": "https://raw.githubusercontent.com/FasterXML/jackson-databind/2.17/README.md", - "htmlUrl": "https://github.com/FasterXML/jackson-databind/blob/2.17/README.md" - } - } - } -] \ No newline at end of file diff --git a/settings.gradle.kts b/settings.gradle.kts index 53d0ffd7..c2c05c7d 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -52,14 +52,6 @@ include( ":kmp-modifier", ) -includeBuild("nitrite-java") { - dependencySubstitution { - substitute(module("org.dizitart:nitrite-java")).using(project(":nitrite")) - substitute(module("org.dizitart:potassium-nitrite")).using(project(":potassium-nitrite")) - substitute(module("org.dizitart:nitrite-mvstore-adapter")).using(project(":nitrite-mvstore-adapter")) - } -} - val isCi get() = System.getenv("CI") == "true"