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.
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.
Required:
- removing the #[async_trait] declarations since that has been
stabilized in rust.
- axum 0.8.0 introduced new endpoints declarations with curly brackets.
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.
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
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
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>
The `-c` argument (and its corresponding value) must come *before* the
first subcommand to be effective. This error was introduced in commit
5f22e1bb77.
Based on the work done in commit
`a73c5490b160435a0ef5408b54185c9f698cb73f` there are a few places that
make the app not load in case dom storage aka localStorage is disabled.
To allow some very basic hyperlinking in commit descriptions we can
replace fully specified urls with a valid scheme into
`radicle-external-link` components.
1. When `git archive` errors, do not require an exit code, but just use
the `ExitStatus` we already have. This requires less unwrapping.
Also, the previous default of 0 was misleading, since 0 is returned
upon successful termination.
2. Use "refname" instead of "refspec" as these are different concepts.
Refer to <https://git-scm.com/docs/git-check-ref-format> and in
particular
<https://git-scm.com/docs/git-check-ref-format#Documentation/git-check-ref-format.txt---refspec-pattern>.
3. Only allow appending ".tar.gz" to commit IDs, not to refnames,
because refnames may contain the suffix ".tar.gz". It might look
weird, but it is not forbidden to do `git branch foo.tar.gz`.
4. `char::is_ascii` does not help sanitize refnames to file names. In
particular we have `'/'.is_ascii() == true`. Replace forward slashes
with two underscores.
Instead of panicking when trying to handle non utf8 lines we should
return `null` as line output.
This way we can on the frontend detect if a file has any lines the api
wasn't able to parse and fallback to show a file as a `Binary File`
We are returning `assignees` in patches as `Author` since March 2024, so
we should also parse patches with the correct zod schema.
This shouldn't break any up to date `radicle-httpd`