Publish the library modules to Sonatype Central #1

Merged
mprihoda merged 1 commit from publishing-setup into main 2026-06-15 18:03:20 +00:00
mprihoda commented 2026-06-15 13:37:45 +00:00 (Migrated from github.com)

Replicates the scalatags-webawesome publishing setup.

What this does

  • Wires the four library modules as PublishModules under works.iterative:
    • datastarscalatags-datastar (JVM + Scala.js)
    • tapirscalatags-datastar-tapir (JVM + Scala.js)
    • ssescalatags-datastar-sse (JVM)
    • tapirssescalatags-datastar-tapirsse (JVM)
  • The scenarios dogfood app stays unpublished.
  • Hoists the shared POM metadata + version into CommonPom + a Published trait.
  • Adds .github/workflows/publish.yml running SonatypeCentralPublishModule/publishAll,
    PGP-signed from the three repo secrets.
  • Documents the release process and required secrets in DEVELOPMENT.md.

Verified locally

./mill __.publishLocal — correct coordinates, correct inter-module POM dependencies
(e.g. tapirsse-tapir/-sse), and uninstrumented jars (scoverage stays out of
the published artifact).

⚠️ Note on merging

The shared version is 0.1.0-SNAPSHOT. Merging this to main triggers the Publish
workflow
, which publishes 0.1.0-SNAPSHOT to Sonatype Central's snapshot repo. To cut
a real release instead, bump publishVer to 0.1.0, then tag and push v0.1.0.

🤖 Generated with Claude Code

Replicates the `scalatags-webawesome` publishing setup. ## What this does - Wires the four library modules as `PublishModule`s under `works.iterative`: - `datastar` → `scalatags-datastar` (JVM + Scala.js) - `tapir` → `scalatags-datastar-tapir` (JVM + Scala.js) - `sse` → `scalatags-datastar-sse` (JVM) - `tapirsse` → `scalatags-datastar-tapirsse` (JVM) - The `scenarios` dogfood app stays unpublished. - Hoists the shared POM metadata + version into `CommonPom` + a `Published` trait. - Adds `.github/workflows/publish.yml` running `SonatypeCentralPublishModule/publishAll`, PGP-signed from the three repo secrets. - Documents the release process and required secrets in DEVELOPMENT.md. ## Verified locally `./mill __.publishLocal` — correct coordinates, correct inter-module POM dependencies (e.g. `tapirsse` → `-tapir`/`-sse`), and uninstrumented jars (scoverage stays out of the published artifact). ## ⚠️ Note on merging The shared version is `0.1.0-SNAPSHOT`. **Merging this to `main` triggers the Publish workflow**, which publishes `0.1.0-SNAPSHOT` to Sonatype Central's snapshot repo. To cut a real release instead, bump `publishVer` to `0.1.0`, then tag and push `v0.1.0`. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
iterative-works/scalatags-datastar!1
No description provided.