Skip to content

Remove usages of maven.pkg.jetbrains.space#760

Merged
vnikolova merged 1 commit intomainfrom
osipxd/update-eap-link
Feb 3, 2026
Merged

Remove usages of maven.pkg.jetbrains.space#760
vnikolova merged 1 commit intomainfrom
osipxd/update-eap-link

Conversation

@osipxd
Copy link
Member

@osipxd osipxd commented Feb 2, 2026

KTOR-9311 Remove maven.pkg.jetbrains.space usages from the Ktor repositories

@osipxd osipxd requested a review from vnikolova February 2, 2026 14:52
@osipxd osipxd self-assigned this Feb 2, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 2, 2026

Walkthrough

This PR updates Maven repository URLs across the codebase, replacing JetBrains Space endpoints with Kotlin language redirector URLs for Ktor EAP, Kotlin dev, and kotlinx-html artifacts. No functional code logic or control flow changes are introduced.

Changes

Cohort / File(s) Summary
Root Gradle Configuration
codeSnippets/build.gradle, codeSnippets/settings.gradle.kts
Updated Kotlin dev and Ktor EAP repository URLs from JetBrains Space to Kotlin redirector endpoints.
Authentication Snippets
codeSnippets/snippets/auth-*/build.gradle.kts (7 files)
Replaced Ktor EAP repository URLs from maven.pkg.jetbrains.space/public/p/ktor/eap to redirector.kotlinlang.org/maven/ktor-eap.
Client Snippets (Core)
codeSnippets/snippets/client-*/build.gradle.kts (40+ files)
Updated Ktor EAP repository URLs to use Kotlin redirector for all client-related examples.
Server & Engine Snippets
codeSnippets/snippets/{server-*, engine-*, embedded-server-*, etc.}/build.gradle.kts (35+ files)
Replaced Ktor EAP repository URLs from JetBrains Space to Kotlin redirector across server, engine, and embedded server configurations.
Template & Plugin Snippets
codeSnippets/snippets/{freemarker, thymeleaf, mustache, pebble, jte, gson, jackson, etc.}/build.gradle.kts (30+ files)
Updated Ktor EAP repository URLs in template engine and serialization plugin examples.
Miscellaneous Snippets
codeSnippets/snippets/{compression, cors, events, logging, timeout, etc.}/build.gradle.kts (35+ files)
Replaced Ktor EAP and related repository URLs with Kotlin redirector endpoints.
Multi-Repository Update
codeSnippets/snippets/client-engine-js/build.gradle.kts
Updated two repository URLs: kotlinx-html and Ktor EAP from JetBrains Space to Kotlin redirector.
Documentation
topics/server-dependencies.topic
Updated Ktor EAP, Kotlin dev, and kotlinx-html repository URLs in documentation blocks with associated Gradle and Maven examples.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

Possibly related PRs

Suggested reviewers

  • vnikolova
  • Stexxe
  • bjhham
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main change: removing usages of maven.pkg.jetbrains.space repository URLs across the codebase.
Description check ✅ Passed The description is related to the changeset and references the issue tracker link (KTOR-9311) that documents the work to remove maven.pkg.jetbrains.space usages from Ktor repositories.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch osipxd/update-eap-link

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🤖 Fix all issues with AI agents
In `@codeSnippets/snippets/client-engine-js/build.gradle.kts`:
- Around line 9-13: The repositories block currently uses redirector URLs;
remove the redundant kotlinx-html redirector entry and replace the Ktor EAP
redirector URL with the official endpoint. Update the repositories { ... } block
so it only keeps mavenCentral() and a
maven("https://maven.pkg.jetbrains.space/public/p/ktor/eap") entry, removing
maven("https://redirector.kotlinlang.org/maven/kotlinx-html") and changing
maven("https://redirector.kotlinlang.org/maven/ktor-eap") to the official Ktor
EAP URL; ensure the identifiers in the Gradle build file (the repositories block
and the two maven(...) lines) reflect this change.

In `@codeSnippets/snippets/embedded-server/build.gradle.kts`:
- Around line 23-26: Replace the redirector Maven URL in the repositories block:
locate the repositories { ... } block that currently contains the URL
"https://redirector.kotlinlang.org/maven/ktor-eap" and change it to the official
Ktor EAP endpoint "https://maven.pkg.jetbrains.space/public/p/ktor/eap" so the
build uses the canonical JetBrains Space repository instead of the redirector.

In `@codeSnippets/snippets/json-kotlinx-method-override/build.gradle.kts`:
- Around line 15-18: Replace the Ktor EAP repository URL used in the
repositories block: locate the repositories { ... } block and change the maven
redirector URL "https://redirector.kotlinlang.org/maven/ktor-eap" to the
official JetBrains Space URL
"https://maven.pkg.jetbrains.space/public/p/ktor/eap" so the build uses the
correct Ktor EAP artifact source.

In `@codeSnippets/snippets/openapi-spec-gen/build.gradle.kts`:
- Around line 15-18: The repositories block currently uses the Kotlin redirector
URL; replace that URL with the official Ktor EAP repository by updating the
repositories declaration (the repositories block in build.gradle.kts) to use
"https://maven.pkg.jetbrains.space/public/p/ktor/eap" instead of
"https://redirector.kotlinlang.org/maven/ktor-eap" so Gradle fetches EAP
artifacts from the official JetBrains Maven space.

In `@codeSnippets/snippets/server-websockets-serialization/build.gradle.kts`:
- Around line 15-18: Replace the unofficial redirector Maven endpoint used in
the repositories block with the official Ktor EAP JetBrains Space endpoint:
locate the repositories { ... } block (the maven { url =
uri("https://redirector.kotlinlang.org/maven/ktor-eap") } entry) and update that
entry to use the official URL
https://maven.pkg.jetbrains.space/public/p/ktor/eap so CI and dependency
resolution use the documented Ktor EAP repository.

In `@topics/server-dependencies.topic`:
- Around line 61-62: Update the anchor text that currently reads "Space
repository" to accurately reflect the target URL (the Kotlin redirector) in the
sentence referencing EAP Ktor; locate the anchor element whose href is
"https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/" and change its
visible text to something like "Kotlin redirector" or "Kotlin artifact
redirector" so the link label matches the destination.
🧹 Nitpick comments (1)
topics/server-dependencies.topic (1)

118-124: Consider renaming the Maven repo id for the Kotlin dev repository.

Using <id>ktor-eap</id> for the dev repository example is misleading; a clearer id (e.g., kotlin-dev) reads better in docs.

♻️ Suggested tweak
-                                <repository>
-                                    <id>ktor-eap</id>
-                                    <url>https://redirector.kotlinlang.org/maven/dev</url>
-                                </repository>
+                                <repository>
+                                    <id>kotlin-dev</id>
+                                    <url>https://redirector.kotlinlang.org/maven/dev</url>
+                                </repository>

Comment on lines 9 to 13
repositories {
mavenCentral()
maven("https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven")
maven("https://maven.pkg.jetbrains.space/public/p/ktor/eap")
maven("https://redirector.kotlinlang.org/maven/kotlinx-html")
maven("https://redirector.kotlinlang.org/maven/ktor-eap")
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🌐 Web query:

Kotlin redirector kotlinlang.org maven repositories official documentation

💡 Result:

  • Stable Kotlin artifacts (official docs): Kotlin’s official Maven setup docs assume you use Maven Central (for both dependencies and the kotlin-maven-plugin). [1]

  • Kotlin “redirector” Maven repos (for non-stable builds):

    • Dev builds: https://redirector.kotlinlang.org/maven/dev (redirects to JetBrains’ current backend repo, e.g. https://packages.jetbrains.team/maven/p/kt/dev). [2]
    • Bootstrap builds: https://redirector.kotlinlang.org/maven/bootstrap (redirects to JetBrains’ current backend repo, e.g. https://packages.jetbrains.team/maven/p/kt/bootstrap). [3][4]
  • Is this “redirector” documented on kotlinlang.org?

    • It’s not currently described in the main Kotlin Maven documentation pages (which focus on Maven Central). [1]
    • The redirector URLs are primarily referenced in ecosystem/internal guidance and community/support channels for dev/bootstrap artifacts. [2][3][4]

Sources:
[1] Kotlin Docs – “Configure a Maven project” https://kotlinlang.org/docs/maven-configure-project.html
[2] Kotlin Slack archive – dev builds repo via redirector.kotlinlang.org/maven/dev https://slack-chats.kotlinlang.org/t/30420709/
[3] Kotlin Slack archive – bootstrap/dev moved to packages.jetbrains.team, recommends using redirector URL https://slack-chats.kotlinlang.org/t/28897916/
[4] Android googlesource (JetBrains Kotlin mirror notes) referencing https://redirector.kotlinlang.org/maven/bootstrap https://android.googlesource.com/platform/external/jetbrains/kotlin/+/refs/tags/v2.3.0-RC


🌐 Web query:

redirector.kotlinlang.org/maven/kotlinx-html ktor-eap artifact repository

💡 Result:

  • https://redirector.kotlinlang.org/maven/kotlinx-html is a Kotlin “redirector” URL that currently redirects to JetBrains’ Space Maven repo at https://packages.jetbrains.team/maven/p/kotlinx-html/maven. [1]

    • The org.jetbrains.kotlinx:kotlinx-html artifact is also available from Maven Central. [2]
  • Ktor EAP artifacts are published in JetBrains Space at:

    • https://maven.pkg.jetbrains.space/public/p/ktor/eap [3]
    • Some Ktor EAP builds may also require the Kotlin dev repository: https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev. [4]

Sources: [1] [2] [3] [4]


🌐 Web query:

Kotlin official recommended repositories for kotlinx-html and Ktor EAP 2024 2025

💡 Result:

kotlinx-html (stable releases)

Use Maven Central (artifacts like org.jetbrains.kotlinx:kotlinx-html(-jvm/-js/...) are published there). [1]

Gradle

repositories { mavenCentral() }

Ktor EAP (2024–2025 and ongoing)

Ktor EAP artifacts are published to JetBrains Space:

https://maven.pkg.jetbrains.space/public/p/ktor/eap [2]

Gradle (Kotlin DSL)

repositories {
  mavenCentral()
  maven { url = uri("https://maven.pkg.jetbrains.space/public/p/ktor/eap") }
}

Some Ktor EAP builds may also require adding the Kotlin dev repository:

https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev [3]

repositories {
  mavenCentral()
  maven { url = uri("https://maven.pkg.jetbrains.space/public/p/ktor/eap") }
  maven { url = uri("https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev") } // only if required
}

Sources: Maven Central entry for org.jetbrains.kotlinx:kotlinx-html [1]; Ktor EAP repo setup [2]; Ktor note about Kotlin dev repo for some EAPs [3].


Replace the redirector repositories with their official endpoints.

  • The kotlinx-html artifact is already available in Maven Central (included above); the redirector is redundant.
  • The Ktor EAP repository should use the official endpoint https://maven.pkg.jetbrains.space/public/p/ktor/eap instead of the redirector URL. The redirector is not the documented path for Ktor EAP artifacts.

Recommended repositories block:

repositories {
    mavenCentral()
    maven("https://maven.pkg.jetbrains.space/public/p/ktor/eap")
}
🤖 Prompt for AI Agents
In `@codeSnippets/snippets/client-engine-js/build.gradle.kts` around lines 9 - 13,
The repositories block currently uses redirector URLs; remove the redundant
kotlinx-html redirector entry and replace the Ktor EAP redirector URL with the
official endpoint. Update the repositories { ... } block so it only keeps
mavenCentral() and a
maven("https://maven.pkg.jetbrains.space/public/p/ktor/eap") entry, removing
maven("https://redirector.kotlinlang.org/maven/kotlinx-html") and changing
maven("https://redirector.kotlinlang.org/maven/ktor-eap") to the official Ktor
EAP URL; ensure the identifiers in the Gradle build file (the repositories block
and the two maven(...) lines) reflect this change.

Comment on lines +61 to 62
To get access to the <a href="https://ktor.io/eap/">EAP</a> versions of Ktor, you need to reference the <a href="https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/">Space repository</a>:
</p>
Copy link
Contributor

@coderabbitai coderabbitai bot Feb 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Update wording: it’s no longer a “Space repository.”

The anchor text still says “Space repository” but the link now points to the Kotlin redirector, which is confusing.

✏️ Proposed doc tweak
-                    To get access to the <a href="https://ktor.io/eap/">EAP</a> versions of Ktor, you need to reference the <a href="https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/">Space repository</a>:
+                    To get access to the <a href="https://ktor.io/eap/">EAP</a> versions of Ktor, you need to reference the <a href="https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/">Kotlin redirector repository</a>:
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
To get access to the <a href="https://ktor.io/eap/">EAP</a> versions of Ktor, you need to reference the <a href="https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/">Space repository</a>:
</p>
To get access to the <a href="https://ktor.io/eap/">EAP</a> versions of Ktor, you need to reference the <a href="https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/">Kotlin redirector repository</a>:
</p>
🤖 Prompt for AI Agents
In `@topics/server-dependencies.topic` around lines 61 - 62, Update the anchor
text that currently reads "Space repository" to accurately reflect the target
URL (the Kotlin redirector) in the sentence referencing EAP Ktor; locate the
anchor element whose href is
"https://redirector.kotlinlang.org/maven/ktor-eap/io/ktor/" and change its
visible text to something like "Kotlin redirector" or "Kotlin artifact
redirector" so the link label matches the destination.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is still a Space repository behind the redirect

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@osipxd, thank you for the clarification! That makes sense – if the redirector still points to the Space repository behind the scenes, then keeping the "Space repository" wording is accurate. The redirector just provides an abstraction layer for the actual location.

I appreciate you explaining the reasoning! 🐰

   (\(\
   (. .)
  o(_(")(")  *curious rabbit*

✏️ Learnings added
Learnt from: osipxd
Repo: ktorio/ktor-documentation PR: 760
File: topics/server-dependencies.topic:61-62
Timestamp: 2026-02-03T12:25:08.771Z
Learning: The Kotlin redirector URLs (https://redirector.kotlinlang.org/maven/ktor-eap, https://redirector.kotlinlang.org/maven/dev) are abstraction layers that still point to JetBrains Space repositories behind the scenes. Therefore, referring to them as "Space repository" in documentation is still accurate even when using the redirector URLs.

Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.

Copy link
Collaborator

@vnikolova vnikolova left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is it a redirecting URL? Wouldn't it be better to just use https://packages.jetbrains.team/maven/p/ktor/eap?

@osipxd
Copy link
Member Author

osipxd commented Feb 3, 2026

Why is it a redirecting URL?

We might want to migrate again in the future, so it'll be simpler to change the address behind the redirector

@vnikolova vnikolova merged commit aea6be3 into main Feb 3, 2026
1 check passed
@vnikolova vnikolova deleted the osipxd/update-eap-link branch February 3, 2026 13:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants