c9c21aa128
split api.rs into modules
...
- `id` for multiple "ID" types
- `json` for types directly interacting with the Sharry API
- `uri` for the `Uri` type
- activate testing
2025-06-25 23:43:57 +00:00
f1c6eb5d75
create struct sharry::api::FileID
2025-06-25 23:20:57 +00:00
f2b063ba85
minor changes
...
- adjust `main` log levels
- lower default upload chunk size to utilize common cache sizes
2025-06-25 22:52:46 +00:00
4c88ea7291
Merge branch 'feature/hashing' into develop
2025-06-25 22:48:53 +00:00
465c857126
implement better hashing
...
- move hashing back into `cachefile` to correctly handle the `rebuild_share` case
- add `-n` / `--no-hash` CLI switch to explicitly skip hashing
2025-06-25 22:47:55 +00:00
1f9c247439
Merge branch 'develop' into feature/hashing
...
- with "clippy fix" and "cargo fmt"
2025-06-25 21:07:24 +00:00
e391821fe5
adjust crate structure
...
- move `sharry::client::ClientError` to `error::Error`
2025-06-25 16:48:00 +00:00
9000c8a46b
clippy fix
2025-06-25 16:34:32 +00:00
d1d7b55585
adjust crate structure
2025-06-25 16:34:22 +00:00
78fb04403c
main adjust log levels
2025-06-25 16:12:52 +00:00
0b8bebad6e
implement better hashing
...
- actually, calling `file::Checked::hash` in `AppState::from_args` was correct: If `AppState::rebuild_share` is called, hashes are in a known state.
- call `check_hash` in `AppState::try_resume`
- minor renamings
2025-06-25 10:44:36 +00:00
11a5106473
implement better hashing
...
- call `file::Checked::hash` in `CacheFile::from_args` instead
2025-06-24 22:25:22 +00:00
ea5ef1fa10
implement better hashing
...
- call `file::Checked::hash` in `AppState::from_args`
2025-06-24 19:34:11 +00:00
2bcbc0d71c
implement better hashing
...
- use `blake2b_simd` crate and optimize
2025-06-24 19:27:13 +00:00
97e9e41117
error 404 defaults to "bad URI"
2025-06-24 16:31:31 +00:00
6e553cc185
implement better hashing
...
- use Blake2b128 for the CLI arguments hash
2025-06-24 16:29:38 +00:00
ece742a1e3
ureq error message parsing
2025-06-24 02:08:35 +00:00
1e05155cc1
minor refactoring
2025-06-24 02:05:27 +00:00
005c5f7cfa
move AppState::is_done into AppState::upload_chunk
2025-06-24 01:53:27 +00:00
14e1bed708
unwrap AppState::progress RefCell
2025-06-24 01:35:21 +00:00
72e9a5d40f
styling/doc
2025-06-24 01:28:09 +00:00
a8ff354a51
fix some progressbar issues
2025-06-24 01:11:36 +00:00
686e0c3e5c
Merge branch 'feature/rebuild_share' into develop
2025-06-24 00:25:19 +00:00
5b403ea129
Merge branch 'develop' into feature/rebuild_share
2025-06-24 00:23:09 +00:00
540953e4a9
notes
2025-06-24 00:18:36 +00:00
c734355ebb
file names from args, not from appstate
...
- remove `AppState::file_names`, `CacheFile::file_names`, `FileState::file_name`
- add `Cli::file_names`
- clippy fix
2025-06-24 00:18:26 +00:00
393feec125
[wip] implement handling "missing share"
...
- rework `CacheFile` API
- fix `AppState` using new `CacheFile`
- fix `main` using new `AppState`
- logging enhancement
2025-06-24 00:11:24 +00:00
df055fc4e9
[wip] implement handling "missing share"
...
- rework `CacheFile` API
- fix `AppState::{next_chunk, is_done}`
2025-06-19 10:34:28 +00:00
865566ad0c
[wip] implement handling "missing share"
...
- rework `CacheFile` API
2025-06-18 23:40:27 +00:00
3b46d228f4
impl AppState::requeue_file
2025-06-18 20:03:26 +00:00
79bc8e67a7
"verbose" CLI param
2025-06-18 18:58:49 +00:00
4eb0627a5f
"retry-limit" CLI param
2025-06-18 18:44:24 +00:00
a4bef827d1
fix clippy lint without drop
2025-06-18 18:14:39 +00:00
a633f4e228
move most printing/styling into own file
2025-06-18 18:14:09 +00:00
01bcf92d9c
clippy fix
2025-06-18 14:49:30 +00:00
783346c888
major refactoring
...
- `sharry::Client` fn signatures
- `sharry::ClientError` rework
- `file::Uploading` saves `file_id` instead of `patch_uri`
- `impl sharry::Client for ureq::Agent` into separate file
2025-06-18 14:21:25 +00:00
de07d556a2
minor refactoring
...
- `use crate::` where appropriate
- cleanup CLI parsing
- `Uri::with_protocol` -> `Uri::new`
2025-06-18 13:04:04 +00:00
6ca3e6c9dd
[wip] documentation
...
- added more notes
- minor cleanup
2025-06-15 00:56:58 +00:00
4bf18631d4
bug: don't allow chunk_size of 0
2025-06-15 00:46:02 +00:00
56223b3ae8
[wip] documentation
...
- added more notes
- `main.rs` logging
- clearer matching of `ClientError::ResponseStatus`
2025-06-15 00:44:28 +00:00
205af655e5
remove unnecessary Uri::endpoint call
2025-06-14 12:34:58 +00:00
10bb4feef5
logging improvements
2025-06-14 00:07:43 +00:00
e257d1cf8c
CLI ergonomy
2025-06-13 23:50:42 +00:00
5b018cf84b
minor cleanups
2025-06-13 23:11:40 +00:00
876869b073
Merge branch 'feature/retry_chunk' into develop
2025-06-13 23:05:16 +00:00
e2151b592c
show "cargo build", program completion
2025-06-13 23:02:41 +00:00
30855ed8ff
[wip] retry chunks
...
- `AppState::rewind` impl
- error handling in `main`
2025-06-13 23:00:36 +00:00
0a8e5cf3f0
[wip] retry chunks
...
- move buffer into main function again, avoiding `unsafe` code
- partially revert `Chunk` changes, removing `unsafe` parts
2025-06-13 22:32:41 +00:00
f05e112040
[wip] retry chunks
...
- make `Chunk` lifetime agnostic by using a raw pointer
- add `fn Uploading::rewind`
- add `fn AppState::{next_chunk, is_done}`
2025-06-13 17:03:25 +00:00
5556a658f5
minor refactoring
...
- var names
- logging
2025-06-13 16:07:25 +00:00