Desktop's GitHub workflows are already prefixed `desktop-`. With both
projects in one repo, the prefix shows which project a workflow or
Buildkite step belongs to.
ESLint picks up desktop's own config for its files, which only works
with desktop's dependencies installed. Desktop is linted by its own
`scripts/check-js`.
- Add release read API to httpd as cargo feature enabled by default
- Add Releases and Release views to the UI
- Filter out redacted artifacts and mark delegate authors
- Degrade releases UI gracefully with older radicle-httpd versions
- Hide fully redacted releases
- Skip releases in the list endpoint when every artifact was redacted by
its author or a delegate, so no empty release entries are shown
- Keep them reachable with showRedacted=true and by release id
- Add e2e tests for the release routes
Co-Authored-By: Rūdolfs Ošiņš <rudolfs@osins.org>
- Add twemoji as npm dependency instead of build download
- Package build assets with a Vite plugin instead of scripts
- Keep the eslint and prettier caches in one directory
This also upgrades dompurify to the latest version, outside our cooldown
window, for a security fix (verified safe with extra security checks).
Newer dompurify versions expose a bug where happy-dom renders one of our
custom elements incorrectly in tests, unlike real browsers. Switch the unit
test environment from happy-dom to jsdom to fix the failing tests.
The non-local path leaves EXTRA_ENV as an empty array, and expanding
"${EXTRA_ENV[@]}" under `set -u` errors with "unbound variable" on
bash 3.2 (the version shipped on macOS), aborting before the suite
runs. Guard the expansion with ${EXTRA_ENV[@]+...} so an empty array
expands to nothing instead.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Our Cloudflare deployments via GitHub broke. We can run deployments
manually to app.radicle.xyz via:
npm run deploy
This also takes care of injecting the plausible.io script.
radicle-httpd and rad-web have been removed from the files.radicle.xyz
tar files, so we should build them to always have the web client be
compatible with the httpd
Use this script to update tests/support/heartwood-version and keep the
flake in sync with it.
Alternatively, run the script as
scripts/update-flake $(cat tests/support/heartwood-version)
to bring the flake back into sync.
This also updates the flake.lock and the updates the state of the npm
dependencies when run from a nix-enabled system.
Includes the twemoji assets and a check output that runs all tests
except e2e.
Updates to test/support/heartwood-version must also be reflected in
flake.nix in inputs.heartwood.url.
* We remove all styling related lints and use `eslint-config-prettier`.
There’s no need to bother developers with styling lints because
Prettier already takes care of that. (This is the [recommended
integration with Prettier][1])
* We use the “warning” level for lints that are code style related. This
allows developers to distinguish issues that need to be fixed now
(like type errors) and issues that can be fixed later (like style
errors). We do enforce all lints on CI by settings
`--max-warnings=0`.
[1]: https://prettier.io/docs/en/integrating-with-linters.html
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>
It’s not necessary anymore to add the folder with the heartwood test
binaries to `PATH` before running the end-to-end tests.
Signed-off-by: Thomas Scholtes <geigerzaehler@axiom.fm>