11<p align =" center " >
22<a href =" https://github.com/openjavaformat/open-java-format/actions/workflows/ci.yml " ><img src =" https://github.com/openjavaformat/open-java-format/actions/workflows/ci.yml/badge.svg " alt =" CI " /></a >
33<a href =" LICENSE " ><img src =" https://img.shields.io/badge/license-Apache--2.0-blue " alt =" License " /></a >
4- <a href =" MANIFESTO.md " ><img src =" https://img.shields.io/badge/read-the%20manifesto-informational " alt =" Manifesto " /></a >
4+ <a href =" https://openjavaformat.dev/manifesto/ " ><img src =" https://img.shields.io/badge/read-the%20manifesto-informational " alt =" Manifesto " /></a >
55<a href =" #roadmap " ><img src =" https://img.shields.io/badge/status-bootstrapping%20(phase%201%2F5)-orange " alt =" Status " /></a >
66<a href =" https://central.sonatype.com/search?q=com.palantir.javaformat " ><img src =" https://img.shields.io/maven-central/v/com.palantir.javaformat/palantir-java-format?label=upstream " alt =" Upstream release " /></a >
77</p >
@@ -18,7 +18,7 @@ _A modern, lambda-friendly, 120-character Java formatter — built in the open._
1818> What changes is ** who builds the artifacts, in the open, and who can get a fix merged.**
1919>
2020> ** Today you should keep using upstream.** This README is the plan for making that unnecessary.
21- > See the [ roadmap] ( #roadmap ) for where we are, and the [ manifesto] ( MANIFESTO.md ) for why.
21+ > See the [ roadmap] ( #roadmap ) for where we are, and the [ manifesto] ( https://openjavaformat.dev/manifesto/ ) for why.
2222
2323** Quick links:** [ Why this fork] ( #why-this-fork-exists ) · [ Roadmap] ( #roadmap ) ·
2424[ Compatibility promise] ( #compatibility-promise ) · [ Coordinates] ( #coordinates-old--new ) ·
@@ -76,7 +76,7 @@ taken away from anyone. We are not reacting to a relicensing and we have nothing
7676a ** governance and supply-chain fork** , which is a harder story to tell and a better one to be
7777honest about.
7878
79- ** The full set of commitments is in [ MANIFESTO.md ] ( MANIFESTO.md ) .** In one screen:
79+ ** The full set of commitments is in the [ manifesto ] ( https://openjavaformat.dev/manifesto/ ) .** In one screen:
8080
81811 . Formatting is shared infrastructure.
82822 . The name must be neutral.
@@ -108,7 +108,7 @@ about the formatter's behaviour. Phase 4 is where this project starts having opi
108108- [x] Fork the repository
109109- [x] Catalogue everything that only works inside Palantir (below)
110110- [x] Decide the project name, Maven group and GitHub org — ` openjavaformat ` , ` openjavaformat.com `
111- - [x] Write down the compatibility promise and the manifesto (this document + ` MANIFESTO.md ` )
111+ - [x] Write down the compatibility promise and the manifesto (this document + the [ manifesto ] ( https://openjavaformat.dev/manifesto/ ) )
112112
113113### Phase 1 — Build everything in the open
114114
@@ -313,7 +313,7 @@ and the objection is to *control* — of the build, the release keys, the name a
313313That makes our job harder than OpenTofu's. A licence fork can point at a diff in a ` LICENSE ` file
314314and everyone immediately understands. We have to make a positive case instead: a build you can
315315audit, binaries you can verify, and a review queue that answers you. Which is exactly why the
316- [ manifesto] ( MANIFESTO.md ) is a set of promises rather than a list of grievances — the OpenTofu
316+ [ manifesto] ( https://openjavaformat.dev/manifesto/ ) is a set of promises rather than a list of grievances — the OpenTofu
317317document was, in its first form, an ultimatum to HashiCorp, and we have nobody to issue one to.
318318
319319The other lesson from all nine: ** compatibility is the migration strategy.** Valkey, MariaDB and
0 commit comments