6 Commits

Author SHA1 Message Date
gffranco f6a543320e fix: use artifact v3 for GHES compatibility
Gitea (GHES) does not support upload-artifact@v4+.
Revert to v3 which is supported on GHES.
2026-06-03 22:16:40 -03:00
gffranco 678d62ac14 fix: use stable asset names without version in release workflow
CI / cargo fmt --check (pull_request) Successful in 31s
CI / cargo clippy (pull_request) Successful in 25s
CI / cargo test (pull_request) Successful in 32s
CI / editor keymaps (pull_request) Successful in 1m35s
Release / build aarch64-unknown-linux-musl (push) Failing after 1m2s
Release / build x86_64-unknown-linux-gnu (push) Failing after 1m1s
Release / build aarch64-unknown-linux-gnu (push) Failing after 1m9s
Release / build x86_64-unknown-linux-musl (push) Failing after 1m3s
Release / gitea release (push) Has been skipped
Rename release assets to remove the version so that
/releases/latest/download/nuwiki-ls-{target}.tar.gz always resolves
correctly from the install scripts.
2026-06-03 22:02:22 -03:00
gffranco d93637bb48 release: fix restore-keys pipe syntax for Gitea 2026-06-03 22:02:22 -03:00
gffranco 01b936fffc ci: fix restore-keys to use pipe syntax (Gitea doesn't support YAML list) 2026-06-03 22:02:22 -03:00
gffranco 5d3ce2fe0b ci: remove concurrency key (not supported by Gitea Actions) 2026-06-03 22:02:22 -03:00
gffranco d188b09fde ci: improve workflows with stricter checks, caching, and idempotency
CI improvements:
- Add concurrency group to cancel redundant runs on same branch
- Add cargo cache to fmt job (was missing entirely)
- Add timeout-minutes: 5 to fast jobs (fmt, clippy, test) for fail-fast
- Change RUST_BACKTRACE from 'short' to '1' for better CI debuggability
- Pin push trigger to branches: [main] to avoid double-firing on PR merges
- Test minimum supported Neovim (0.11.0) instead of latest patch (0.11.3)

Release improvements:
- Enforce RUSTFLAGS: -D warnings at env level and in matrix rustflags
- Remove redundant checkout in release job (only needs env vars)
- Add release notes generation from git log since previous tag
- Make release creation idempotent (check if release exists before creating)
- Fix release_id not being set when release already exists
2026-06-03 22:02:22 -03:00
+8 -6
View File
@@ -77,10 +77,13 @@ jobs:
version="${GITHUB_REF_NAME#v}"
archive="nuwiki-ls-${version}-${{ matrix.target }}.tar.gz"
tar -czf "$archive" -C "target/${{ matrix.target }}/release" nuwiki-ls
echo "archive=$archive" >> "$GITHUB_OUTPUT"
# Use a stable name without version so /releases/latest/download/nuwiki-ls-{target}.tar.gz always resolves.
stable="nuwiki-ls-${{ matrix.target }}.tar.gz"
mv "$archive" "$stable"
echo "archive=$stable" >> "$GITHUB_OUTPUT"
- name: Upload build artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v3
with:
name: nuwiki-ls-${{ matrix.target }}
path: ${{ steps.package.outputs.archive }}
@@ -92,12 +95,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download all build artifacts
# upload-artifact@v4 + download-artifact@v4 with merge-multiple
# flattens all artifacts into the download path directly.
uses: actions/download-artifact@v4
# download-artifact@v3 nests each artifact under its own dir
# (artifacts/<artifact-name>/<file>), so recurse.
uses: actions/download-artifact@v3
with:
path: ./artifacts
merge-multiple: true
- name: Ensure jq + curl
run: |