diff --git a/development/ONBOARDING.md b/development/ONBOARDING.md index 140df2a..8e733d8 100644 --- a/development/ONBOARDING.md +++ b/development/ONBOARDING.md @@ -59,10 +59,12 @@ nuwiki/ │ └── .gitea/ └── workflows/ - ├── ci.yaml # Lint, test, fmt check on every push/PR - └── release.yaml # Cross-compile + release on v* tag + └── ci.yaml # Editor (Vim/Neovim) harnesses on every push/PR ``` +(The Rust server's build/release workflow lives in the separate +[nuwiki-rs](https://code.gfran.co/gffranco/nuwiki-rs) repository.) + ## Server Component The Rust LSP server (`nuwiki-ls`) lives in the separate [nuwiki-rs](https://code.gfran.co/gffranco/nuwiki-rs) repository. Pre-built binaries are downloaded automatically by the plugin's `install()` function. To build from source: @@ -203,6 +205,19 @@ This repo (editor client) uses Gitea Actions: The Rust LSP server lives in [nuwiki-rs](https://code.gfran.co/gffranco/nuwiki-rs) which handles: - Release (`.gitea/workflows/release.yaml`): Triggers on `v*` tag — cross-compiles for Linux targets and creates a Gitea release with downloadable binaries. +### Releasing the plugin + +This repo has no release workflow — the plugin is distributed by plugin +managers cloning the git repo, so a "release" is just a git tag. There is no +automated version stamping (the old `scripts/set-version.sh` moved to +nuwiki-rs with the Rust crates), so cut a plugin release by hand: + +1. Bump `g:nuwiki_version` in `plugin/nuwiki.vim`. +2. Commit, then `git tag vX.Y.Z && git push --tags`. + +The plugin and the `nuwiki-ls` server version independently; the binary is +fetched from nuwiki-rs's `latest` release at install time. + ## License Dual-licensed under MIT or Apache-2.0 at your option. \ No newline at end of file