summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2021-08-19 13:21:18 +0000
committerLars Wirzenius <liw@liw.fi>2021-08-19 13:21:18 +0000
commitcffe086f9baa467e4af80d4c921e1895a82aca75 (patch)
treecaa86c7a3c1624e994069341991ef1447b67b920
parentfa23e4145dcb57c82720956fb81c3a394f0bf8fd (diff)
parent7c829ca095621adabc92bc80664a08e0fa283a3d (diff)
downloadobnam.org-cffe086f9baa467e4af80d4c921e1895a82aca75.tar.gz
Merge branch 'meeting' into 'main'
add draft of planning meeting for new iteration See merge request obnam/obnam.org!53
-rw-r--r--blog/2021/08/16/planning.mdwn91
1 files changed, 91 insertions, 0 deletions
diff --git a/blog/2021/08/16/planning.mdwn b/blog/2021/08/16/planning.mdwn
new file mode 100644
index 0000000..3155121
--- /dev/null
+++ b/blog/2021/08/16/planning.mdwn
@@ -0,0 +1,91 @@
+[[!meta title="Iteration planning: August 16&ndash;August 29"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+# Assessment of the iteration that has ended
+
+[previous iteration]: /blog/2021/08/01/planning
+
+The goal of the [previous iteration][] was:
+
+> Change the Obnam client to use async Rust for making backups.
+
+This was not quite achieved. Lars has done the basic changes for this,
+but has not yet submitted them. He was trying to add concurrency to
+chunk checksum computation, but didn't manage that. He failed to
+remember that it's better to make some progress than to fail to
+achieve perfection. (See [his blog post about this
+philosophy](https://blog.liw.fi/posts/2021/02/03/asymptotic_awesomeness/)
+for more.)
+
+Lars had intended to do a bunch of smaller things as well, but mostly
+didn't, though he did finish [[!issue 118]] ("Lacks way to expand a
+geneneration reference ("latest") as a generation id").
+
+# Discussion
+
+## Performance
+
+The Obnam client is almost there as far as using async to achieve
+concurrency. It still needs to make chunk checksum computing
+concurrent. Once we have that, it's time to start doing benchmarks and
+profile the code to see where time is spent.
+
+However, the basic async work needs to be finished and proven in use
+before further performance improvements.
+
+## Minimum supported Rust version
+
+The discussion in [[!issue 137]] about minimum supported Rust version
+is still open, though it's been quiet. No decision has yet been made.
+Further input most welcome.
+
+# Goals
+
+## Goal for 1.0 (not changed this iteration)
+
+The goal for version 1.0 is for Obnam to be an utterly boring backup
+solution for Linux command line users. It should just work, be
+performant, secure, and well-documented.
+
+It is not a goal for version 1.0 to have been ported to other
+operating systems, but if there are volunteers to do that, and to
+commit to supporting their port, ports will be welcome.
+
+Other user interfaces is likely to happen only after 1.0.
+
+The server component will support multiple clients in a way that
+doesn’t let them see each other’s data. It is not a goal for clients
+to be able to share data, even if the clients trust each other.
+
+## Goal for the next few iterations (not changed for this iteration)
+
+The goal for next few iterations is to have Obnam be performant. This
+will include, at least, making the client use more concurrency so that
+it can use more CPU cores to compute checksums for de-duplication.
+
+## Goal for this iteration (new for this iteration)
+
+Finish the work to change the Obnam client to use async Rust for
+making backups. Once this works and is merged, make a new release.
+
+
+# Commitments for this iteration
+
+Lars intends to change the `obnam backup` command to use async
+([[!issue 113]]). After this is done, the client should be entirely
+async.
+
+* [[!issue 56]] -- SQLite databases for generations have no metadata
+ about themselves (1h)
+* [[!issue 113]] -- Client is not async (4h)
+* [[!issue 121]] -- Release process needs review, update (1h)
+ - should probably make at least a trial release
+* [[!issue 133]] -- Test suite assumes location of binary (1h)
+
+That's a total of about 7 hours, rough estimate, for Lars.
+
+# Meeting participants
+
+* Lars Wirzenius