Commit Graph
3496 Commits
Author SHA1 Message Date
Brandon Oxendine 41e5b96b09 Add right-click menu to issue and patch lists 2026-10-20 15:44:56 +02:00
Ioannis T. 95405a07cb Keep newlines when copying source lines
Fixes 956f736acc
2026-10-20 15:26:47 +02:00
Brandon Oxendine 0a9d106f7e Truncate sidebar repo header label when narrow
Fixes: 3d47fc649c
2026-10-20 13:44:41 +02:00
Brandon Oxendine 7dd1ad2e55 Keep list search usable in narrow windows
The patch and issue list topbars decided whether to show filter labels
from the viewport width, which ignores the sidebar. With the search
input open, the filters left it almost no room, and in narrower
windows the actions were pushed past the window edge.

Make the topbar a size container and show filter labels based on its
own width. While searching, collapse inactive filters to icons and give
the input a fixed width. When there is still not enough room, the
filters scroll and fade out at the clipped edge.

Fixes: 0d6def4600
2026-10-20 13:34:00 +02:00
Brandon Oxendine 2fd961c6c3 Add monospace fallback to JetBrains Mono fonts
When users block web fonts, code was rendered in the browser's default
sans-serif font because the JetBrains Mono code font tokens had no
generic fallback. Add `monospace` as a fallback so code stays
monospaced.

Fixes: 8942cea33a
2026-10-20 12:27:29 +02:00
Daniel Norman a2b11f9d68 Fix visual snapshot tests 2026-10-19 18:33:14 +02:00
Brandon Oxendine 02dfecf66d Use new UI kit icons in empty states 2026-10-19 18:14:10 +02:00
Daniel Norman a79322aff4 Install zstd in ci pipeline
- Add install_zstd step before the build
- Fix test_archive_tar_zst panicking on CI
2026-10-19 18:07:43 +02:00
Brandon Oxendine 095b4f2fc0 Add copy link and highlight to comments
Opening a comment link expands the revision the comment is in, even if
the link is opened while already on the page, and scrolls to it.

This also fixes scrolling to URL fragments that aren't valid CSS
selectors, such as comment ids starting with a digit.
2026-10-19 18:02:19 +02:00
Georgios Jason Efstathiou 722a83af54 ryph: add clippy and rustfmt to the pinned toolchain
The root's plain rust-toolchain pin installs with the minimal profile,
so the explorer clippy warm step failed without clippy.
2026-10-19 17:57:49 +02:00
Jörg Thalheim fe29d7275b httpd: Batch search reindexing, ignore seed events
A peer with a bad connection kept reconnecting and re-announcing all
its seeded repos, ~27k SeedDiscovered/SeedDropped events per hour on
my node. Every event triggered a meili upsert until meilisearch sat
at 100% cpu and its task queue timed out.

Seed events only affect the seedingCount ranking field and the
periodic rescan updates that anyway, so drop them. Collect the
remaining events and reindex each touched repo once every 30s
(RADICLE_SEARCH_BATCH_SECS).
2026-10-19 17:20:44 +02:00
Rūdolfs Ošiņš 86b5a3d1ce Open redaction accordion in redacted artifacts test
The redaction reason sits in a collapsed accordion, so the test failed
consistently against a local httpd. Only local runs execute the release
tests, which is why it went unnoticed.
2026-10-19 16:50:08 +02:00
Jörg Thalheim 7d9be54317 httpd: Add tar.zst archive downloads
Support /raw/<rid>/archive/<ref>.tar.zst next to the existing tar,
tar.gz and zip formats. Git has no builtin zstd tar format, so
register one via tar.tar.zst.command. Needs the zstd binary in PATH.
2026-10-19 16:37:59 +02:00
Guillaume 783fa6be64 Fix emoji in markdown code blocks
Emoji in code blocks were missing from both the rendered code and the
copied text. twemoji replaces them with images, but highlighting and the
copy button work from the block's text content, which leaves images out.
We now turn the images back into text first.
2026-10-19 15:42:13 +02:00
Brandon Oxendine 44c4c37fc7 Match toggle button colors to Raw button 2026-10-19 15:13:09 +02:00
Brandon Oxendine 967f7a99b8 Use title case in repo page titles 2026-10-19 15:00:35 +02:00
Brandon Oxendine 53b616e028 Title the commits page "Commits"
The commits page set its browser tab title to "history", while the
breadcrumb and page content call it "Commits". Use "Commits" in the
title too.
2026-10-19 14:58:39 +02:00
Brandon Oxendine f22d3b5502 Use arrow icon for seed node view links 2026-10-19 14:54:26 +02:00
Daniel Norman f095a3ae11 Point AppImage GTK plugin at amd64 libs
Set LD_GTK_LIBRARY_PATH: the updated plugin finds the arm64 lib dir via
dpkg-architecture.
2026-10-19 14:05:06 +02:00
Daniel Norman 3bbf11d55b Install xdg-utils in release image
Fix AppImage bundling: the Tauri bundler needs /usr/bin/xdg-mime.
2026-10-19 14:04:55 +02:00
Brandon Oxendine ce3ef34de8 Add pin to sidebar repo context menu 2026-10-19 10:31:36 +02:00
ioannis 002f109b0a Fix breadcrumb label wrapping on long titles
Fixes 2345768492
2026-10-16 15:36:22 +02:00
Georgios Jason Efstathiou 7962e614fd Pull the universal image from quay.io
ghcr.io/drips-network/ryph-universal is no longer pullable, which fails
every environment build; quay.io/ryph/ryph-universal:1 is the same
image's public home.
2026-10-14 00:01:54 +02:00
Rūdolfs Ošiņš cf5e92f919 Save Rust CI caches only on master
Every patch saved its own Rust caches, up to 3 GB per patch, which
pushed the repo past GitHub's 10 GB cache limit and evicted the ones
master builds rely on. Patches now restore master's caches, and
line-table-only debug info keeps the builds and caches smaller.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš 92cedb0d3f Fix desktop unit tests in CI
Vitest's Rolldown picked up the root tsconfig.json, which extends a
package only the explorer installs, so the tests failed to start when
only desktop's dependencies were installed.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš 520e20c835 Run CI only for the components a push changes
Desktop-only patches no longer run the explorer and Rust checks, and
explorer patches no longer run the desktop e2e suite.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš af75a7010e Ask for component labels on patches
With explorer, desktop and httpd in one repo, the labels show at a
glance which projects a patch touches.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš c516cfa9fa Prefix explorer CI with explorer-
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.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš d83ed92a84 Remove Rust docs from CI
They aren't useful to us, and building them is the slowest step. We
did the same for desktop.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš 0442f85d56 Add check:ci script
Runs the checks from the GitHub workflows in one go, like desktop's
`scripts/check-ci`, and logs them to `tests/tmp/check-ci.log`.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš 357f4311f6 Document where the desktop app lives
So both the docs and agents know `desktop/` is its own project, with
commands run from there.
2026-10-13 17:23:20 +02:00
Rūdolfs Ošiņš e5e79605d6 Keep root lint checks out of desktop/
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`.
2026-10-13 16:53:36 +02:00
Rūdolfs Ošiņš 33182fd942 Run desktop CI from the repo root
GitHub only reads workflows from the root `.github/` and ryph only reads
the root `.ryph/`. The desktop workflows now run in `desktop/`, and the
ryph setup installs and warms both projects.
2026-10-13 16:53:36 +02:00
Rūdolfs Ošiņš 7af280d5b4 Fix desktop scripts after the move into desktop/
- release: work on `master`, find radicle-apt-repo next to the monorepo,
  tag `releases/desktop/<version>` and only commit the release files
- install-binaries: use desktop's own `tests/`, not the root one
- build-artifacts: pass `GIT_HEAD` to the Linux builds, which only see
  `desktop/` and have no `.git`
- .envrc: watch `rust-toolchain.toml`
2026-10-13 16:53:36 +02:00
Rūdolfs Ošiņš 5e70f8f2bf httpd: Use releases/httpd/ for release tags
Since desktop was merged in, its `releases/<version>` tags are in our
history too, and `git describe --match='releases/*'` picked up
`releases/0.16.0` as the httpd version. The changelog also leaves out
`desktop/`, otherwise the next one would list its whole history.
2026-10-13 16:53:36 +02:00
Brandon Oxendine d2d24a6ecc Update Mastodon link in footer
The footer linked to an old account. Point it at the current one,
@radicle@toot.radicle.dev.
2026-10-12 22:36:41 +02:00
Rūdolfs Ošiņš 3447a45ac2 Merge radicle-desktop into desktop/
Desktop history is kept as-is, so old commit IDs and signatures stay valid.
2026-10-12 09:27:47 +02:00
Rūdolfs Ošiņš 983fff9006 Move everything into desktop/
In preparation for merging radicle-desktop into radicle-gui. It's a pure rename, so git can follow every file across the move.
2026-10-12 08:41:12 +02:00
Daniel Norman db5442f01d Release v0.17.0 2026-10-09 11:27:01 +02:00
Rūdolfs Ošiņš bbaf0d792b Keep file tree folders open when selecting a file
Opening another file collapsed every folder that didn't contain it,
which made browsing several folders tedious. Folders now stay open
until they're collapsed by hand.
2026-10-09 10:29:32 +02:00
Rūdolfs Ošiņš b3477e0365 Fix file tree folders flickering on file select
Since the browsed file lives in the route, every click reloads the route
and open folders re-rendered their contents, briefly collapsing them.
Folders now load their entries once and the tree is rebuilt only when
the commit changes.
2026-10-09 10:29:32 +02:00
Rūdolfs Ošiņš 1b07495946 Show label validation in a popover
So it looks the same as the assignee input. Both popovers now open
above the input when there's room for the full list and below it
otherwise, instead of switching sides depending on how many results
there are.
2026-10-09 10:29:32 +02:00
Rūdolfs Ošiņš a1515fe4a6 Fix npm audit reported issues 2026-10-09 09:36:03 +02:00
Daniel Norman 040906ba6d Add list_canonical_tags command
- Load the release modal's tags with it
- Sort them with the shared sortedTags helper
- Test that peers' tags are left out
2026-10-08 18:21:48 +02:00
Daniel Norman 6f57b811ef Show rad-artifact CLI version in status
- Probe `rad-artifact --version` in artifact_binaries
- Run artifact_binaries off the main thread
- Show the CLI version in the artifact node popover
2026-10-08 18:21:48 +02:00
Daniel Norman a24dde90de Show artifact node version in status
- Pass the running node's version through ArtifactNodeStatus
- Show it in the artifact node popover
2026-10-08 18:21:48 +02:00
Daniel Norman a3c094fd6c Bump radicle-artifact to 0.23
- Pick up the node version in the status reply
2026-10-08 18:21:48 +02:00
Daniel NormanandRūdolfs Ošiņš f90db0986a Warn about releases and artifacts by others
- Add an UntrustedWarning banner
- Warn on the Others releases list
- Warn on a release by a non-delegate
- Warn on artifacts by non-delegates on a delegate release
- Warn in the download popover for a non-delegate artifact
- Add E2E tests for both release cases

Co-authored-by: Rūdolfs Ošiņš <rudolfs@osins.org>
2026-10-08 18:21:48 +02:00
Daniel Norman e930bfd397 Link and mention releases
- Route release and release list links to their views
- Offer releases for a pasted ID or link
- List delegate releases in # search
- Show release references as chips
- Cache release lookups for mentions
- Record release mentions in ADR 0003
2026-10-08 18:21:48 +02:00
595a81150b Add Releases and Release views
- Add the Releases list and Release page
- Add modals to create, delete and redact releases
- Register artifacts and add or remove their locations
- Download, seed and unseed artifacts from the release page
- Share one artifact node state and show its status
- Pick the release commit from a list
- Rename Stop seeding to Unseed

Co-authored-by: Daniel Norman <daniel@norman.life>
Co-authored-by: Rūdolfs Ošiņš <rudolfs@osins.org>
2026-10-08 18:21:48 +02:00