Commit graph

140 commits

Author SHA1 Message Date
4cb841f9f4 feat(net): add bearer_auth helper to MockNet
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 6m1s
Test / build (map[name:stable]) (push) Successful in 6m39s
Release Please / Release-plz (push) Successful in 1m35s
2024-12-03 19:59:42 +00:00
17dc1dbe30 feat(net): add basic_auth helper to MockNet
All checks were successful
Test / build (map[name:stable]) (push) Successful in 6m52s
Test / build (map[name:nightly]) (push) Successful in 5m49s
Release Please / Release-plz (push) Successful in 1m36s
chore(deps): add base64@0.22
2024-12-03 19:52:16 +00:00
3b8b260b65 feat(net): add user_agent helper to MockNet
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 8m33s
Test / build (map[name:stable]) (push) Successful in 7m0s
Release Please / Release-plz (push) Successful in 1m18s
2024-12-03 19:35:02 +00:00
41973abe18 feat(net): mock requests based on query parameters
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 7m10s
Test / build (map[name:stable]) (push) Successful in 13m3s
Release Please / Release-plz (push) Successful in 1m54s
Changed the way URLs were matched, by breaking them down into their component parts, so that we can match query parameters when they are speciifed in either the URL string, or via the `query` method, or both.
2024-12-03 19:15:36 +00:00
eb761b0973 refactor(net): elide lifetime
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 3m50s
Test / build (map[name:stable]) (push) Successful in 4m33s
Release Please / Release-plz (push) Successful in 38s
2024-12-03 06:44:08 +00:00
c67cc9ad92 chore: ignore any occasional use of rover
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 3m29s
Test / build (map[name:stable]) (push) Successful in 4m23s
Release Please / Release-plz (push) Successful in 36s
2024-12-02 20:48:59 +00:00
8ce874fbea build(push-next): add ability for manual workflow dispatch
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 3m35s
Test / build (map[name:stable]) (push) Successful in 4m13s
Release Please / Release-plz (push) Successful in 40s
2024-12-01 10:16:01 +00:00
25fd976ed5 fix(example): don't use relative path - not allowed
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 5m19s
Rust / build (map[name:stable]) (push) Successful in 5m33s
Release Please / Release-plz (push) Successful in 52s
2024-11-22 19:22:23 +00:00
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust
cfae6623de chore: release v3.1.0
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m25s
Rust / build (map[name:stable]) (push) Successful in 4m50s
Release Please / Release-plz (push) Successful in 2m48s
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2024-11-21 21:07:43 +00:00
ed590552c7 feat(net): mock request builder adds .with and .with_{option,result}
Some checks failed
Release Please / Release-plz (push) Successful in 1m39s
Rust / build (map[name:nightly]) (push) Has been cancelled
Rust / build (map[name:stable]) (push) Has been cancelled
Support for specifying conditional clauses fluently.
2024-11-21 20:44:52 +00:00
5169da03dc docs(example): clean up get example
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 3m33s
Rust / build (map[name:stable]) (push) Successful in 7m40s
Release Please / Release-plz (push) Successful in 39s
2024-11-21 09:06:53 +00:00
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
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust
a58796f2f0 chore: release v3.0.0
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m14s
Rust / build (map[name:stable]) (push) Successful in 4m19s
Release Please / Release-plz (push) Successful in 1m56s
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2024-11-20 22:32:47 +00:00
fab5c1ba11 feat(net)!: net api: net.{get,post,etc..}(url) alternative to net.send(request)
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 4m31s
Rust / build (map[name:nightly]) (push) Successful in 7m6s
Release Please / Release-plz (push) Successful in 49s
2024-11-20 22:23:29 +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
d58ec0eba2 feat(net)!: new api: .on().respond().{status,header{s},body}(_)?, replacing respond(response)
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m3s
Rust / build (map[name:stable]) (push) Successful in 5m41s
Release Please / Release-plz (push) Successful in 2m38s
2024-11-20 20:31:08 +00:00
7da221bfde feat(net)!: new api: .on().{get,post, etc}(url), replacing .on(method).get(url)
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 7m20s
Rust / build (map[name:stable]) (push) Successful in 4m11s
Release Please / Release-plz (push) Successful in 1m39s
The `http::Method` parameter is not needed as we now use named methods that the methods on the underlying `reqwest` client.

The `url` parameter can be a `String` or `&str` rather than a parsed, and error handled `url::Url`.
2024-11-20 19:38:05 +00:00
a84643e6ae fix(net)!: Remove MatchOn
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 6m3s
Rust / build (map[name:nightly]) (push) Successful in 8m15s
Release Please / Release-plz (push) Successful in 59s
`MatchOn` was left behind from the v1 implementation and isn't used by
anything in the v2 implementation.
2024-11-20 19:37:06 +00:00
711c76a600 feat: re-export http::HeaderMap
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m33s
Rust / build (map[name:stable]) (push) Successful in 5m29s
Release Please / Release-plz (push) Successful in 1m15s
2024-11-20 19:37:06 +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
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust
d664090648 chore: release v2.1.1
All checks were successful
Rust / build (map[name:stable]) (pull_request) Successful in 4m30s
Rust / build (map[name:nightly]) (pull_request) Successful in 6m54s
Rust / build (map[name:stable]) (push) Successful in 3m15s
Rust / build (map[name:nightly]) (push) Successful in 5m55s
Release Please / Release-plz (push) Successful in 2m29s
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2024-11-15 21:20:34 +00:00
89f39b8ad4 fix: impl Clone for Net
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m33s
Rust / build (map[name:stable]) (push) Successful in 8m57s
Release Please / Release-plz (push) Successful in 45s
2024-11-15 21:10:14 +00:00
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust
7e1b3de984 chore: release v2.0.1
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m16s
Rust / build (map[name:stable]) (push) Successful in 3m25s
Release Please / Release-plz (push) Successful in 54s
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2024-11-15 16:45:55 +00:00
40a45f32da feat: re-export Method, Url, Request, Response and RequestBuilder from http, url and reqwest crates
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 6m3s
Rust / build (map[name:stable]) (push) Successful in 2m42s
Release Please / Release-plz (push) Successful in 30s
- Closes kemitix/kxio#46
- Closes kemitix/kxio#47
- Closes kemitix/kxio#48
2024-11-15 09:13:14 +00:00
32ba3c00c7 docs: remove duplicated section
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 3m46s
Rust / build (map[name:nightly]) (push) Successful in 5m48s
Release Please / Release-plz (push) Successful in 47s
2024-11-15 09:10:09 +00:00
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust
e053679dcc chore: release v2.0.0
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 10m48s
Rust / build (map[name:nightly]) (push) Successful in 13m30s
Release Please / Release-plz (push) Successful in 5m13s
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2024-11-14 11:56:34 +00:00
Renovate Bot
bfbf2b7e1d chore(deps): update kemitix/rust action to v2.4.1
All checks were successful
Rust / build (map[name:nightly]) (pull_request) Successful in 6m29s
Rust / build (map[name:stable]) (pull_request) Successful in 3m26s
Release Please / Release-plz (push) Successful in 40s
Rust / build (map[name:stable]) (push) Successful in 3m50s
Rust / build (map[name:nightly]) (push) Successful in 6m24s
2024-11-14 11:33:03 +00:00
fdb5ddb48e build: add cargo-mutants step
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m39s
Rust / build (map[name:stable]) (push) Successful in 6m35s
Release Please / Release-plz (push) Successful in 1m0s
2024-11-14 10:42:35 +00:00
76c3e1bee2 build: bump rust image to 2.4.1
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m13s
Rust / build (map[name:stable]) (push) Successful in 2m31s
Release Please / Release-plz (push) Successful in 54s
2024-11-14 10:42:35 +00:00
212aa7e0ae feat(net): mock matcher no longer uses a prebuilt request
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m3s
Rust / build (map[name:nightly]) (push) Successful in 4m15s
Release Please / Release-plz (push) Successful in 44s
2024-11-14 07:31:42 +00:00
8b6bfefbf2 docs(net): fix gramar
Some checks failed
Rust / build (map[name:stable]) (push) Successful in 2m12s
Rust / build (map[name:nightly]) (push) Successful in 4m15s
Release Please / Release-plz (push) Failing after 1m7s
2024-11-12 07:14:56 +00:00
415c37a700 refactor(net): remove inner from Net
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m7s
Rust / build (map[name:nightly]) (push) Successful in 3m59s
Release Please / Release-plz (push) Successful in 1m35s
2024-11-11 22:27:42 +00:00
dd61d39635 doc(net): added
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m1s
Rust / build (map[name:nightly]) (push) Successful in 3m33s
Release Please / Release-plz (push) Successful in 39s
2024-11-11 22:27:42 +00:00
dc74920dc8 feat(net): cleaner mock.on syntax
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m48s
Rust / build (map[name:stable]) (push) Successful in 6m28s
Release Please / Release-plz (push) Successful in 49s
2024-11-11 21:41:32 +00:00
aad02be6cb feat(net): be more permisive in what parameters are accepted
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m57s
Rust / build (map[name:stable]) (push) Successful in 2m12s
Release Please / Release-plz (push) Successful in 1m20s
2024-11-10 12:29:31 +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
4f990f907c docs(examples): add annotations to the get example
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m23s
Rust / build (map[name:stable]) (push) Successful in 3m48s
Release Please / Release-plz (push) Successful in 29s
2024-11-09 19:20:57 +00:00
9c0cf07bcc docs(readme): write a proper readme
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m30s
Rust / build (map[name:nightly]) (push) Successful in 1m57s
Release Please / Release-plz (push) Successful in 31s
2024-11-09 18:27:39 +00:00
d5340bec78 build: add cargo mutants to local dev test build step
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m48s
Rust / build (map[name:nightly]) (push) Successful in 1m59s
Release Please / Release-plz (push) Successful in 1m28s
2024-11-09 17:30:18 +00:00
4594a792e0 fix: use Default to create reqwest client
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m52s
Rust / build (map[name:stable]) (push) Successful in 4m19s
Release Please / Release-plz (push) Successful in 1m37s
2024-11-09 17:30:18 +00:00
02adc7dcd2 docs(example): get and save
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m52s
Rust / build (map[name:stable]) (push) Successful in 3m52s
Release Please / Release-plz (push) Successful in 39s
2024-11-09 15:42:53 +00:00
ac3527ce90 feat: Net and MockNet wrappers for InnerNet<Mocker> and InnerNet<Unmocked>
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m27s
Rust / build (map[name:nightly]) (push) Successful in 1m43s
Release Please / Release-plz (push) Successful in 37s
2024-11-09 15:42:53 +00:00
69c1ac8565 feat: Net<Mocked> uses internal mutability
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m24s
Rust / build (map[name:nightly]) (push) Successful in 3m52s
Release Please / Release-plz (push) Successful in 1m36s
2024-11-09 15:42:53 +00:00
17c1b4ff6d feat: add kxio::Result;
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m12s
Rust / build (map[name:stable]) (push) Successful in 4m14s
Release Please / Release-plz (push) Successful in 1m23s
2024-11-09 08:02:50 +00:00
742924e44c build: remove unlinked files
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 3m1s
Rust / build (map[name:nightly]) (push) Successful in 4m43s
Release Please / Release-plz (push) Successful in 44s
UNLINK
2024-11-08 19:26:03 +00:00
74f4954535 feat(network)!: remove legacy network interface
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 2m12s
Rust / build (map[name:stable]) (push) Successful in 4m4s
Release Please / Release-plz (push) Successful in 42s
2024-11-08 19:26:03 +00:00
c81fe6753f feat(net)!: fluent api
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m37s
Rust / build (map[name:nightly]) (push) Successful in 1m57s
Release Please / Release-plz (push) Successful in 27s
Closes kemitix/kxio#43
2024-11-08 19:11:23 +00:00
17816fa6ed build: ignore cargo-mutants output
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m15s
Rust / build (map[name:nightly]) (push) Successful in 4m25s
Release Please / Release-plz (push) Successful in 38s
2024-11-08 18:12:25 +00:00