radicle-heartwood-lfs/crates/radicle/src
Lorenz Leutgeb 5229fb8a59 fix: Normalize filesystem paths with `dunce`
Microsoft Windows has Universal Naming Convention (UNC) paths, see
<https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#unc-paths>

The Rust standard library normalizes paths to this form when calling
`std::fs::canonicalize`, see
<https://doc.rust-lang.org/std/fs/fn.canonicalize.html>

However, some programs, do not parse these paths correctly, including
our ally `git`:

    $ git clone \\?\C:\Users\lorenz\tmp
    Cloning into 'tmp'...
    ssh: Could not resolve hostname \\\\?\\c: No such host is known.
    fatal: Could not read from remote repository.

    Please make sure you have the correct access rights
    and the repository exists.

The `dunce` crate solves the problem of having to deal with
normalization and avoiding weird UNC paths for us. Note that on
non-Windows platforms, it *behaves exactly like*
`std::fs::canonicalize`!
2025-08-22 15:11:43 +01:00
..
canonical chore: Automated fixes generated by clippy 2025-07-25 11:25:05 +02:00
cob radicle: fix stream tests 2025-08-20 11:43:18 +01:00
git radicle: fix Canonical::quorum doc link 2025-08-05 15:00:26 +01:00
identity chore: Automated fixes generated by clippy 2025-07-25 11:25:05 +02:00
logger radicle: Move logging setup calls to binaries 2025-08-07 08:30:59 +01:00
node radicle/config/node: Use newtypes 2025-08-19 13:16:19 +02:00
profile radicle: improve config errors 2025-06-24 13:51:55 +02:00
storage radicle: introduce `cob::common::Title` 2025-08-19 17:05:33 +02:00
test cob: add method for loading entry manifest 2025-08-19 14:27:35 +01:00
canonical.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
cli.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
cob.rs radicle: introduce COB stream 2025-08-19 14:49:51 +01:00
collections.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
explorer.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
git.rs chore: Automated fixes generated by clippy 2025-07-25 11:25:05 +02:00
identity.rs radicle: canonical references payload 2025-07-16 16:41:16 +02:00
io.rs radicle: Only set file limits on Unix 2025-07-23 10:31:13 +02:00
lib.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
logger.rs radicle: Move logging setup calls to binaries 2025-08-07 08:30:59 +01:00
node.rs node: Remove useless caching of node announcement 2025-08-13 10:27:00 +01:00
profile.rs fix: Normalize filesystem paths with `dunce` 2025-08-22 15:11:43 +01:00
rad.rs fix: Normalize filesystem paths with `dunce` 2025-08-22 15:11:43 +01:00
schemars_ext.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
serde_ext.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
sql.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
storage.rs canonical: Support Annotated Tags 2025-08-04 17:00:54 +02:00
test.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
version.rs repo: Move workspace crates into `crates` subdirectory 2025-06-09 15:09:21 +02:00
web.rs radicle: Keep pinned repos ordered in config 2025-07-19 12:59:02 +01:00