Commit Graph
2316 Commits
Author SHA1 Message Date
Rūdolfs Ošiņš b0b6d1663e Document the release process in RELEASE.md 2026-01-21 12:44:02 -06:00
Rūdolfs Ošiņš 5b4d5d5df9 Adapt heartwood changelog script for radicle-httpd 2026-01-21 11:38:40 -06:00
Rūdolfs Ošiņš 3d55ca4833 Make release scripts executable from anywhere in the repo 2026-01-21 11:38:00 -06:00
Rūdolfs Ošiņš a4a3f65ffe Update the release scripts to match our canonical tags 2026-01-21 11:37:37 -06:00
Rūdolfs Ošiņš 14162868f2 httpd: Release 0.23.0 releases/0.23.0 2026-01-21 09:40:35 -06:00
Rūdolfs OšiņšandFintan Halpenny 7dfca539b4 httpd: Add SIGHUP config reloading
Enable hot-reloading of web configuration (pinned repos, avatar, banner,
description) by sending SIGHUP to the process, eliminating the need for
server restarts when updating these settings.

Co-authored-by: Fintan Halpenny <fintan.halpenny@gmail.com>
2026-01-20 15:55:21 -06:00
Rūdolfs Ošiņš ebe4e426e8 Improve localhost detection 2026-01-17 09:35:54 -06:00
Rūdolfs Ošiņš 8f52b2bdfb Support *.localhost subdomains
In the new always-on-node service we'll want to test things locally with
domains that look like this: rudolfs.localhost:3080
2026-01-13 12:49:18 -06:00
Defelo 0fae94fce4 httpd: Remove unused struct 2026-01-12 15:01:48 -06:00
Rūdolfs Ošiņš c72494f620 Enable localhost connections in radicle-explorer
Allow radicle-explorer to connect to a locally running radicle-httpd via
https://app.radicle.xyz/nodes/localhost. This was previously disabled to
encourage use of Radicle Desktop, but is now useful for testing the new
always-on node in local development environments.

Remove support for /nodes/radicle.local, an undocumented and unused convention.

Fix remote node loading when Cloudflare URL-encodes port separator (: → %3A).
2026-01-12 14:38:50 -06:00
Rūdolfs Ošiņš 4c20d626e8 Add script for app.radicle.xyz deployments
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.
2026-01-09 16:55:19 -06:00
Rūdolfs Ošiņš eec96f5121 Fix linter warnings
Fixes svelte/no-reactive-reassign errors when running scripts/check.

It slipped through code review, regression from:
https://app.radicle.xyz/nodes/seed.radicle.garden/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5/patches/d77e0646b32cac18187a72bd5f36b501a08040ba
https://github.com/radicle-dev/radicle-explorer/actions/runs/17741958964/job/50417893170
2026-01-09 14:57:19 -06:00
Rūdolfs Ošiņš fadd614636 httpd: Release 0.22.0 releases/0.22.0 2026-01-07 13:24:49 -06:00
Defelo 699835d3fb httpd: Fix git handler
Apply the `SocketAddr` -> `DualAddr` change made in commit `4d062d83` to
the git handler and update the unit tests accordingly.
2026-01-06 14:49:20 +01:00
Sebastian Martinez 30fd309e04 httpd: Improve build README 2025-12-23 15:18:52 +01:00
Sebastian Martinez ad845ba66f httpd: Update upload script 2025-12-23 14:53:31 +01:00
Sebastian Martinez 8c2f15d619 httpd: Release 0.21.0 2025-12-23 12:57:43 +01:00
Sebastian Martinez 4d062d8347 httpd: Add axum-listener and use axum for unix-sockets directly 2025-12-23 12:33:43 +01:00
Rūdolfs Ošiņš 97ad0a865e httpd: Make radicle-httpd work with unix sockets 2025-12-19 17:48:22 +01:00
Cameron Eldridge 97dac7e28f Add rudimentary "Browse all repos on node" view
Seemed to me there was no way to browse all the repositories being seeded on a node.
On the massive public nodes this is not that useful a feature since there are too many
and too jumbled an assortment, but for a smaller personal node, this feature might be
valuable to make the explorer's contents a bit easier to explore.

Went with the most unintrusive implementation of this idea for now; just enough
that it "does the job" (you can access this view, and paginate the results)
but does not have any of the bells and whistles it should have (search/filtering,
sorting, page query parameters support).

As part of this work, since the repos section gets much more complex, I extracted
the repos part of the page into its own component. Otherwise, it is just very simply
allowing the parameters to the `fetchRepoInfos` call to be manipulated from the page.
2025-09-15 16:02:35 +02:00
Sebastian Martinez 5cf657249f Update heartwood-release to 1.4.0 2025-09-15 13:28:18 +02:00
Sebastian Martinez af159b8735 Update node metadata test user agent regex 2025-09-15 13:28:18 +02:00
Cameron Eldridge e4ec27c06b Fix CSS for task lists in rendered Markdown
The previous CSS was setting the task-list element to be `display: flex`, but this
does not play well with a task list item that contains further nodes. Commonly,
a sub-list, but even a bolded bit of text is rendered with a bit of unpleasant
extra spacing.

Example:

- [ ] Task 1
    - Step 1: Do *thing*
    - Step 2: Do __another__ thing

Or since I'm not sure if that's going to be rendered via this interface,
just find such a file on the hosted version. [This](https://app.radicle.xyz/nodes/seed.radicle.garden/rad%3Az28AWjUMmH9kFFCw7W9GMSCHoA9zZ)
repository of mine is particularly offensive in this category.

To solve the issue, I have removed the flex, and additional turned the icon component
itself into an inline flex element, as it being a block element was likely part of
the reason the list became a flex container to begin with.
2025-09-15 13:28:18 +02:00
Defelo 23d608d433 Guess mime type based on path
Try to determine the mime type of a file first based on its path, then
based on its content.

The previous behavior (looking only at the file content) inferred a
mime type of `text/xml` for `.svg` files (instead of `image/svg+xml`)
which prevented them from being shown when embedded e.g. in a markdown
document.
2025-09-15 12:53:33 +02:00
Defelo ed41e5529a Add width and height to allowed attributes 2025-09-13 22:37:03 +02:00
Sebastian Martinez d5cf0612d5 httpd: Update dependencies
Required:
- removing the #[async_trait] declarations since that has been
stabilized in rust.
- axum 0.8.0 introduced new endpoints declarations with curly brackets.
2025-08-15 14:12:35 +02:00
Sebastian Martinez 2727615b53 Bump radicle crate to 0.18.0 2025-08-15 13:22:49 +02:00
Rūdolfs Ošiņš 781045b254 Run user did through decodeURIComponent before validating
We recently moved app.radicle.xyz to Cloudflare, which by default
normalizes all URLs to be encoded on redirect. The redirects happen
because we run in SPA mode.
2025-07-24 12:50:29 +02:00
Rūdolfs Ošiņš be5605acde httpd: Release 0.20.0 2025-07-18 14:16:04 +02:00
Rūdolfs Ošiņš 4cd680d464 Bump radicle crate to 0.16.1 2025-07-18 12:13:24 +02:00
Lorenz Leutgeb 329863f349 Add wrangler.toml 2025-07-17 20:27:08 +02:00
Sebastian Martinez 18afaa1251 Add file path and line for comments with code locations
Instead of only displaying a comment, we need to make sure users know
that this has been a line comment.

Linking to changes for the display of the comment is a bit trickier,
will do so in a follow up
2025-06-27 11:28:23 +02:00
Sebastian Martinez 0603f63cdf Add components to rust-toolchain file
This seems to be helping since GitHub changed the behavior of the rustup
toolchain install from the default profile to a minimal which excludes
fmt and clippy

source: https://github.com/rust-lang/rustup/issues/4337
2025-06-26 15:52:37 +02:00
Sebastian Martinez f966ef1773 Add .prettierignore
Don't run prettier on a rust crate
2025-06-26 15:52:37 +02:00
Sebastian Martinez 33b8ecde59 Add review comments and replies 2025-06-26 08:41:01 +02:00
Sebastian Martinez b1bcfc7cd8 Add debian packaging of radicle-httpd 2025-06-24 15:04:20 +02:00
Sebastian Martinez 3c66de391b Add debian package builder 2025-06-24 15:04:20 +02:00
Sebastian Martinez 9cd9673152 Use new naming of preferred seed nodes 2025-06-19 08:28:23 +02:00
Sebastian Martinez fd88be1602 httpd: Add a radicle-httpd.json file to each build 2025-06-17 13:13:51 +02:00
Sebastian Martinez 66a7c98210 Fix hidden overflow for rid copy tooltip in RepoCard 2025-06-16 10:45:01 +02:00
Sebastian Martinez c607fd7177 Hide overflow in RepoCard 2025-06-16 10:09:26 +02:00
Sebastian Martinez 98e11f4068 Add a section about adding a rewrite rule if self-hosting 2025-06-16 09:38:20 +02:00
Sebastian Martinez f54222326a httpd: Release 0.19.1 2025-06-06 12:36:24 +02:00
Sebastian MartinezandFintan Halpenny 915fdc3665 httpd: Dockerfile uses Rust version from rust-toolchain
Instead of hardcoding the version of the Rust alpine file, introduce an
`ARG` in
the `Dockerfile`. In `build/build`, we determine the version by
inspecting
`rust-toolchain.toml`, and pass this value in. This ensures that the
binaries
are built using the same toolchain that we develop with.

Co-authored-by: Fintan Halpenny <fintan.halpenny@gmail.com>
2025-06-06 10:07:51 +02:00
Sebastian Martinez e76f78824f httpd: update cargo-zigbuild version to 0.20 2025-06-06 10:07:51 +02:00
lorenz ccb5e49ee0 httpd/git: Fix passing configuration
The `-c` argument (and its corresponding value) must come *before* the
first subcommand to be effective. This error was introduced in commit
5f22e1bb77.
2025-06-04 20:56:56 +02:00
Sebastian Martinez d6e700cdd4 httpd: Release 0.19.0 2025-06-04 11:25:11 +02:00
Sebastian Martinez 76285b6265 Switch version e2e test to a regex expression 2025-06-04 11:25:11 +02:00
Sebastian Martinez cfba4d40f6 Update heartwood-release to 1.2.0 2025-06-04 11:03:15 +02:00
Sebastian Martinez 11bf9d7200 Bump heartwood crates to latest versions 2025-06-04 10:32:50 +02:00