Age | Commit message (Collapse) | Author | Files | Lines |
|
Sponsored-by: author
|
|
Serialized labels now start with a type prefix: a character that says
what type of label it is.
This isn't strictly required: we _can_ just decide to always use a
single type of checksum for all chunks in one backup, for one client,
or in the whole repository. However, if it's ever possible to have
more than one type, it helps debugging if every checksum, when
serialized, is explicit about its type.
Change things to use the new serialize method instead of the Display
trait for Label. We're primarily serializing labels so they can be
stored in a database, and used in URLs, only secondarily showing them
to users.
Sponsored-by: author
|
|
Label is a clearer and more accurate name for the type now that it is
not just a checksum.
Also, serialize a Label in tests, rather than using string literals.
This is more correct, and we'll be changing serialization later.
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
The field still contains a cleartext SHa256 of the cleartext chunk
data, but this makes it clearer that it may contain other data.
This is a breaking change: the server API won't work with an old
client, and the new client won't work with an old server. To avoid the
breakage would require more effort than is warranted at this time,
given the very small number of users of Obnam. Sorry.
Sponsored-by: author
|
|
Also, make it an error for a public symbol to not be documented.
Sponsored-by: author
|
|
At this point, I don't know why the fields were there, but they are
now not used at all, so they can be dropped.
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
They're not useful now. Should probably add logging, but that will
have to wait until we have a good logging story.
Sponsored-by: author
|
|
This will make it harder to compare, say, a SHA-256 and a SHA3, later,
when we add more checksum types.
Sponsored-by: author
|
|
|
|
|
|
|
|
|
|
Less confusion with FromStr::from_str this way.
|
|
This will be useful soon, to enable us to check how many chunks from
file data there is in the repository, to check that an upcoming chunk
size setting works. Also add an API call for returning the ids.
Note that all of this is meant for testing only. It may be best to
disable it in production builds, eventually.
|
|
This means that a function that parses step bindings can't return an
error that the document is missing a title. Such an error return would
be nonsensical, and we use the Rust type system to prevent it, at a
small cost of being a bit verbose.
Additional benefit is that the library portion of Obnam doesn't return
anyhow::Result values anymore.
|
|
|
|
This speeds startup a lot. However, the backup repository needs to be
re-created from scratch and internal APIs have change in incompatible
ways.
|
|
Also heavily refactor the now-long scenario by splitting out a happy
path and some unhappy paths.
|
|
|