Assessment of the iteration that has ended

We had planned to work on the following issues for the previous iteration, and finished them:

  • Subplot issue 255Should use “diagram” instead of “graph” for plantuml etc?
  • Subplot issue 256Lacks way to mark an embedded file as being OK that it’s not used in a scenario

We didn’t finish this issue:

  • Subplot issue 283YAML metadata is not in its own file
    • Lars has made a little effort at preparing to work on this by tidying up some error handling, but ran into a desire to rewrite all of Subplot from scratch.

Repository review

We reviewed the open issues, merge requests, and CI pipelines for all the projects in the Subplot group on

The subplot repository

There were 45 open issues and we opted to review only recently changed ones.

  • subplot#283YAML metadata is not in its own file
    • Daniel convinced Lars to not rewrite Subplot from scratch and instead only do a small change to parse a YAML file using the serde_yaml crate, and then construct a Document from that. Further improvements to follow as a series of small changes.
    • has its own Metadata type that is already almost suitable for this.
    • More substantial changes should await for Daniel to make his marked Markdown/YAML parsing usable.
  • subplot#284Switch to using clap3 and the derive feature, rather than the outdated structopt crate
    • Daniel wanted to do this, and updated the description.

There are no open merge requests.

There is one open, old branch:

  • docgen-cmarkprototype to use another Markdown parser
    • Lars wants keep this until the current goal is finished

CI pipelines are OK.

The subplot-web repository

There were no open issues, no open merge requests, no extra branches, and no CI enabled.

The subplot-container-images repository

There was one open issue.

  • subplot-container-images#2There is no Docker image for using Subplot
    • we’re not going to work on this until we stop making breaking changes

Additionally, Daniel pointed out that our Docker image has an extra version of Rust included. He created container#3 to get this fixed.

There were no open merge requests, no extra branches, and the latest run of CI was successful. (That’s the run that was automatically triggered recently.)

Discussion and decisions

Group level milestones

We decided to use GitLab’s group level milestones.

Recurring agenda items

  • subplot#119Subplot is in not in Debian unstable
    • we’re not going to work on this until we are done with goal 3
  • subplot#272Migrate project to issue-based iteration meetings
    • we’re not going to work on this until we have other contributors
  • subplot#273Perform whole-codebase review and cleanup
    • we agreed that during goal 3 we may end up making MRs which are related to this, and that we hope by the end of goal 3 to have reviewed at least a large part of the code base.

Reaching out for feedback

We won’t be reaching out for feedback until goal 3 is done. We didn’t open issue for this, to avoid naming people in public.

New iteration

Current goal

The current development goal is:

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.

This is represented as label goal::3 in the issue tracker.

Issues for this iteration

We collected issues for this iteration in Subplot milestone 1.

  • container#3Remove 1.48 from the container
    • assigned to Daniel
  • subplot#283YAML metadata is not in its own file
    • assigned to Lars
  • subplot#284Switch to using clap3 and the derive feature, rather than the outdated structopt crate
    • assigned to Daniel


We decided not to make a release for this iteration. We will make a release after the YAML metadata loading change is done, maybe next iteration.

Any other business


Gitlab approved open source project

There has been no response from GitLab, Daniel will ping them.

Lars mused about setting up his own CI runner for Subplot. However, we don’t have the resources to support anything but Debian, and so this probably won’t happen.


  • Daniel to ping about making Subplot an approved open source project.
  • Daniel to review his marked Markdown/YAML approach and make a plan for getting into a state where Subplot can use it.
  • Lars to add an Ikiwiki shortcut for referring to the new group level milestones.
  • Lars to reach out to Hillel Wayne about having a look at Subplot.

Meeting participants

  • Daniel Silverstone
  • Lars Wirzenius