summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-08-01feat: add command to resolve a generation ref into a chunk idLars Wirzenius4-0/+39
Sponsored-by: author
2021-07-31feat: configure log verbosity with OBNAM_SERVER_LOG envvarAlexander Batischev4-4/+63
Fixes #117.
2021-07-31Merge branch 'cleanups' into 'main'Lars Wirzenius9-19/+19
cleanup: fix things rustc/clipppy now complain about See merge request obnam/obnam!169
2021-07-30cleanup: fix things rustc/clipppy now complain aboutLars Wirzenius9-19/+19
Mostly https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow. Sponsored-by: author
2021-07-30Merge branch 'feature/112-cachedir-protection' into 'main'Lars Wirzenius6-58/+259
Backup: exit non-zero if new CACHEDIR.TAGs are found (unless `exclude_cache_tag_directories` is disabled) Closes #112 See merge request obnam/obnam!168
2021-07-28Add subplot to verify new mitigationAlexander Batischev1-5/+50
2021-07-28Backup: exit non-zero if new tags are foundAlexander Batischev2-2/+11
2021-07-28Store backup_roots() outcome in a structAlexander Batischev2-12/+30
2021-07-28After the backup, print out a list of new CACHEDIR.TAGsAlexander Batischev2-7/+26
2021-07-28FsIter: annotate entries belonging to CACHEDIR.TAGsAlexander Batischev2-23/+31
2021-07-28Mark CACHEDIR.TAGs in the databaseAlexander Batischev2-24/+126
In the following commits, we'll use this to check if a tag existed before.
2021-07-26Merge branch 'async-get-chunk' into 'main'Lars Wirzenius7-34/+226
use async for read-only access to chunk server See merge request obnam/obnam!167
2021-07-23refactor: async for "obnam show-generation"Lars Wirzenius1-5/+10
Sponsored-by: author
2021-07-23refactor: use async for "obnam restore"Lars Wirzenius1-18/+27
Sponsored-by: author
2021-07-23refactor: use async for "obnam list-files"Lars Wirzenius2-4/+39
Sponsored-by: author
2021-07-23refactor: use async for "obnam list"Lars Wirzenius2-3/+26
Sponsored-by: author
2021-07-23refactor: use async for "obnam get-chunk"Lars Wirzenius2-4/+123
Sponsored-by: author
2021-07-22chore: add rustfmt.tomlLars Wirzenius1-0/+1
For some reason my new Emacs config that uses rust-analyzer requires edition to be set in rustfmt.toml, not just Cargo.toml. Sponsored-by: author
2021-07-22Merge branch 'feature/114-replace-string-with-chunkid' into 'main'Lars Wirzenius2-4/+6
In errors, store chunk ids as `ChunkId`, not `String` Closes #114 See merge request obnam/obnam!165
2021-07-22Merge branch 'feature/115-no-custom-results' into 'main'Lars Wirzenius12-133/+136
Replace custom result types with standard `Result` Closes #115 See merge request obnam/obnam!166
2021-07-21Replace StoreResult with plain ResultAlexander Batischev1-6/+3
2021-07-21Replace IndexedResult with plain ResultAlexander Batischev1-11/+8
2021-07-21Replace IndexResult with plain ResultAlexander Batischev1-19/+16
2021-07-21Replace LocalGenerationResult with plain ResultAlexander Batischev1-24/+32
I do not plan to simplify the `T` in the return type of `get_file_and_fileno` because that function is only ever called from inside the module; it doesn't seem worthwhile to introduce a new type there.
2021-07-21Replace NascentResult with plain ResultAlexander Batischev1-5/+3
2021-07-21Replace FsIterResult with plain ResultAlexander Batischev2-8/+6
2021-07-21Replace FsEntryResult with plain ResultAlexander Batischev1-4/+2
2021-07-21Replace ClientConfigResult with plain ResultAlexander Batischev1-3/+1
2021-07-21Replace RestoreResult with plain ResultAlexander Batischev1-11/+9
2021-07-21Replace ClientResult with plain ResultAlexander Batischev1-20/+22
2021-07-21Replace ChunkerResult with plain ResultAlexander Batischev1-5/+3
2021-07-21Replace GenerationChunkResult with plain ResultAlexander Batischev1-5/+2
2021-07-21backup_run: replace tuple with a structAlexander Batischev2-9/+25
2021-07-21Replace BackupResult with plain ResultAlexander Batischev2-7/+8
2021-07-21In errors, store chunk ids as `ChunkId`, not `String`Alexander Batischev2-4/+6
Fixes #114.
2021-07-19Merge branch 'pywrite' into 'main'Lars Wirzenius2-4/+8
test: use better way to write files in Python See merge request obnam/obnam!164
2021-07-19test: use better way to write files in PythonLars Wirzenius2-4/+8
"open(...).write(...)" does not necessarily close the file, and thus flush buffered writes to disk. "with open(...)" does. Sponsored-by: author
2021-07-18Merge branch 'async-chunking' into 'main'Lars Wirzenius11-12/+422
Add some machinery for async processing of things See merge request obnam/obnam!162
2021-07-18docs: clarify comments in engine.rsLars Wirzenius1-2/+2
As proposed by Alexander Batischev. Sponsored-by: author
2021-07-18test: add scenario to verify chunkify worksLars Wirzenius3-11/+66
Sponsored-by: author
2021-07-18fix: use an explicit tokio runtimeLars Wirzenius1-2/+3
Create a tokio runtime so that the non-async function for chunkify can call an async function and have that create and run background tasks. Brown paper bag mistake: I did the development of this in a separate program with an async main function. When I integrated it into Obnam proper, which doesn't have an async main function (yet), I didn't actually test it works, only that it compiles. Stupid, stupid, stupid. I know better. Sponsored-by: author
2021-07-18feat: add "chunkify" subcommandLars Wirzenius3-0/+108
Sponsored-by: author
2021-07-18feat: add Engine and WorkQueue abstractions for async processingLars Wirzenius5-1/+247
Many thanks to Daniel Silverstone for helping me get through this. Sponsored-by: author
2021-07-16Merge branch 'subplot-needs' into 'main'Alexander Batischev2-0/+33
Improve build-depencency docs/checks Closes #111 See merge request obnam/obnam!163
2021-07-16test: have ./check verify all needed tools are installedLars Wirzenius1-0/+23
Sponsored-by: author
2021-07-16docs: document Rust as a build dependencyLars Wirzenius1-0/+10
Sponsored-by: author
2021-07-05Merge branch 'asyncify' into 'main'Lars Wirzenius4-140/+97
Refactor backup_run to make async easier to add, later See merge request obnam/obnam!160
2021-07-05refactor: code to run backups to have less repetitionLars Wirzenius3-132/+86
This should make it easier to introduce async, later.
2021-07-05refactor: have main explicitly print error messageLars Wirzenius1-8/+11
This is a little cleaner than having main print an error message by returning an Err value as a Result. For one thing, we can be more sure we log the error. Sponsored-by: author
2021-06-23Merge branch 'feature/ndash-to-mdash' into 'main'Lars Wirzenius2-32/+32
Replace n-dashes with m-dashes See merge request obnam/obnam!161