Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,41 @@ Watch it with `gh run watch`. Each workflow also accepts `workflow_dispatch`,
which builds and packages everything but creates no release — use that to
rehearse a release before tagging.

### Bumping the language server

The language server is the one component whose version lives in more than one
file, because Tycho keeps the Maven and OSGi versions in lockstep. Its
`validate-version` check runs at `validate` with `strictVersions` on, and it
requires `.qualifier` for a `-SNAPSHOT` version but exact equality for a release
version. So `0.1.0` in the poms next to `0.1.0.qualifier` in a manifest fails the
build before it compiles anything. All eight lines move together:

| File | What to change |
| --- | --- |
| `aadl-language-server/pom.xml` | the `aadl.ls.parent` version (not the `osate2.main-pom` parent, which follows the submodule pin) |
| `aadl-language-server/org.osate.aadl.ls/pom.xml` | `<parent>` and its own `<version>` |
| `aadl-language-server/plugins/org.osate.aadl.ls.tests/pom.xml` | `<parent>` and its own `<version>` |
| `aadl-language-server/releng/org.osate.aadl.ls.repository/pom.xml` | `<parent>` only; it has no `<version>` |
| `org.osate.aadl.ls/META-INF/MANIFEST.MF` | `Bundle-Version` |
| `plugins/org.osate.aadl.ls.tests/META-INF/MANIFEST.MF` | `Bundle-Version` |

The repository-root `pom.xml` version is reported as `tooling.version` in
`build-provenance.properties`, which is attached to the `ls-v*` release, so move it
with the server. `vscode-extension/pom.xml` inherits from it and must be updated in
the same commit or parent resolution breaks.

### After tagging

Return `main` to a development version: `-SNAPSHOT` in the poms and `.qualifier` in
the manifests, at the next version. Development builds then carry a build
timestamp (`org.osate.aadl.ls_0.2.0.v20260902-1320.jar`), which is what lets p2 and
Eclipse tell one local rebuild from the next. A plain release version left in the
tree makes every rebuild look identical to a p2 cache.

`osate-cli` and the extension work differently on purpose: they keep a plain
release version in the tree — rpm forbids `-` in a version, and VS Code extension
versions must stay `major.minor.patch` — and move it only when they release.

## What each release produces

**`osate-cli-v*`** — [`release-osate-cli.yml`](.github/workflows/release-osate-cli.yml)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: AADL Language Server
Bundle-SymbolicName: org.osate.aadl.ls;singleton:=true
Bundle-Version: 0.1.0.qualifier
Bundle-Version: 0.1.0
Bundle-Vendor: CMU-SEI
Automatic-Module-Name: org.osate.aadl.ls
Bundle-RequiredExecutionEnvironment: JavaSE-21
Expand Down
4 changes: 2 additions & 2 deletions aadl-language-server/org.osate.aadl.ls/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@
<parent>
<groupId>org.osate</groupId>
<artifactId>aadl.ls.parent</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<relativePath>..</relativePath>
</parent>

<groupId>org.osate</groupId>
<artifactId>org.osate.aadl.ls</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<packaging>eclipse-plugin</packaging>

</project>
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: AADL Language Server Tests
Bundle-SymbolicName: org.osate.aadl.ls.tests;singleton:=true
Bundle-Version: 0.1.0.qualifier
Bundle-Version: 0.1.0
Bundle-Vendor: CMU-SEI
Fragment-Host: org.osate.aadl.ls
Automatic-Module-Name: org.osate.aadl.ls.tests
Expand Down
4 changes: 2 additions & 2 deletions aadl-language-server/plugins/org.osate.aadl.ls.tests/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@
<parent>
<groupId>org.osate</groupId>
<artifactId>aadl.ls.parent</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<relativePath>../..</relativePath>
</parent>

<groupId>org.osate</groupId>
<artifactId>org.osate.aadl.ls.tests</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<packaging>eclipse-test-plugin</packaging>

<build>
Expand Down
2 changes: 1 addition & 1 deletion aadl-language-server/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
</parent>

<artifactId>aadl.ls.parent</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<packaging>pom</packaging>

<repositories>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
<parent>
<groupId>org.osate</groupId>
<artifactId>aadl.ls.parent</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<relativePath>../..</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>org.osate</groupId>
<artifactId>aadl-language-server-aggregator</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<packaging>pom</packaging>

<modules>
Expand Down
2 changes: 1 addition & 1 deletion vscode-extension/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<parent>
<groupId>org.osate</groupId>
<artifactId>aadl-language-server-aggregator</artifactId>
<version>0.1.0-SNAPSHOT</version>
<version>0.1.0</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
Loading