summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--blog/2021/07/17/meeting.mdwn3
-rw-r--r--blog/2022/11/05/iteration.mdwn6
-rw-r--r--blog/2022/11/19/planning.mdwn132
-rw-r--r--blog/2022/12/03/planning.mdwn119
-rw-r--r--blog/2023/0.9.0.mdwn19
-rw-r--r--blog/2023/01/14/planning.md40
-rw-r--r--blog/2023/01/28/meeting.mdwn30
-rw-r--r--blog/2023/02/11/planning.mdwn46
-rw-r--r--blog/2023/02/24/planning.mdwn39
-rw-r--r--blog/2023/03/11/planning.mdwn40
-rw-r--r--blog/2023/04/22/planning.mdwn136
-rw-r--r--blog/2023/05/20/planning.mdwn167
-rw-r--r--blog/2023/06/03/planning.mdwn182
-rw-r--r--blog/2023/07/planning.mdwn166
-rw-r--r--blog/2023/08/30/planning.mdwn126
-rw-r--r--blog/2023/08/planning-2023-08-12.mdwn151
-rw-r--r--blog/2023/10/07/planning.mdwn184
-rw-r--r--blog/2023/11/18/plannaing.mdwn147
-rw-r--r--faq.mdwn41
-rw-r--r--index.mdwn3
-rw-r--r--subplot.svg81
21 files changed, 1806 insertions, 52 deletions
diff --git a/blog/2021/07/17/meeting.mdwn b/blog/2021/07/17/meeting.mdwn
index 8bf10d4..a75212b 100644
--- a/blog/2021/07/17/meeting.mdwn
+++ b/blog/2021/07/17/meeting.mdwn
@@ -103,7 +103,8 @@ We discussed feedback from the release.
tutorial and are now waiting for further feedback.
- No feedback yet from Serbitar
- Feedback from Minoru (who is involved with Obnam)
- <https://functional.cafe/@minoru/106590524492405719>
+ `https://functional.cafe/@minoru/106590524492405719`
+ (link is now dead, alas)
- Nothing back from Finn as yet.
- No feedback yet from JR at the Wikimedia Foundation.
diff --git a/blog/2022/11/05/iteration.mdwn b/blog/2022/11/05/iteration.mdwn
index ed1d650..5957f2c 100644
--- a/blog/2022/11/05/iteration.mdwn
+++ b/blog/2022/11/05/iteration.mdwn
@@ -7,8 +7,10 @@
# Extraordinary agendum - Heiko
- Regarding [[!subplotissue 20]] (There's no way to specify a scenario only needs to run conditionally)
-- We referenced [[!sublotissue 228]] (Does not support labelling of scenarios)
-- We also spoke about the `USING` syntax from [Lars and Daniel's conversations in 2017](https://blog.digital-scurf.org/posts/yarn-architecture/)
+- We referenced [[!subplotissue 228]] (Does not support labelling of scenarios)
+- We also spoke about the `USING` syntax from Lars's and Daniel's
+ conversations in 2017 (used to be at:
+ `https://blog.digital-scurf.org/posts/yarn-architecture/`).
We discussed the fact that Heiko wishes to run tests which might cause the user problems if they run them in the wrong setup.
Daniel suggested that there are a number of different ways we might look to meet Heiko's goal which is to ensure that
diff --git a/blog/2022/11/19/planning.mdwn b/blog/2022/11/19/planning.mdwn
new file mode 100644
index 0000000..c7090c0
--- /dev/null
+++ b/blog/2022/11/19/planning.mdwn
@@ -0,0 +1,132 @@
+[[!meta title="Iteration planning: November 19 &ndash; December 03"]]
+[[!meta date="2022-11-19 15:30:00 +0000"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+# Actions from last time
+
+- **NOT DONE:** Daniel to write up an issue describing configurable templates, how they would
+ look from the user perspective, and from an implementation perspective.
+ Then to request feedback from Heiko.
+- **NOT DONE:** Once that's done, Daniel or Lars to write standalone mode for Rust template.
+
+# Assessment of the iteration that has ended
+
+We had chosen the following issues for this iteration:
+
+- **NOT DONE:** [[!webissue 4]] -- _Review FAQ_
+- **DONE:** [[!subplotissue 309]] -- _Lars needs a Subplot release_
+- **DONE:** [[!subplotissue 291]] -- _User guide/book_
+- **NOT DONE:** [[!subplotissue 305]] -- _Maybe create binary releases?_
+
+We got some work done, if less than we hoped for.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK. We're over the limit on seats, but it
+seems we can increase the seats for free.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues updated since the previous
+meeting, merge requests, and CI pipelines for all the projects in the
+[Subplot group](https://gitlab.com/subplot) on gitlab.com.
+
+### [Subplot Container Images](https://gitlab.com/subplot/subplot-container-images)
+
+- Open issues: 1
+- Merge requests: 0
+- Additional branches: 0
+- CI: OK, ran yesterday
+
+### [subplot-web](https://gitlab.com/subplot/subplot-web)
+
+- Open issues: 1
+- Merge requests: 0
+- Additional branches: 0
+- CI: Ick, OK.
+
+### [subplot](https://gitlab.com/subplot/subplot)
+
+- Open issues: 45
+- Merge requests: 0
+- Additional branches:
+ - `docgen-cmark`, Lars is keeping this around for reference for
+ future changes
+- CI: OK
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - we will work on reducing Subplot dependencies that aren't already
+ in Debian
+ - need the dependency list; we are not targeting bookworm
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. This is merely an initial sketch.
+
+We'll improve documentation and generally aim at making Subplot more
+plausibly usable by people outside of the Subplot project.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We spoke about:
+
+- [[!subplotissue 310]] -- _Subplot uses clap v3, should use clap v4_
+ - Daniel wants to do it this iteration
+
+We intend to work on the following issues
+([[!ms 8]]), mostly carried over from the previous iteration:
+
+- [[!webissue 4]] -- _Review FAQ_
+- [[!subplotissue 305]] -- _Maybe create binary releases?_
+- [[!subplotissue 310]] -- _Subplot uses clap v3, should use clap v4_
+
+## Actions
+
+These are in addition to work on issues chosen for this iteration.
+
+- Daniel to write up an issue describing configurable templates, how they would
+ look from the user perspective, and from an implementation perspective.
+ Then to request feedback from Heiko.
+- Once that's done, Daniel or Lars to write standalone mode for Rust template.
+- Lars to try to use the Markdown parser he wrote for his static site
+ generator for Subplot.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2022/12/03/planning.mdwn b/blog/2022/12/03/planning.mdwn
new file mode 100644
index 0000000..36c14a6
--- /dev/null
+++ b/blog/2022/12/03/planning.mdwn
@@ -0,0 +1,119 @@
+[[!meta title="Iteration planning: December 03&ndash;30"]]
+[[!meta date="2022-12-10 15:30:00 +0000"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+# Assessment of the iteration that has ended
+
+We had the following actions from last time
+
+- **NOT DONE:** Daniel to write up an issue describing configurable templates, how they would
+ look from the user perspective, and from an implementation perspective.
+ Then to request feedback from Heiko.
+- **NOT DONE:** Once that's done, Daniel or Lars to write standalone mode for Rust template.
+- **NOT DONE:** Lars to try to use the Markdown parser he wrote for his static site
+ generator for Subplot.
+
+We had chosen the following issues for this iteration:
+
+- **NOT DONE:** [[!webissue 4]] -- _Review FAQ_
+- **NOT DONE:** [[!subplotissue 305]] -- _Maybe create binary releases?_
+- **DONE:** [[!subplotissue 310]] -- _Subplot uses clap v3, should use clap v4_
+
+We didn't get much done, but that happens.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK. We're over the limit on seats, but it
+seems we can increase the seats for free.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues updated since the previous
+meeting, merge requests, and CI pipelines for all the projects in the
+[Subplot group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Closed MRs | CI |
+| :------------------------------------------------------------------------------ | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images](https://gitlab.com/subplot/subplot-container-images) | 1 | 4 | 0 | 3 | OK (GitLab) |
+| [subplot-web](https://gitlab.com/subplot/subplot-web) | 1 | 0 | 0 | 73 | OK (Ick) |
+| [subplot](https://gitlab.com/subplot/subplot) | 44 | 265 | 0 | 303 | OK (GitLab) |
+
+Extra branches:
+
+- `subplot` branch `docgen-cmark` &mdash; Lars is keeping this around for reference for
+ future changes
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - we will work on reducing Subplot dependencies that aren't already
+ in Debian
+ - need the dependency list; we are not targeting bookworm
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. This is merely an initial sketch.
+
+We'll improve documentation and generally aim at making Subplot more
+plausibly usable by people outside of the Subplot project.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+This month is, as is traditional, filled with all sorts of other
+obligations. We decided to carry over actions and issues from the
+previous iteration, and to make it a longer one.
+
+We intend to work on the following issues
+([[!ms 8]]), mostly carried over from the previous iteration:
+
+- [[!webissue 4]] -- _Review FAQ_
+- [[!subplotissue 305]] -- _Maybe create binary releases?_
+
+## Actions
+
+These are in addition to work on issues chosen for this iteration.
+
+- Daniel to write up an issue describing configurable templates, how they would
+ look from the user perspective, and from an implementation perspective.
+ Then to request feedback from Heiko.
+- Once that's done, Daniel or Lars to write standalone mode for Rust template.
+- Lars to try to use the Markdown parser he wrote for his static site
+ generator for Subplot.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/0.9.0.mdwn b/blog/2023/0.9.0.mdwn
new file mode 100644
index 0000000..df8c358
--- /dev/null
+++ b/blog/2023/0.9.0.mdwn
@@ -0,0 +1,19 @@
+[[!tag announcement]]
+[[!meta date="2023-08-30 18:10:00 +0300"]]
+[[!meta title="Subplot 0.9.0 released"]]
+
+[Subplot]: https://subplot.tech/
+[NEWS.md]: https://gitlab.com/subplot/subplot/-/blob/main/NEWS.md?ref_type=heads
+
+The [Subplot][] project announces the 0.9.0 release of the tool for
+documenting acceptance criteria and verifying them automatically. See
+below for a summary of changes in this release, and [NEWS.md][] in the
+git repository for release notes for all releases.
+
+# Version 0.9.0, released 2023-08-27
+
+- We hope this will be the last breaking change before 1.0, however we
+ are not ruling out future breaks if they are justified to improve
+ usability or capability before an official 1.0 release
+- We now pass a lot more meta-information about step location to the
+ templates for building test suites.
diff --git a/blog/2023/01/14/planning.md b/blog/2023/01/14/planning.md
new file mode 100644
index 0000000..d243ae2
--- /dev/null
+++ b/blog/2023/01/14/planning.md
@@ -0,0 +1,40 @@
+[[!meta title="Iteration planning: January 14&ndash;28"]]
+[[!meta date="2023-01-14 15:50:00 +0000"]]
+[[!tag meeting]]
+
+# Notes
+
+We decided to not follow the usual meeting structure and instead
+only discussed how to refactor the Subplot code base, and specifically
+its `Document` data type. Refactoring is needed because it's too much
+work to make changes to Subplot. For example, replacing the Markdown
+parser with another (which is something we're in need of doing).
+
+After discussion we landed on a consensus that we'll want to break up
+the current monolithic `Document` type into smaller types, and that
+the first thing that needs doing is to stop using the `pandoc_ast`
+crate's `Pandoc`, `Block`, and `Inline` types to represent the parsed
+Markdown text.
+
+We'll create a new abstraction for the parsed Markdown. The first
+version will internally use `pandoc_ast`, and we'll use this to find
+out exactly what interface the new type should offer to the rest of
+Subplot. We'll then design and implement a new representation to fit
+the interface we need. At that point, we will drop the reliance on
+`pandoc_ast` and on Pandoc the program for parsing Markdown.
+
+**DECISION:** We won't make a new release of Subplot until we can do
+code generation (via `build.rs`) without Pandoc. This is to avoid
+inflicting a run time dependency on Pandoc on those who merely want to
+generate code from a subplot.
+
+**DECISION:** Whatever we generate for our AST, our native output
+format should be HTML, and that HTML should be reasonably importable
+by Pandoc in order to generate other output formats. That way we don't
+need Pandoc if the user wants only HTML output.
+
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/01/28/meeting.mdwn b/blog/2023/01/28/meeting.mdwn
new file mode 100644
index 0000000..8ea0e43
--- /dev/null
+++ b/blog/2023/01/28/meeting.mdwn
@@ -0,0 +1,30 @@
+[[!meta title="Iteration planning: January 28&ndash;February 11"]]
+[[!meta date="2023-01-28 15:50:00 +0000"]]
+[[!tag meeting]]
+
+# Notes
+
+We decided to not follow the usual meeting structure and instead only
+discussed how to refactor the Subplot code base. We isolated almost
+all use of `pandoc_ast` to the new `md` module, and will continue on
+that:
+
+- move the `visitor`, `panhelper`, and `typeset` modules inside the
+ `md` module so that `pandoc_ast` is never exposed outside `md`
+- change the `Markdown` type to contains a `RefCell<Pandoc>` and make
+ use of its internal mutability so that the `Markdown` API requires a
+ mutable reference only for methods that actually mutate the parsed
+ Markdown document
+ - currently all methods require a mutable `self`, because they use
+ `pandoc_ast::MutVisitor`, and that requires a mutable reference
+- change the `TryFrom<&Path>` trait implementation for `Markdown` to
+ be a constructor method for the type instead, for a more clear API
+
+Lars will make these changes, and Daniel will review.
+
+
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/02/11/planning.mdwn b/blog/2023/02/11/planning.mdwn
new file mode 100644
index 0000000..a6a524c
--- /dev/null
+++ b/blog/2023/02/11/planning.mdwn
@@ -0,0 +1,46 @@
+[[!meta title="Iteration planning: February 11-23"]]
+[[!meta date="2023-02-11 15:50:00 +0000"]]
+[[!tag meeting]]
+
+# Notes
+
+We decided to not follow the usual meeting structure and instead only
+discussed how to refactor the Subplot code base.
+
+We've reached a stage where the next thing to do is to replace the
+Pandoc (or `pandoc_ast`) representation of a parsed Markdown document
+with one of our own. We don't like the Pandoc one for the things we
+want to do, and would prefer a more malleable one. In addition, the
+Pandoc one has changed in incompatible ways before, making it harder
+for us to use it.
+
+We discussed what we want from such a representation and came up with
+a plan. For this iteration:
+
+* Daniel will refactor the `Document` methods to avoid requiring a
+ mutable reference to self, when possible.
+* Lars will refactor `Document` to drop the `markdowns` fields and the
+ `Document::sources` method to get the information from the document
+ metadata instead.
+* Lars will change Subplot to drop direct support for generating PDF.
+ We decided that for now, we only care about HTML output. We may add
+ PDF support back later, but it'll be easier to not need have that
+ while we are redoing document parsing. In any case, we've verified
+ that producing a reasonable PDF with Pandoc from the HTML output is
+ feasible.
+* Lars will drop `pandoc_ast` as a dependency in favor of
+ `pulldown_cmark`, and a custom representation of a parsed Markdown
+ document. Lars will probably use a lightweight abstraction for HTML,
+ and rewrite the `pandoc_ast::MutVisitor` use to query that instead.
+* Lars will drop the `Markdown::set_metatdata` method and instead give
+ the `YamlMetadata` directly to `Markdown::to_json`. From the
+ caller's point of view, there's no need to have two methods for
+ this. Or possibly Lars will just drop both methods, if they're not
+ needed for HTML generation.
+
+
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/02/24/planning.mdwn b/blog/2023/02/24/planning.mdwn
new file mode 100644
index 0000000..09c99dd
--- /dev/null
+++ b/blog/2023/02/24/planning.mdwn
@@ -0,0 +1,39 @@
+[[!meta title="Iteration planning: February 25&ndash;March 11"]]
+[[!meta date="2023-02-25 15:50:00 +0000"]]
+[[!tag meeting]]
+
+# Notes
+
+We decided to not follow the usual meeting structure and instead only
+discussed how to refactor the Subplot code base.
+
+We've made progress and are ready to actually switch to using
+`pulldown-cmark` for parsing Markdown. Lars started work on that, but
+ran out of time and brain and didn't finish it.
+
+For this iteration:
+
+* Daniel will refactor the `Document` methods to avoid requiring a
+ mutable reference to self, when possible.
+ - This has been done after the meeting and before this memo was
+ written in [[!mr 313]]
+* Lars will drop `pandoc_ast` as a dependency in favor of
+ `pulldown_cmark`, and a custom representation of a parsed Markdown
+ document. Lars will probably use a lightweight abstraction for HTML,
+ and rewrite the `pandoc_ast::MutVisitor` use to query that instead.
+ - Lars borrowed his pre-existing HTML abstraction from
+ [riki](https://gitlab.com/larswirzenius/riki), with some changes
+ - Lars started work on rewriting the visitors
+* Lars will drop the `Markdown::set_metatdata` method and instead give
+ the `YamlMetadata` directly to `Markdown::to_json`. From the
+ caller's point of view, there's no need to have two methods for
+ this. Or possibly Lars will just drop both methods, if they're not
+ needed for HTML generation.
+ - If we generate HTML directly, without Pandoc, we won't need these
+
+
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/03/11/planning.mdwn b/blog/2023/03/11/planning.mdwn
new file mode 100644
index 0000000..85c9008
--- /dev/null
+++ b/blog/2023/03/11/planning.mdwn
@@ -0,0 +1,40 @@
+[[!meta title="Iteration planning: March 11&ndash;25"]]
+[[!meta date="2023-03-11 15:50:00 +0000"]]
+[[!tag meeting]]
+
+# Notes
+
+We decided to not follow the usual meeting structure and instead only
+discussed how to refactor the Subplot code base.
+
+We've again made some progress towards switching from using Pandoc to
+parse markdown to using the `pulldown-cmark` crate. Lars is slowly
+converting the "visitor" modules to use the new abstract syntax tree.
+
+For this iteration:
+
+* Lars will drop `pandoc_ast` as a dependency in favor of
+ `pulldown_cmark`, and a custom representation of a parsed Markdown
+ document. Lars will probably use a lightweight abstraction for HTML,
+ and rewrite the `pandoc_ast::MutVisitor` use to query that instead.
+* Lars will drop the `Markdown::set_metatdata` method and
+ `Markdown::to_json` methods, and generate HTML directly from the new
+ abstract syntax tree. This means we won't be using Pandoc to produce
+ output, either.
+* [[!subplotissue 312]] was opened about a dependency problem. Daniel
+ will implement a fix. He has done enough to realize that our MSRV
+ (1.60) is old enough that it causes problems with updating
+ dependencies. We decided to amend our MSRV to be "whatever is in
+ Debian unstable" for now, and change this to "whatever is in Debian
+ testing", once Subplot is in Debian testing.
+ - Lars will make an MR to record this decision.
+* Daniel will update our Docker image for testing with the MSRV
+ version to use a newer version.
+* Lars will make an MR to record the decision that HTML is the only
+ output we need to produce from `subplot docgen`.
+
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/04/22/planning.mdwn b/blog/2023/04/22/planning.mdwn
new file mode 100644
index 0000000..b9ab01d
--- /dev/null
+++ b/blog/2023/04/22/planning.mdwn
@@ -0,0 +1,136 @@
+[[!meta title="Iteration planning: April 22&ndash;May 06"]]
+[[!meta date="2023-04-22 15:30:00 +0000"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+# Assessment of the iteration that has ended
+
+We've been lax about keeping minutes so far, this year, due to life,
+work, and the dark winter time taking a toll on our ability to work on
+Subplot. We have concentrated on making changes and less on taking
+meeting minutes.
+
+We have switched away from Pandoc, and no longer use it to parse
+markdown input, or to produce typeset output. As part of that we have,
+at least temporarily, dropped support for PDF output, and only support
+HTML output. We're close to the end of the current goal now.
+
+# Discussion
+
+## Async meeting
+
+Due to network problems, we couldn't do a synchronous video meeting
+today, so we're doing this async using a merge request.
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK. We're over the limit on seats, but it
+seems we can increase the seats for free.
+
+We will review the billing page every iteration or two.
+
+The current period of GitLab granting us free resources as an open
+source project is stated as coming to an end soon despite Daniel
+requesting an extension.
+
+
+## Repository review
+
+We didn't review any issues, but did review merge requests, and CI
+pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Closed MRs | CI |
+| :------------------------------------------------------------------------------ | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images](https://gitlab.com/subplot/subplot-container-images) | 1 | 4 | 0 | 3 | OK (GitLab) |
+| [subplot-web](https://gitlab.com/subplot/subplot-web) | 1 | 3 | 0 | 81 | OK (Ick) |
+| [subplot](https://gitlab.com/subplot/subplot) | 49 | 268 | 1 | 312 | OK (GitLab) |
+
+We discussed the open merge requests:
+
+- [[!mr 322]] (fix(src/codegen.rs): formatting)
+ - apparently `cargo fmt` results in different formatting with
+ different versions of the Rust toolchain, and so CI fails with the
+ MSRV toolchain or the current toolchain
+ - we should change the MSRV test to NOT run clippy or formatting
+ checks
+
+Extra branches:
+
+- there is now only one extra branch, for [[!mr 322]]
+- Lars deleted his old branches, now that we no longer use Pandoc
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - we will work on reducing Subplot dependencies that aren't already
+ in Debian
+ - need the dependency list; we are not targeting bookworm
+
+## What's remaining for current goal?
+
+We need to add support for multiple markdown input files (see
+[[!subplotissue 318]]). Once this is done, we can re-enable
+`reference.md`, and then make a release, and when we do, we should see
+if we can use GitLab CI to build an executable binary of the release.
+
+We decided to not worry about using marked data types. It's a good
+idea, but not actually a blocker for the current goal.
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. This is merely an initial sketch.
+
+We'll improve documentation and generally aim at making Subplot more
+plausibly usable by people outside of the Subplot project.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We intend to work on the following issues
+([[!ms 9]]), mostly carried over from the previous iteration:
+
+- [[!subplotissue 318]] -- _Lacks support for multiple markdown files_
+
+## Actions
+
+These are in addition to work on issues chosen for this iteration.
+
+- Daniel to determine what happened and ensure we won't lose our OSS
+ SaaS subscription.
+- Lars to produce a list of dependencies of Subplot, for
+ [[!subplotissue 119]].
+- Lars to change the MRSV CI pipeline to NOT run clippy or formatting
+ checks.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/05/20/planning.mdwn b/blog/2023/05/20/planning.mdwn
new file mode 100644
index 0000000..92ae1e3
--- /dev/null
+++ b/blog/2023/05/20/planning.mdwn
@@ -0,0 +1,167 @@
+[[!meta title="Iteration planning: May 20 &ndash; June 03"]]
+[[!meta date="2023-05-02 15:30:00 +0000"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+# Assessment of the iteration that has ended
+
+Actions from the previous meeting:
+
+- DONE: Daniel to determine what happened and ensure we won't lose our
+ OSS SaaS subscription.
+ - we're good for another year
+- NOT DONE: Lars to produce a list of dependencies of Subplot, for
+ [[!subplotissue 119]].
+ - carried over to this new iteration
+- DONE: Lars to change the MRSV CI pipeline to NOT run clippy or
+ formatting checks.
+ - [[!mr 323]]
+
+We made progress, if not quite all we planned in the previous planning
+meeting. The highlight of the past month is that Subplot now allows
+any number of markdown files to be used ([[!subplotissue 318]]).
+
+We're getting close reaching the current goal. This feels good.
+
+
+We had an in-person meeting and decided to extend the iteration until
+today. There were pancakes.
+
+# Discussion
+
+## Async meeting
+
+Due to scheduling problems, we couldn't do a synchronous video meeting
+today, so we're doing this async using a merge request.
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+
+## Repository review
+
+We didn't review any issues, but did review merge requests, and CI
+pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Closed MRs | CI |
+| :------------------------------------------------------------------------------ | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images](https://gitlab.com/subplot/subplot-container-images) | 1 | 4 | 0 | 3 | OK (GitLab) |
+| [subplot-web](https://gitlab.com/subplot/subplot-web) | 1 | 3 | 0 | 82 | OK (Ick) |
+| [subplot](https://gitlab.com/subplot/subplot) | 51 | 270 | 1 | 320 | OK (GitLab) |
+
+The open MR in the subplot repository ([[!mr 331]]) didn't need
+discussing in the meeting, and is under ongoing review.
+
+Extra branches: none.
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - we will work on reducing Subplot dependencies that aren't already
+ in Debian
+ - need the dependency list; we are not targeting bookworm
+
+## What's remaining for current goal?
+
+We can re-enable `reference.md`, and then make a release. When we do,
+we should see if we can use GitLab CI to build an executable binary of
+the release.
+
+There is an optional task to split `subplot.md` into multiple files
+([[!subplotissue 235]]), which may involve rewriting some of it using
+what we've learned about writing good subplots. However, that is a
+large task, and may need to be postponed, or splitting it into smaller
+tasks.
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. It will need to be discussed in
+depth when we finish the previous goal.
+
+We'll improve documentation and generally aim at making Subplot more
+plausibly usable by people outside of the Subplot project.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We think we can finish goal 3 this iteration. We intend to work on the
+following issues ([[!ms 10]]).
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - Lars to produce a list of crates in the Subplot dependency graph
+ that aren't in Debian bookworm. This doesn't fully resolve the
+ issue, but is a necessary step forwards.
+- [[!subplotissue 268]] -- _Re-enable reference.md_
+ - Also requires fixing up any problems that crop up.
+ - Assigned to Lars, who is eager to finish goal 3.
+- [[!subplotissue 305]] -- _Maybe create binary releases?_
+ - Assigned to both Daniel and Lars. Should be done as part of, or
+ just after the release for this iteration.
+- [[!subplotissue 323]] -- _Make release to mark end of goal 3_
+ - Assigned to Daniel.
+
+Stretch goals for this iteration, to be completed if there's time and
+energy, or dropped from the iteration if not:
+
+- [[!subplotissue 96]] -- _Error for "do not understand binding"
+ should say in what file the not-understood binding use is found_
+ - To implement this, add location information to `Scenario` and
+ `ScenarioStep`, and to the `BindingUnkown` error variant.
+ - Assigned to Lars, who has been doing error location changes
+ recently.
+- [[!subplotissue 235]] -- _The Subplot subplot (`subplot.md`) is too long_
+ - Lars to split up the long file into shorter ones. This doesn't
+ necessarily fully resolve the issue as it doesn't update the
+ contents to follow what we now think are best practices, but it's
+ a step forward at least.
+- [[!subplotissue 317]] -- _Lacks a way to force `docgen` to produce output_
+ - Lars keeps being annoyed by this. Might just drop the "do we
+ really need to write output?" feature or turn it into optional
+ behavior.
+- [[!subplotissue 319]] -- _https://subplot.tech/ has broken links to examples_
+ - Lars runs a cron job to check links and will amend it to find the
+ broken links, and then submit an MR anything found by the link checker.
+- [[!subplotissue 322]] -- _Subplot should warn in code block has identifier, but no .file attribute_
+ - Lars will try to do this, as it's something that recently annoyed
+ him.
+
+## Actions
+
+No additional actions this time.
+
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/06/03/planning.mdwn b/blog/2023/06/03/planning.mdwn
new file mode 100644
index 0000000..0362472
--- /dev/null
+++ b/blog/2023/06/03/planning.mdwn
@@ -0,0 +1,182 @@
+[[!meta title="Iteration planning: June 3 &ndash; June 17"]]
+[[!meta date="2023-06-03 13:30:00 +0100"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+# Assessment of the iteration that has ended
+
+The previous iteration was [[!ms 10]]
+
+Actions from the previous meeting:
+
+- DONE: Lars to produce a list of dependencies of Subplot, for
+ [[!subplotissue 119]].
+ - There are six direct-dependency crates entirely missing
+ - Many insufficent versions which are not listed in the issue for now
+
+We have made several small changes during this iteration, though we did
+not complete the planned release. Fortunately things came up in this
+iteration which means it was a good thing as we'd otherwise have to
+do another release now.
+
+We're getting even closer to reaching the current goal. This feels good.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues (see below) and MRs. We made the decision
+to keep the reference test MR open until the release process during
+the next iteration.
+
+We also checked in on CI pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Closed MRs | CI |
+| :------------------------------------------------------------------------------ | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images](https://gitlab.com/subplot/subplot-container-images) | 1 | 4 | 0 | 3 | OK (GitLab) |
+| [subplot-web](https://gitlab.com/subplot/subplot-web) | 1 | 3 | 0 | 84 | OK (Ick) |
+| [subplot](https://gitlab.com/subplot/subplot) | 50 | 273 | 1 | 334 | OK (GitLab) |
+
+The open MR in the subplot repository ([[!mr 333]]) is related to `reference.md`
+
+Extra branches: none.
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - we have updated the issue with the current not-yet-packaged
+ list of direct dependencies. No more action expected at this time.
+
+## What's remaining for current goal?
+
+We can re-enable `reference.md`, and then make a release. When we do,
+we should see if we can use GitLab CI to build an executable binary of
+the release.
+
+There is an optional task to split `subplot.md` into multiple files
+([[!subplotissue 235]]), which may involve rewriting some of it using
+what we've learned about writing good subplots. However, that is a
+large task, and may need to be postponed, or splitting it into smaller
+tasks.
+
+Lars raised an issue regarding running `subplot docgen foo/bar.subplot`
+not finding markdown documents properly. [[!subplotissue 324]] needs
+resolving before we make the release for this goal.
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. It will need to be discussed in
+depth when we finish the previous goal.
+
+We'll improve documentation and generally aim at making Subplot more
+plausibly usable by people outside of the Subplot project.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We did an issue review for all non-someday-maybe issues with a view to
+setting up the goal label for final action this iteration.
+
+- [[!subplotissue 96]] _Error for "no not understand binding"..._
+ - We removed this from iteration planning because we're not sure
+ when we can get to it - it's not important enough for goal 3.
+- [[!containerissue 2]] _There is no Docker image for using Subplot_
+ - We decided to close this as a preferable approach will be a single
+ binary release method.
+- [[!subplotissue 235]] _The Subplot subplot `subplot.md` is too long_
+ - We agreed to remove this from the iteration planning, and move it
+ from goal 3 to goal 4.
+ - This is likely to be a more complex thing than just splitting up
+ the document and we want more time to think.
+- [[!subplotissue 263]] _What is a good way to include Rust step…_
+ - We put this tentatively into goal 4.
+- [[!subplotissue 268]] _Reenable reference.md_
+ - We agreed this should be in this iteration and Lars will continue
+ to be responsible for it.
+- [[!subplotissue 287]] _Needs documentation for Rust step functions…_
+ - We put this tentatively into goal 4.
+- [[!webissue 4]] _Review FAQ_
+ - We removed this from its iteration and unassigned Daniel
+- [[!subplotissue 292]] _Tutorial example is not tested by ./check_
+ - We added goal 4 label
+- [[!subplotissue 308]] _Allow continuing commands across linebreaks_
+ - We had already selected mail style (indentation)
+ - We discussed and didn't want to add support for this in goal 3
+ - Since mail style could be a breaking change though, Lars prepared
+ [[!subplotissue 325]] which is in the goal and iteration to
+ ban indented scenario steps, this way mail style won't be a breaking
+ change when we introduce it in a later goal.
+- [[!subplotissue 319]] _subplot.tech has broken links to examples_
+ - Updated to this iteration, left assigned to Lars
+- [[!subplotissue 320]] _Doesn't verify bindings files very well_
+ - We agreed that even though fixing this would result in not accepting
+ broken bindings we previously didn't error on, this is not a breaking
+ change since those bindings wouldn't have worked anyway.
+ - We put this into goal 4
+- [[!subplotissue 321]] _Lacks a library reference manual_
+ - We put this into goal 4
+- [[!subplotissue 322]] _Subplot should warn if code block…_
+ - We agreed this is important, and that Daniel will have a go in this
+ iteration
+- [[!subplotissue 323]] _Make release to mark end of goal 3_
+ - Brought this into this iteration
+- [[!subplotissue 324]] _Can't process subplot documents that are…_
+ - Lars has self-assigned and put this into this iteration
+ - We agreed it was an mtime detection problem in docgen.
+ - We root-caused that to the markdown_filenames from the subplot
+ metadata and decided on a fix.
+ - Lars will make a MR with the fix and a scenario to ensure this
+ doesn't recur.
+
+We think we can finish goal 3 this iteration. We intend to work on the
+following issues ([[!ms 11]]).
+
+- [[!subplotissue 325]] _Scenario steps may not be indented_
+- [[!subplotissue 324]] _Can't process subplot documents that are in…_
+- [[!subplotissue 323]] _Make release to mark end of goal 3_
+- [[!subplotissue 322]] _Subplot should warn if code block…_
+- [[!subplotissue 319]] _subplot.tech has broken links…_
+- [[!subplotissue 268]] _Re-enable reference.md_
+
+## Actions
+
+No additional actions this time.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/07/planning.mdwn b/blog/2023/07/planning.mdwn
new file mode 100644
index 0000000..9b4b8ed
--- /dev/null
+++ b/blog/2023/07/planning.mdwn
@@ -0,0 +1,166 @@
+[[!meta title="Iteration planning: July 1&ndash;15"]]
+[[!meta date="2023-07-01 13:30:00 +0100"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+[previous meeting]: /blog/2023/06/03/planning
+[subplot-container-images]: https://gitlab.com/subplot/subplot-container-images
+[subplot-web]: https://gitlab.com/subplot/subplot-web
+[subplot]: https://gitlab.com/subplot/subplot
+
+# Assessment of the iteration that has ended
+
+The previous iteration was [[!ms 11]].
+
+There were no actions from the [previous meeting][].
+
+We have made good progress and have nearly finished goal 3. See below
+for what's left.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues (see below) and MRs. We made the decision
+to keep the reference test MR open until the release process during
+the next iteration.
+
+We also checked in on CI pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Closed MRs | CI |
+| :--------------------------- | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images][] | 0 | 5 | 0 | 3 | OK (GitLab) |
+| [subplot-web][] | 0 | 4 | 0 | 86 | OK (Ick) |
+| [subplot][] | 47 | 279 | 0 | 333 | OK (GitLab) |
+
+Extra branches: none.
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - Our plan is to wait until we can do `cargo update` using the Rust
+ toolchain in Debian `testing` without having to adjust any of the
+ dependencies to newer version, before we approach Debian about
+ packaging Subplot.
+ - We hope that an active Debian developer has interest in Subplot,
+ as we neither in position to actively help in maintaining packages
+ in Debian of Subplot and its dependencies. Time will tell if this
+ happens.
+
+## What's remaining for current goal?
+
+We discussed this at some length. We've resolved all but one issue
+labeled for goal 3, but when we reviewed all the issues, we noticed
+things that may cause breaking changes if we change them later. We'd
+like to do all such breakage in goal 3. The things we noticed are:
+
+- [[!subplotissue 326]] Decide what to do about bibliography data__
+ - we already don't use the bibliography stuff, but we allow it in
+ document metadata, so the change we need to do is to stop allowing
+ bibliography information in metadata
+ - not even allowing the metadata to refer to bibliography
+ information is a breaking change
+- [[!subplotissue 261]] _Cleanup functions should run regardless of
+ whether or not their step function succeeded_
+ - we decided to document that step functions must be atomic: either
+ they succeed (and will be cleaned up later by the cleanup
+ function), or they fail and leave nothing to be cleaned up
+ - this is a breaking change as such, but we want to make the
+ expectation clear
+- [[!subplotissue 329]] _Doesn't document that scenario block
+ attributes are reserved_
+ - A markdown document can add nearly arbitrary attributes to a
+ scenario block. In order to avoid breaking changes, when Subplot
+ adds meaning to such attributes, we need to reserve the name space
+ of attributes for Subplot. This needs to be documented.
+ - Doing that will enable to to, for example, have labels on
+ scenarios, [[!subplotissue 228]].
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. It will need to be discussed in
+depth when we finish the previous goal.
+
+We'll improve the quality of life of people using Subplot:
+
+* we'll improve the ease of use and comprehension of the output of
+ documents generated by Subplot
+* we'll improve the documentation of Subplot itself
+* we'll make error messages and other diagnostics more helpful for
+ users to fix whatever the problem is
+
+We aim to have a fairly short and time-boxed goal 4, maybe on the
+order of two or three months. The goal 3 duration (well over a year)
+was long enough to be de-motivating to use as developers. Thus, we
+scope our actual tasks so that they are likely to be achieved by us,
+given our time and energy constraints. We'd rather have more frequent
+small goals than more ambitious goals that take a long time to
+achieve.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We did an issue review for all issues to try to avoid breaking changes
+in the near future. As part of that, we commented on some issues,
+adjusted some issue labels, created a couple of new ones.
+
+We created [[!ms 12]] with the following issues:
+
+- [[!subplotissue 261]] _Cleanup functions should run regardless of
+ whether or not their step function succeeded_
+ - Lars will document that step functions need to be atomic
+- [[!subplotissue 305]] _Maybe create binary releases?_
+ - Daniel will give this a try
+- [[!subplotissue 326]] _Decide what to do about bibliography data_
+ - Lars will drop support for bibliographies in document metadata
+- [[!subplotissue 328]] _Promote location information into
+ Scenario/ScenarioStep_
+ - Daniel will implement this
+- [[!subplotissue 329]] _Doesn't document that scenario block
+ attributes are reserved_
+ - Lars will document this
+
+After these are all done, we have finished goal 3.
+
+## Actions
+
+No additional actions.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/08/30/planning.mdwn b/blog/2023/08/30/planning.mdwn
new file mode 100644
index 0000000..4f4f50f
--- /dev/null
+++ b/blog/2023/08/30/planning.mdwn
@@ -0,0 +1,126 @@
+[[!meta title="Iteration planning: August 30&ndash;September 9"]]
+[[!meta date="2023-08-30 18:00:00 +0100"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+[previous meeting]: /blog/2023/08/planning-2023-08-12
+[subplot-container-images]: https://gitlab.com/subplot/subplot-container-images
+[subplot-web]: https://gitlab.com/subplot/subplot-web
+[subplot]: https://gitlab.com/subplot/subplot
+
+# Assessment of the iteration that has ended
+
+The previous iteration was [[!ms 13]].
+
+There were no actions from the [previous meeting][].
+
+We have only a housekeeping task left, see below.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues (see below) and MRs. We made the decision
+to keep the reference test MR open until the release process during
+the next iteration.
+
+We also checked in on CI pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Merged MRs | CI |
+| :--------------------------- | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images][] | 0 | 5 | 0 | 3 | OK (GitLab) |
+| [subplot-web][] | 0 | 4 | 0 | 90 | OK (Ick) |
+| [subplot][] | 48 | 284 | 0 | 342 | OK (GitLab) |
+
+Extra branches: none.
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - Our plan is to wait until we can do `cargo update` using the Rust
+ toolchain in Debian `testing` without having to adjust any of the
+ dependencies to newer version, before we approach Debian about
+ packaging Subplot.
+ - We hope that an active Debian developer has interest in Subplot,
+ as we neither in position to actively help in maintaining packages
+ in Debian of Subplot and its dependencies. Time will tell if this
+ happens.
+
+## What's remaining for current goal?
+
+We resolved all the main issues we identified last month around goal 3
+but there are still two issues left with the goal 3 label.
+
+- [[!subplotissue 305]] _Maybe create binary release?_ remains as the
+ officially last thing we need to do for goal 3
+ - We've decided to punt on this for goal 3.
+- [[!subplotissue 330]] _Re-enable reference.md after next release_
+ which needs to be done once the goal 3 release is completed.
+ - We still need to do this.
+
+# Goals
+
+## Goal 3: Current goal
+
+We declare this finished as soon as [[!subplotissue 330]] is done.
+
+## Goal 4: Next goal
+
+We'll improve the quality of life of people using Subplot:
+
+- we'll improve the ease of use and comprehension of the output of
+ documents generated by Subplot
+- we'll improve the documentation of Subplot itself
+- we'll make error messages and other diagnostics more helpful for
+ users to fix whatever the problem is
+- we'll improve the existing libraries `lib/files` and `lib/runcmd`
+ by adding steps to make them more convenient to use, and add at
+ least a library to act as an HTTP client
+
+We aim to have a fairly short and time-boxed goal 4, finishing it by
+the end of the year 2023. To achieve this we will keep scopes of tasks
+fairly small.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We did a very brief skim of recent issues and decided on what we needed
+for this final iteration which we wanted to keep pretty lightweight,
+but with a release at the end to complete goal 3 - we will make that
+release in person together at our next meeting.
+
+We did not create a milestone for this iteration. We will create one
+in the next ordinary meeting. However, the following issue needs to be
+resolved:
+
+- [[!subplotissue 330]] _Re-enable reference.md after next release_
+ which needs to be done once the goal 3 release is completed.
+ - Lars volunteered.
+
+After this is done, we have finished goal 3.
+
+## Actions
+
+No additional actions.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/08/planning-2023-08-12.mdwn b/blog/2023/08/planning-2023-08-12.mdwn
new file mode 100644
index 0000000..bb7b632
--- /dev/null
+++ b/blog/2023/08/planning-2023-08-12.mdwn
@@ -0,0 +1,151 @@
+[[!meta title="Iteration planning: August 12&ndash;26"]]
+[[!meta date="2023-08-12 13:30:00 +0100"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+[previous meeting]: /blog/2023/07/planning
+[subplot-container-images]: https://gitlab.com/subplot/subplot-container-images
+[subplot-web]: https://gitlab.com/subplot/subplot-web
+[subplot]: https://gitlab.com/subplot/subplot
+
+# Assessment of the iteration that has ended
+
+The previous iteration was [[!ms 12]].
+
+There were no actions from the [previous meeting][].
+
+We have made good progress and have nearly finished goal 3. See below
+for what's left.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues (see below) and MRs. We made the decision
+to keep the reference test MR open until the release process during
+the next iteration.
+
+We also checked in on CI pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Merged MRs | CI |
+| :--------------------------- | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images][] | 0 | 5 | 0 | 3 | OK (GitLab) |
+| [subplot-web][] | 0 | 4 | 0 | 86 | OK (Ick) |
+| [subplot][] | 47 | 283 | 0 | 340 | OK (GitLab) |
+
+Extra branches: none.
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - Our plan is to wait until we can do `cargo update` using the Rust
+ toolchain in Debian `testing` without having to adjust any of the
+ dependencies to newer version, before we approach Debian about
+ packaging Subplot.
+ - We hope that an active Debian developer has interest in Subplot,
+ as we neither in position to actively help in maintaining packages
+ in Debian of Subplot and its dependencies. Time will tell if this
+ happens.
+
+## What's remaining for current goal?
+
+We resolved all the main issues we identified last month around goal 3
+but there are still two issues left with the goal 3 label.
+
+- [[!subplotissue 305]] _Maybe create binary release?_ remains as the
+ officially last thing we need to do for goal 3
+- [[!subplotissue 330]] _Re-enable reference.md after next release_
+ which needs to be done once the goal 3 release is completed.
+- [[!subplotissue 332]] _Define and document clearly ... breaking change_
+ needs to be compeleted so that we do not accidentally break things
+ in the future.
+
+# Goals
+
+## Goal 3: Current goal
+
+Subplot is altered to treat a YAML document as the root of any subplot
+document, permitting multiple markdown files to be joined into a
+single scenario set or output document. We remove our dependency on
+Pandoc’s AST for internal document representation, and support a
+better range of document metadata as a result. We will use marked data
+types where possible to permit better provenance information in error
+and warning messages; and we will strive to reenable the reference
+tests such that we can make a statement to the effect that post goal
+3, we do not intend to make further breaking changes to the input
+formats or primary behaviours of Subplot.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A3))
+
+## Goal 4: Planned
+
+This goal is very likely to change. It will need to be discussed in
+depth when we finish the previous goal.
+
+We'll improve the quality of life of people using Subplot:
+
+- we'll improve the ease of use and comprehension of the output of
+ documents generated by Subplot
+- we'll improve the documentation of Subplot itself
+- we'll make error messages and other diagnostics more helpful for
+ users to fix whatever the problem is
+
+We aim to have a fairly short and time-boxed goal 4, maybe on the
+order of two or three months. The goal 3 duration (well over a year)
+was long enough to be de-motivating to use as developers. Thus, we
+scope our actual tasks so that they are likely to be achieved by us,
+given our time and energy constraints. We'd rather have more frequent
+small goals than more ambitious goals that take a long time to
+achieve.
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+# Plan for new iteration
+
+## Issues
+
+We did a very brief skim of recent issues and decided on what we needed
+for this final iteration which we wanted to keep pretty lightweight,
+but with a release at the end to complete goal 3 - we will make that
+release in person together at our next meeting.
+
+We created [[!ms 13]] with the following issues:
+
+- [[!subplotissue 305]] _Maybe create binary release?_ remains as the
+ officially last thing we need to do for goal 3
+ - Lars and Daniel to discuss and explore this further. If we choose
+ not to do this for goal 3 it will not be a problem
+- [[!subplotissue 330]] _Re-enable reference.md after next release_
+ which needs to be done once the goal 3 release is completed.
+- [[!subplotissue 332]] _Define and document clearly ... breaking change_
+ needs to be compeleted so that we do not accidentally break things
+ in the future.
+- [[!subplotissue 333]] _Make a release_
+ In order to complete goal 3 we must make a release, so here we go.
+
+After these are all done, we have finished goal 3.
+
+We also labelled [[!subplotissue 303]] with fixed-in-next-version.
+
+## Actions
+
+No additional actions.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/10/07/planning.mdwn b/blog/2023/10/07/planning.mdwn
new file mode 100644
index 0000000..aaf8a47
--- /dev/null
+++ b/blog/2023/10/07/planning.mdwn
@@ -0,0 +1,184 @@
+[[!meta title="Iteration planning: October 8&ndash;21"]]
+[[!meta date="2023-10-07 13:30:00 +0200"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+[previous meeting]: /blog/2023/08/planning-2023-08-12
+[subplot-container-images]: https://gitlab.com/subplot/subplot-container-images
+[subplot-web]: https://gitlab.com/subplot/subplot-web
+[subplot]: https://gitlab.com/subplot/subplot
+
+# Assessment of the iteration that has ended
+
+The previous iteration was [[!ms 13]].
+
+There were no actions from the [previous meeting][].
+
+Subplot development has been quiet, mostly due to work. But we're
+closing goal 3 now.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues (see below) and MRs. We made the decision
+to keep the reference test MR open until the release process during
+the next iteration.
+
+We also checked in on CI pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Merged MRs | CI |
+| :--------------------------- | ----------: | ------------: | -------: | ---------: | ----------: |
+| [subplot-container-images][] | 0 | 5 | 0 | 3 | OK (GitLab) |
+| [subplot-web][] | 1 | 4 | 1 | 90 | OK (Ick) |
+| [subplot][] | 50 | 286 | 2 | 342 | OK (GitLab) |
+
+Extra branches: none.
+
+During the meeting we merged:
+
+- [[!webmr 92]] -- _docs: meeting memo_
+- [[!mr 353]] -- _tests: re-enable reference.subplot_
+- [[!mr 354]] -- _tests: don't run website example in --offline mode_
+
+No open MRs remained.
+
+
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - Our plan is to wait until we can do `cargo update` using the Rust
+ toolchain in Debian `testing` without having to adjust any of the
+ dependencies to newer version, before we approach Debian about
+ packaging Subplot.
+ - We hope that an active Debian developer has interest in Subplot,
+ as we neither in position to actively help in maintaining packages
+ in Debian of Subplot and its dependencies. Time will tell if this
+ happens.
+
+## What's remaining for current goal?
+
+Nothing. We closed it.
+
+# Goals
+
+## Goal 4: new current goal
+
+High level description of goal 4:
+
+- It is plausible for someone to write a new Subplot for their project
+ without support from Lars or Daniel.
+- We shall aim for someone to do the above at or around Christmas 2023
+- There shall be at least some general "Acceptance testing with
+ Subplot" documentation as well as the expected usage material.
+
+Things we might want issues for etc.
+
+1. Installation document
+2. Getting started.
+ - Introduction to acceptance criteria
+ - Tutorial / my-first-subplot-document
+3. Step library documentation
+4. General reference material for Python and Rust runners
+5. Installable binary (`cargo install` is too much for non-Rust people)
+ - Maybe a .deb?
+ - Maybe just a downloadable binary and a `subplot-install.sh`
+6. Tolerable HTML output
+ 1. Correct (not broken HTML as it is right now)
+ 2. Table of contents
+ 3. Some styling support (even if not a pretty style yet)
+ - Maybe this involves templating the HTML somewhat?
+
+Order of work:
+
+* Engineering: 5, then 6.1 (maybe incl some of 6.3), then the rest of 6
+* Documentation: 2, then 1 (once 5 is done), then 3, then 4.
+
+We adjusted issues:
+
+* Dropped from goal 4 as not relevant to goal by our current thinking:
+ - [[!issue 224]] -- _Logging feature in the `subplot` binary needs tests_
+ - [[!issue 235]] -- _The Subplot subplot (`subplot.md`) is too long_
+* Added to goal 4:
+ - [[!issue 36]] -- _Docgen does not support styles / themes_
+ - [[!issue 230]] -- _Would be nice to typeset some captures using monospace_
+ - [[!issue 244]] -- _Typeset captured parts of steps differently based on type of captured value_
+ - [[!issue 292]] -- _Tutorial example is not tested by ./check_
+ - [[!issue 295]] -- _When scenario source has an empty line, the output should have a paragraph break_
+ - [[!issue 305]] -- _Maybe create binary releases?_
+ - [[!issue 315]] -- _Doesn't allow (HTML) docgen output to be controlled via a (tera) template_
+ - [[!issue 336]] -- _HTML output is incorrect_
+ - assigned to Lars
+ - [[!issue 337]] -- _docgen HTML lacks a table of contents_
+
+
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+
+# New text
+
+
+
+
+---
+
+
+
+
+# Plan for new iteration
+
+## Issues
+
+We did a review of all issues. Apart from the updates for goal 4,
+made the following changes:
+
+- [[!issue 335]] -- _Doesn't use DCO or Signed-off-by_
+ - we'll adopt DCO
+ - we need to update our contribution guide
+ - assigned to Daniel
+- [[!issue 304]] -- _Directory where subplot was invoked is not made
+ available to tests_
+ - closed as not something we want to do
+- [[!webissue 5]] -- _Logo looks different on different machines,
+ depending on locally installed fonts_
+ - Lars will convert the image to a form where the viewer doesn't
+ need the font
+- [[!issue 334]] -- _Generated Rust code causes clippy warning_
+ - assigned to Daniel
+ - should be an easy fix
+
+We created [[!ms 14]] with the following issues:
+
+- [[!webissue 5]] _Logo looks different on different machines, depending on locally installed fonts_
+ - assigned to Lars
+- [[!issue 334]] _Generated Rust code causes clippy warning_
+ - assigned to Daniel
+- [[!issue 335]] _Doesn't use DCO or Signed-off-by_
+ - assigned to Daniel
+- [[!issue 336]] _HTML output is incorrect_
+ - assigned to Lars
+
+## Actions
+
+No additional actions.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/blog/2023/11/18/plannaing.mdwn b/blog/2023/11/18/plannaing.mdwn
new file mode 100644
index 0000000..9a19511
--- /dev/null
+++ b/blog/2023/11/18/plannaing.mdwn
@@ -0,0 +1,147 @@
+[[!meta title="Iteration planning: November 18&ndash;December 02"]]
+[[!meta date="2023-11-18 13:30:00 +0200"]]
+[[!tag meeting]]
+
+[[!toc levels=2]]
+
+[previous meeting]: /blog/2023/10/07/planning/
+[subplot-container-images]: https://gitlab.com/subplot/subplot-container-images
+[subplot-web]: https://gitlab.com/subplot/subplot-web
+[subplot]: https://gitlab.com/subplot/subplot
+
+# Assessment of the iteration that has ended
+
+The previous iteration was [[!ms 15]].
+
+There were no actions from the [previous meeting][].
+
+Subplot development has been quiet, mostly due to work, but some
+progress is being made.
+
+# Discussion
+
+## The gitlab.com hosting situation
+
+We reviewed [the billing
+page](https://gitlab.com/groups/subplot/-/billings) for Subplot on
+gitlab.com. It all looks OK.
+
+We will review the billing page every iteration or two.
+
+## Repository review
+
+We reviewed issues (see below) and MRs. We made the decision
+to keep the reference test MR open until the release process during
+the next iteration.
+
+We also checked in on CI pipelines for all the projects in the [Subplot
+group](https://gitlab.com/subplot) on gitlab.com.
+
+| Repository | Open issues | Closed issues | Open MRs | Merged MRs | CI |
+| :--------------------------- | ----------: | ------------: | -------: | ---------: | --------------: |
+| [subplot-container-images][] | 1 | 7 | 0 | 6 | OK (GitLab) |
+| [subplot-web][] | 0 | 5 | 0 | 93 | OK (Ambient) |
+| [subplot][] | 48 | 296 | 0 | 354 | OK (GitLab) |
+
+Extra branches: none.
+
+
+## Recurring items issues
+
+There are some issues tagged
+[`recurring-agenda-item`](https://gitlab.com/groups/subplot/-/issues/?sort=created_asc&state=opened&label_name%5B%5D=recurring-agenda-item&first_page_size=20)
+in the issue tracker, which we discuss in every iteration meeting.
+
+- [[!subplotissue 119]] -- _Subplot is in not in Debian unstable_
+ - Our plan is to wait until we can do `cargo update` using the Rust
+ toolchain in Debian `testing` without having to adjust any of the
+ dependencies to newer version, before we approach Debian about
+ packaging Subplot.
+ - We hope that an active Debian developer has interest in Subplot,
+ as we neither in position to actively help in maintaining packages
+ in Debian of Subplot and its dependencies. Time will tell if this
+ happens.
+ - Our MSRV should now be new enough that we no longer need to be
+ careful about `cargo update`, but this needs to be confirmed.
+
+# Goals
+
+## Goal 4: new current goal
+
+High level description of goal 4:
+
+- It is plausible for someone to write a new Subplot for their project
+ without support from Lars or Daniel.
+- We shall aim for someone to do the above at or around Christmas 2023
+- There shall be at least some general "Acceptance testing with
+ Subplot" documentation as well as the expected usage material.
+
+Things we might want issues for etc.
+
+1. Installation document
+2. Getting started.
+ - Introduction to acceptance criteria
+ - Tutorial / my-first-subplot-document
+3. Step library documentation
+4. General reference material for Python and Rust runners
+5. Installable binary (`cargo install` is too much for non-Rust people)
+ - Maybe a .deb?
+ - Maybe just a downloadable binary and a `subplot-install.sh`
+6. Tolerable HTML output
+ 1. Correct (not broken HTML as it is right now)
+ 2. Table of contents
+ 3. Some styling support (even if not a pretty style yet)
+ - Maybe this involves templating the HTML somewhat?
+
+Order of work:
+
+* Engineering: 5, then 6.1 (maybe incl some of 6.3), then the rest of 6
+* Documentation: 2, then 1 (once 5 is done), then 3, then 4.
+
+
+([Related issues on gitlab](https://gitlab.com/subplot/subplot/-/issues?label_name%5B%5D=goal%3A%3A4))
+
+
+
+# Plan for new iteration
+
+## Issues
+
+We did a review of new and changed issues. We made changes that Lars
+forgot to make notes of.
+
+We created [[!ms 16]] with the following issues:
+
+- [[!issue 346]] -- _Our CI should fail if a library isn't sufficiently documented._
+ - Lars will change `subplot libdocgen` to fail if a library doesn't
+ have non-empty documentation for each step, with an option
+ `--merciful` to allow that. He will then change `./check` to use
+ `libdocgen` to produce formatted documentation for every library
+ shipped with Subplot.
+- [[!issue 344]] -- _The generated reference manual need to be
+ published on <https://doc.subplot.tech>._
+ - Lars will change Subplot CI to publish the generated library
+ documentation on `https://doc.subplot.tech`.
+ - This requires [[!issue 346]] to be done first.
+- [[!issue 345]] -- _Add formatting markers (eg. classes) to all captures_
+ - Lars will change how scenarios are typeset (not as a `<pre>`
+ block, but as separate lines in a paragraph) and make captures are
+ indicated with a `<span>` with a suitable class.
+- [[!containerissue 8]] -- _Update baseline from bullseye to bookworm_
+ - Daniel will change the `Dockerfile` to use `bookworm` instead of
+ `bullseys` and fix anything that breaks.
+- [[!issue 342]] -- _Create automated release artifacts_
+ [[!issue 305]] -- _Maybe create binary releases?
+ - Lars and Daniel will collaborate on these.
+- [[!issue 339]] -- _Doesn't warn about untyped captures in bindings
+ files_
+ - Daniel will fix this.
+
+## Actions
+
+No additional actions.
+
+# Meeting participants
+
+- Daniel Silverstone
+- Lars Wirzenius
diff --git a/faq.mdwn b/faq.mdwn
index 7ef6737..20c26d7 100644
--- a/faq.mdwn
+++ b/faq.mdwn
@@ -1,12 +1,45 @@
[[!meta title="FAQ or Frequently Asked Questions"]]
+# What is Subplot?
+
+Subplot a tool to document acceptance criteria and requirements, and
+how they're verified, in a way that all stakeholders can understand
+and sign off on. Almost as a side effect, it can generate code to do
+the verification automatically.
+
+The primary goal of Subplot is to make sure the software being built
+is the right software, and as a side effect to verify that at least
+the most important requirements that can be verified automatically are
+met.
+
+# How does Subplot work?
+
+Basically, you write a document, which embeds verification scenarios
+using a given/when/then type language.
+
+The document is then processed in one way to produce a human readable,
+formatted, typeset version that all stakeholders read and are asked to
+agree on.
+
+Processed another way, the document results in code that executes the
+verification scenario. Simplified: each given/when/then step is mapped
+to a function call that is given specific parts of the step text as
+arguments.
+
+
# How does Subplot differ from Cucumber?
[Cucumber]: https://en.wikipedia.org/wiki/Cucumber_(software)
[Gherkin]: https://en.wikipedia.org/wiki/Cucumber_(software)#Gherkin_language
-[Cucumber][] is a tool for running test suites written in [Gherkin][],
-whereas Subplot is a tool for typesetting technical documentation
-which happens to, as a side effect, output test suites based on a
-Gherkin-like language embedded in the document
+[Cucumber][] is a tool for running test suites written in [Gherkin][].
+
+Subplot is in some ways very similar to Cucumber and Gherkin, and
+borrows heavily from them. However, our primary emphasis is not the
+automated tests, but building mutual understanding among the
+stakeholders of a system.
+
+# How does Subplot use AI or large language models?
+
+It doesn't.
diff --git a/index.mdwn b/index.mdwn
index bd4f2c8..ec0d05a 100644
--- a/index.mdwn
+++ b/index.mdwn
@@ -100,17 +100,14 @@ See actual, working, tested examples:
* The Unix echo command
([html](https://doc.subplot.tech/echo.html),
- [PDF](https://doc.subplot.tech/echo.pdf),
[source](https://gitlab.com/subplot/subplot/-/blob/main/examples/echo/echo.md)).
* A hypothetical JSON store with access control and a web API
([html](https://doc.subplot.tech/muck.html),
- [PDF](https://doc.subplot.tech/muck.pdf),
[source](https://gitlab.com/subplot/subplot/-/blob/main/examples/muck/muck.md)).
* Subplot's own acceptance criteria, a non-trivial example
([html](https://doc.subplot.tech/subplot.html),
- [PDF](https://doc.subplot.tech/subplot.pdf),
[source](https://gitlab.com/subplot/subplot/-/blob/main/subplot.md)).
# Architecture
diff --git a/subplot.svg b/subplot.svg
index 3346f6d..05c7365 100644
--- a/subplot.svg
+++ b/subplot.svg
@@ -2,23 +2,23 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1.9052559in"
height="2.2in"
viewBox="0 0 171.47303 198"
id="svg2"
version="1.1"
- inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
+ inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
sodipodi:docname="subplot.svg"
inkscape:export-filename="/home/liw/subplot.png"
inkscape:export-xdpi="104.5"
- inkscape:export-ydpi="104.5">
+ inkscape:export-ydpi="104.5"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs4" />
<sodipodi:namedview
@@ -29,22 +29,25 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="3.7052395"
- inkscape:cx="-37.769572"
- inkscape:cy="129.71287"
+ inkscape:cx="-37.784332"
+ inkscape:cy="129.95111"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
showborder="true"
units="in"
inkscape:window-width="2560"
- inkscape:window-height="1341"
+ inkscape:window-height="1333"
inkscape:window-x="0"
- inkscape:window-y="27"
+ inkscape:window-y="0"
inkscape:window-maximized="1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
- fit-margin-bottom="0">
+ fit-margin-bottom="0"
+ inkscape:showpageshadow="2"
+ inkscape:pagecheckerboard="0"
+ inkscape:deskcolor="#d1d1d1">
<inkscape:grid
type="axonomgrid"
id="grid4136"
@@ -111,38 +114,32 @@
id="layer1"
inkscape:label="text"
transform="translate(7.7942327,9)">
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:45px;line-height:1.25;font-family:Cortoba;-inkscape-font-specification:Cortoba;letter-spacing:0px;word-spacing:0px;fill:#c8c8c8;fill-opacity:1;stroke:none;stroke-width:0.9375;"
- x="17.816244"
- y="118.86308"
- id="text5231"><tspan
- sodipodi:role="line"
- x="17.816244"
- y="118.86308"
- style="font-size:90px;fill:#c8c8c8;fill-opacity:1;stroke-width:0.9375;"
- id="tspan5233">SP</tspan></text>
+ <g
+ aria-label="SP"
+ id="text5231"
+ style="font-size:45px;line-height:1.25;font-family:Cortoba;-inkscape-font-specification:Cortoba;letter-spacing:0px;word-spacing:0px;fill:#c8c8c8;stroke-width:0.9375">
+ <path
+ d="m 48.616244,113.56308 q 4.05,0 7.15,-0.8 3.1,-0.8 4.85,-2 1.8,-1.2 2.9,-2.85 1.1,-1.7 1.45,-3.15 0.35,-1.45 0.35,-3.05 0,-3.899997 -2.95,-6.499997 -2.9,-2.6 -9.1,-4.2 l -16.25,-4.3 q -12.9,-3.35 -12.9,-15.25 0,-8.95 6.25,-14.1 6.3,-5.2 17.1,-5.2 11.3,0 17.6,5.35 6.3,5.35 6.4,15.05 h -7.95 q -0.1,-6.45 -4.3,-9.9 -4.2,-3.45 -12.05,-3.45 -6.65,0 -10.7,3.05 -4,3 -4,8 0,3.8 2.4,5.95 2.4,2.15 8.4,3.75 l 16.5,4.45 q 6.7,1.8 10.3,6.1 3.65,4.25 3.65,10.349997 0,2.65 -0.7,5.2 -0.65,2.55 -2.45,5.3 -1.8,2.75 -4.6,4.85 -2.75,2.05 -7.4,3.35 -4.6,1.35 -10.5,1.35 -3.7,0 -7.1,-0.6 -3.35,-0.55 -6.85,-2.15 -3.5,-1.6 -6.05,-4.05 -2.55,-2.5 -4.25,-6.65 -1.65,-4.15 -1.7,-9.499997 h 7.95 v 0.5 q 0,2.749997 0.85,5.199997 0.85,2.45 2.8,4.8 1.95,2.3 5.75,3.7 3.85,1.4 9.15,1.4 z"
+ style="font-size:90px"
+ id="path174" />
+ <path
+ d="m 133.36619,72.563083 q 0,8.35 -5.1,13.4 -5.1,5.05 -13.25,5.05 H 94.366187 v 27.849997 h -8.4 V 53.213083 h 27.150003 q 9.7,0 14.95,5.05 5.3,5 5.3,14.3 z m -39.000003,11.15 h 17.450003 q 6,0 9.4,-3.05 3.4,-3.1 3.4,-8.5 0,-5.4 -3.4,-8.45 -3.4,-3.05 -9.4,-3.05 H 94.366187 Z"
+ style="font-size:90px"
+ id="path176" />
+ </g>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:45px;line-height:1.25;font-family:Cortoba;-inkscape-font-specification:Cortoba;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.9375"
x="31.176914"
y="107.99999"
- id="text5239"><tspan
- sodipodi:role="line"
- id="tspan5237"
- x="31.176914"
- y="146.96254"
- style="stroke-width:0.9375" /></text>
- <text
- xml:space="preserve"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:45px;line-height:1.25;font-family:Cortoba;-inkscape-font-specification:Cortoba;letter-spacing:0px;word-spacing:0px;fill:#c8c8c8;fill-opacity:1;stroke:none;stroke-width:0.9375;"
- x="61.644169"
- y="161.69461"
- id="text5243"><tspan
- sodipodi:role="line"
- id="tspan5241"
- x="61.644169"
- y="161.69461"
- style="fill:#c8c8c8;fill-opacity:1;stroke-width:0.9375;">α</tspan></text>
+ id="text5239" />
+ <g
+ aria-label="α"
+ id="text5243"
+ style="font-size:45px;line-height:1.25;font-family:Cortoba;-inkscape-font-specification:Cortoba;letter-spacing:0px;word-spacing:0px;fill:#c8c8c8;stroke-width:0.9375">
+ <path
+ d="m 74.019169,162.14461 q -4.41,0 -7.155,-3.105 -2.745,-3.15 -2.745,-9.315 0,-6.12 2.7,-9.36 2.7,-3.24 7.56,-3.24 2.655,0 4.41,0.945 1.8,0.9 2.97,2.745 h 0.27 q 0.225,-0.765 0.585,-1.665 0.36,-0.9 0.855,-1.575 h 3.105 q -0.315,0.99 -0.585,2.61 -0.27,1.62 -0.405,3.42 -0.135,1.8 -0.135,3.42 v 9.36 q 0,1.395 0.54,1.98 0.54,0.54 1.305,0.54 0.36,0 0.765,-0.09 0.405,-0.09 0.585,-0.135 v 2.88 q -0.315,0.18 -1.035,0.36 -0.72,0.225 -1.485,0.225 -1.665,0 -2.745,-0.81 -1.035,-0.81 -1.53,-2.88 h -0.315 q -1.035,1.53 -2.745,2.61 -1.71,1.08 -4.77,1.08 z m 0.675,-3.285 q 3.735,0 5.265,-2.115 1.575,-2.16 1.575,-6.795 v -0.27 q 0,-4.5 -1.485,-6.84 -1.44,-2.385 -5.4,-2.385 -3.285,0 -4.86,2.385 -1.575,2.385 -1.575,6.93 0,4.5 1.53,6.795 1.575,2.295 4.95,2.295 z"
+ id="path179" />
+ </g>
</g>
</svg>