Comments (2)
Can you provide a concrete use case?
To me it seems a bit unusual: where adding to an existing path addresses subtrees, strip_prefix
refers to an entirely different subtree of the filesystem, where this crate's goal is to prevent confusion between filesystem subtrees.
from crates.
In Pijul, we need paths relative to the root of a repository: specifically, when we have a repository in /path/to/my/repo
, the current directory is /path/to/my/repo/a/b/c
, and we want to add ../d/../f
, we need to know that the file to add, relative to the root of the repository, is a/f
.
Now, this wasn't a problem on Unix, since the root of the repository is always in canonical form, so I was canonicalizing paths, and then stripping off the root of the repository.
Unfortunately, that doesn't really work on Windows, where canonicalize
returns an "extended syntax path", which is almost never used by end users directly, and almost always as a result of calling canonicalize
.
I understand that this is a strange use case, since we're essentially implementing a filesystem inside another filesystem, and we can totally do without strip_prefix
if you don't think this is relevant (some documentation about that design choice would be useful though).
from crates.
Related Issues (20)
- RUSTSEC-2020-0071: Potential segfault in the time crate
- Implement `Zeroize` for `NonZeroX` HOT 1
- zeroize: implement `Zeroize` for `PhantomData` HOT 3
- MSRV in bip32 README is incorrect HOT 1
- secrecy: Zeroize an serde_json::Value HOT 1
- bip32: why can't private ExtendedKey instances convert to `ExtendedPublicKeys` with `TryFrom`? HOT 2
- secrecy: how should one use `SecretBytesMut`? HOT 2
- Is it possible to get derived address from a private key generated by bip32 crate?
- Cannot clone a `SecretVec<u8>` as `u8` is not `CloneableSecret` HOT 1
- secrecy: Using the serde feature in a no-std environment
- secrecy: Add an example to deserialize a SecretString
- Impl `exposure_count` for `ExposeSecret` trait?
- canonical-path: Repository link is 404
- RUSTSEC-2023-0052: webpki: CPU denial of service in certificate path building
- Support 12 word BIP39 entropy HOT 1
- implemente HasLen trait
- RUSTSEC-2024-0336: `rustls::ConnectionCommon::complete_io` could fall into an infinite loop based on network input
- secrecy: support `ZeroizeOnDrop` HOT 3
- Into version for SecretString expose_secret
- secrecy: Secret.as_ref() ?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from crates.