ktfmt migration roadmap
- Dominant language
- Kotlin
- Stars
- 1.3k
- Forks
- 116
- Avg merge
- 4d 10h
- Merged PRs (30d)
- 15
Description
* [ ] **Phase 1: Initial transfer and integration**
* [x] Transfer ktfmt repository to the Kotlin org on GitHub
* [x] Migrate the sources from `com.facebook.*` package to `org.jetbrains.kotlin.*`
* [x] Clean up OS-dependent scripts and tests, replace them with OS-independent analogs
* [x] Set up CI in `Kotlin Tools and Libraries` TeamCity server
* [ ] Set up the publishing process
* [x] Update ktfmt repo documentation/licence/etc.
* [ ] Sync on the status of the [Gradle plugin](https://github.com/cortinico/ktfmt-gradle) and [IntelliJ plugin](https://plugins.jetbrains.com/plugin/14912-ktfmt)
* [ ] **Phase 2: Kotlin repo adoption**
* [ ] Kotlin repo formatting audit
* [ ] sync on the current discrepancies in formatting in Kotlin repo
* [ ] update ktfmt defaults where necessary
* [ ] decide on the future of the `--kotlinlang-style` option
* [ ] analyze the performance/memory impact/developer experience
* [ ] Decide on the ktfmt in Kotlin workflow
* [ ] how is the reformatting performed: IDE (IntelliJ plugin), Gradle, cli
* [ ] when is the reformatting performed: incremental, on save, on commit, on push, on CI
* [ ] Perform one-time reformat of the Kotlin repo
* [ ] decide how to handle branch/PR conflicts
* [ ] Set up CI checks and auto-reformatting
* [ ] Update contribution guidelines
* [ ] Configure ktfmt for the other official Kotlin repos
* [ ] Set up ktfmt vs. Kotlin co-development processes
* [ ] ktfmt vs. Kotlin versioning, decide on alpha/beta/experimental/release status of ktfmt
* [ ] decide how and when new features are added
* [ ] **Phase 3: Long-term community adoption and endorsement**
* [ ] Stabilise the API surface so that external tools can rely on ktfmt
* [ ] Update documentation in https://kotlinlang.org/ to recommend ktfmt
* [ ] provide official IDE/CI setup recommendations
* [ ] provide official Gradle/Maven/other build tools integration
* [ ] Adopt ktfmt as a default formatter in IntelliJ
* [ ] analyze the performance/memory impact
* [ ] define deprecation/migration pipeline
* [ ] sunset ktfmt IntelliJ plugin
Contributor guide
Research direction
Start by reviewing the unchecked items in Phase 1, particularly the publishing process and the status of the Gradle and IntelliJ plugins. No source files, tests, or entry points are named, and the roadmap spans adoption, CI, documentation, and long-term API decisions, so completion criteria must be defined before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- developer-experience, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100