Commit graph

42 commits

Author SHA1 Message Date
c0cb868dc5 fix: impl Display for path, file and dir
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 3m40s
Rust / build (map[name:stable]) (push) Successful in 7m22s
Release Please / Release-plz (push) Successful in 38s
2024-11-21 09:06:53 +00:00
e25531df61 feat(fs): add TempFileSystem::as_real()
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 5m36s
Rust / build (map[name:stable]) (push) Successful in 5m59s
Release Please / Release-plz (push) Successful in 2m37s
2024-11-20 20:31:08 +00:00
2ddc79d826 feat: Add Debug, Clone, Default, PartialEq, Eq, Send, Sync to as many or our types as possible.
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 3m13s
Rust / build (map[name:nightly]) (push) Successful in 6m25s
Release Please / Release-plz (push) Successful in 30s
- adds tokio::sync as a dependency to provide an async Mutex for Clone of Net and MockNet

## ƒs

- adds `Clone` to `DirItem`
- adds `Default`, `PartialEq` and `Eq` to `FileSystem`, `PathMarker`, `FileMarker` and `DirMarker`
- adds `Default` to `PathReal`
- adds `Clone`, `Debug`, `Default`, `PartialEq` and `Eq` to `Reader`

## net

- `MockNet::try_from` now returns a `Future`, so should be `await`ed
- adds `Debug` to `Plan`
- adds `Debug` and `Default` to `Net`
- adds `Debug`, `Clone` and `Default` to `MockNet`
- adds `Debug`, `Clone`, `PartialEq` and `Eq` to `MatchRequest`
- adds `Debug` and `Clone` to `WhenRequest`

WIP: mutation tests
2024-11-16 12:18:21 +00:00
7285cff6e7 doc(fs): minor tidy up broken links
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 4m3s
Rust / build (map[name:nightly]) (push) Successful in 1m42s
Release Please / Release-plz (push) Successful in 1m30s
2024-11-10 12:06:53 +00:00
ff8b6c64b6 fix(fs): make TempFileSystem public
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m19s
Rust / build (map[name:stable]) (push) Successful in 4m25s
Release Please / Release-plz (push) Successful in 51s
2024-11-10 12:06:53 +00:00
a0262a4d05 feat(fs): kxio::fs::new(...) now accepts impl Into<PathBuf>
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m22s
Rust / build (map[name:nightly]) (push) Successful in 3m50s
Release Please / Release-plz (push) Successful in 32s
2024-11-09 19:35:03 +00:00
ed6d83cb7b tests(fs): add more test
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m1s
Rust / build (map[name:stable]) (push) Successful in 4m5s
Release Please / Release-plz (push) Successful in 42s
2024-11-08 18:12:12 +00:00
838ae0755b feat(fs): add .path(path).read_link()
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m2s
Rust / build (map[name:nightly]) (push) Successful in 6m24s
Release Please / Release-plz (push) Successful in 1m19s
2024-11-04 07:18:57 +00:00
b512b0a0d8 refactor(fs): PathReal owns its own data
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m4s
Rust / build (map[name:nightly]) (push) Successful in 4m2s
Release Please / Release-plz (push) Successful in 1m25s
2024-11-04 07:18:57 +00:00
de46ff57c1 feat(fs): add .path(path).set_permissions(perms)
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 3m56s
Rust / build (map[name:stable]) (push) Successful in 5m42s
Release Please / Release-plz (push) Successful in 45s
2024-11-04 07:18:57 +00:00
abd854f749 docs(fs): make it clearer what the std::fs functions map to
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m52s
Rust / build (map[name:nightly]) (push) Successful in 6m6s
Release Please / Release-plz (push) Successful in 39s
2024-11-04 07:18:57 +00:00
ecb61490f7 docs(fs): move checklist/std::fs mapping to rustdoc
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 3m50s
Rust / build (map[name:stable]) (push) Successful in 5m52s
Release Please / Release-plz (push) Successful in 1m23s
2024-11-04 07:18:57 +00:00
c0e40e6c2d feat(fs): add .path(path).symlink_metadata()
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m55s
Rust / build (map[name:nightly]) (push) Successful in 3m52s
Release Please / Release-plz (push) Successful in 41s
2024-11-04 07:18:57 +00:00
f810927faf feat(fs): add .path(path).canonicalize()
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m51s
Rust / build (map[name:nightly]) (push) Successful in 3m33s
Release Please / Release-plz (push) Successful in 2m24s
2024-11-04 07:18:57 +00:00
c4df3d18c7 feat(fs): add .path(path).soft_link(other), .path(path).is_link()
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m4s
Rust / build (map[name:stable]) (push) Successful in 3m41s
Release Please / Release-plz (push) Successful in 38s
2024-11-03 22:10:34 +00:00
d3f3a9e909 feat(fs): add .path(path).metadata()
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m2s
Rust / build (map[name:stable]) (push) Successful in 3m41s
Release Please / Release-plz (push) Successful in 42s
2024-11-03 22:09:40 +00:00
10e6243f6e feat(fs): add .file(path).hard_link(path)
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 3m59s
Rust / build (map[name:stable]) (push) Successful in 1m45s
Release Please / Release-plz (push) Successful in 1m26s
2024-11-03 22:08:18 +00:00
f825aad327 feat(fs): add .path(path).rename()
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m22s
Rust / build (map[name:nightly]) (push) Successful in 4m5s
Release Please / Release-plz (push) Successful in 1m23s
2024-11-03 14:48:19 +00:00
afee181872 feat(fs): add .file(path).remove()
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m9s
Rust / build (map[name:stable]) (push) Successful in 1m50s
Release Please / Release-plz (push) Successful in 47s
2024-11-03 14:17:59 +00:00
d7725d63ee feat(fs): add .dir(path).remove_all()
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m3s
Rust / build (map[name:stable]) (push) Successful in 4m22s
Release Please / Release-plz (push) Successful in 42s
2024-11-03 14:12:03 +00:00
ba3a388705 feat(fs): add .dir(path).remove()
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m50s
Rust / build (map[name:stable]) (push) Successful in 4m25s
Release Please / Release-plz (push) Successful in 1m42s
2024-11-03 14:05:45 +00:00
16e57b8ca9 feat(fs): add .reader().bytes()
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m4s
Rust / build (map[name:nightly]) (push) Successful in 4m13s
Release Please / Release-plz (push) Successful in 1m27s
2024-11-03 14:03:16 +00:00
6aeb4521fc refactor(fs): use type aliases
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m2s
Rust / build (map[name:stable]) (push) Successful in 3m54s
Release Please / Release-plz (push) Successful in 41s
2024-11-03 14:01:53 +00:00
2f236b752c feat(fs): add .copy(dest)
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m4s
Rust / build (map[name:nightly]) (push) Successful in 3m45s
Release Please / Release-plz (push) Successful in 1m35s
2024-11-03 11:46:09 +00:00
b593a8f67e refactor(fs): use type aliases
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m53s
Rust / build (map[name:nightly]) (push) Successful in 3m35s
Release Please / Release-plz (push) Successful in 1m25s
2024-11-03 11:41:59 +00:00
fa4232de6b refactor: cleanup
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m58s
Rust / build (map[name:nightly]) (push) Successful in 3m48s
Release Please / Release-plz (push) Successful in 35s
2024-11-02 21:29:27 +00:00
76d75cabd9 feat: remove need for mutability
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m54s
Rust / build (map[name:nightly]) (push) Successful in 3m38s
Release Please / Release-plz (push) Successful in 1m25s
adds rustdocs
2024-11-02 20:02:52 +00:00
d2ee798f25 refactor: use generics for path type
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m59s
Rust / build (map[name:stable]) (push) Successful in 3m25s
Release Please / Release-plz (push) Successful in 34s
2024-11-02 12:16:42 +00:00
6f95c04eb6 feat(fs): add lines to reader
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m8s
Rust / build (map[name:stable]) (push) Successful in 3m54s
Release Please / Release-plz (push) Successful in 1m33s
2024-11-01 21:49:22 +00:00
587d60ee3d feat(fs): add as_dir/as_file to convert from path
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m5s
Rust / build (map[name:stable]) (push) Successful in 3m47s
Release Please / Release-plz (push) Successful in 1m32s
2024-11-01 21:49:22 +00:00
d50164931d refactor: split real module into sub-modules
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m9s
Rust / build (map[name:stable]) (push) Successful in 4m7s
Release Please / Release-plz (push) Successful in 38s
2024-11-01 21:32:37 +00:00
791fa74e78 refactor: move new fns to their struct
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m12s
Rust / build (map[name:nightly]) (push) Successful in 4m22s
Release Please / Release-plz (push) Successful in 38s
2024-11-01 21:16:32 +00:00
b756881a60 refactor: extract result module
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m55s
Rust / build (map[name:stable]) (push) Successful in 2m5s
Release Please / Release-plz (push) Successful in 1m33s
2024-11-01 08:33:02 +00:00
a629950d4d feat(fs)!: new fluent API
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m5s
Rust / build (map[name:stable]) (push) Successful in 4m31s
Release Please / Release-plz (push) Successful in 1m23s
2024-11-01 08:20:59 +00:00
d0aee99c83 feat(fs): add dir_read()
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/tag/woodpecker Pipeline was successful
ci/woodpecker/cron/woodpecker Pipeline was successful
2024-05-17 12:08:56 +01:00
a84248eca3 fix(fs): make FileSystems Clone and Debug
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2024-04-30 07:50:55 +01:00
595a376a62 fix(fs): add missing std::error::Error impl for fs::Error
Some checks failed
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/tag/woodpecker Pipeline failed
ci/woodpecker/cron/woodpecker Pipeline failed
2024-04-28 19:11:12 +01:00
a9057a8831 feat(fs): properly validates paths are within base directory 2024-04-28 15:24:06 +01:00
12d55b98e5 feat(fs): add dir_create and dir_create_all
Closes kemitix/kxio#25
2024-04-28 14:30:23 +01:00
a77ed422eb refactor(fs): reorder trait methods 2024-04-28 12:48:32 +01:00
9c76ddc3e1 feat(fs): extract fs::like internal module 2024-04-28 12:37:15 +01:00
2e3827e0e0 feat(fs): new fs module to replace filesystem 2024-04-28 11:29:44 +01:00