Actions from last time

  • Daniel to file an issue about making codegen require an explicit template declaration. – Subplot issue 128 was filed (and fixed)
  • Daniel to review open merge requests from Lars. – Done
  • Lars and Daniel to schedule a discussion about running scenarios conditionally. – Done, Lars updated Subplot issue 20 with results of conversation.

This meeting

We finished Subplot milestone 18, having fixed Subplot issue 124, Subplot issue 102, Subplot issue 122, and Subplot issue 107.

Progress was made on Subplot issue 123, Subplot issue 101, Subplot issue 20.

We agreed this iteration was probably too large over all, and this makes us sad because we can’t finish everything. We were all pleased that Dan got to contribute again.

We closed Subplot milestone 18 and created Subplot milestone 19.

Pending MRs

There were no pending merge requests in subplot-web.

There is a WIP for rust codegen, and a daemon library MR.

Daemon library

Daniel noted that Lars had been a very naughty boy and use sleep(). This approach is bad because it can waste time and it also can be insufficient for its intended purpose. Lars marked this as draft in order to not have it merged yet.

Rust codegen

Lars has skimmed over it. It uses parts of Rust which Lars isn’t familiar with. It doesn’t work with Buster’s rustc which is a problem. It turns out the matches!() macro is a problem on Buster’s rustc. Lars is willing to drop the requirement that we work with Buster’s rustc at this point.

Branch review

Subplot-web had a branch from Lars’ trialling which he has now cleaned up. Subplot itself only has branches for the open MRs.

Issue review

Subplot-web has no issues.

Subplot itself has 30 open issues, last time we went over them all, so this meeting we only looked at changed / new issues.

  • Subplot issue 127 - This was an issue Lars filed while working on something using subplot. We labelled this codegen, feature, helpwanted, somedaymaybe.
  • Subplot issue 129 - Regarding architectures other than amd64 - Lars’ coworker reported that whenever he runs apt update he gets a warning that the subplot repository does not support i386. Daniel added a note about adding [arch=amd64] instead. Lars intends to alter the script to do this. Lars retitled the issue and tentatively assigned it to the new iteration.
  • Subplot issue 130 - Came up while Lars was pairing with Dan. Lars said he could do this pretty easily, so assigned it to himself and into the new iteration. Daniel pointed out it’s important that our CI uses the script if we write it.
  • Subplot issue 131 - Daniel labelled this someday-maybe actively-discussed hard feature. Daniel also tentatively put it into the iteration for discussion.
  • Subplot issue 101 - Daniel moved it to the new iteration.
  • Subplot issue 20 - We discussed Daniel’s comment about cleanups, and after some careful pondering we came to an agreement which Lars documented on the issue. Daniel added a bullet pointed action plan to the top of the issue, removed the actively-discussed label, and created and added a tracking label. Daniel marked this as blocked by Subplot issue 132 which was tentatively put into this new iteration
  • Subplot issue 123 - This is going into the new iteration as Lars is working on this already and has a WIP MR.

Issues in the old iteration which were not completed

Planning the next iteration

We then went through our tentative plan for 9 issues in Subplot milestone 19.

We assigned Subplot issue 131 to Daniel and Lars.

We also added Subplot issue 22 to the milestone assigned to Dan.

Discussing the WIP Rust MR.

Daniel raised the point that the typemap in the MR is just string to string currently. Lars thinks it’s a good idea to have this and to have it checked in the AST pass.

In terms of extraction of the feature, we should use the typemap to help guide the construction of regular expressions from simple patterns, instead of the current optional typing in the simple patterns.

Daniel described how Option<argtype> will work eventually.

Daniel mentioned the new filters he added to Tera, Lars asked for it to be split into a separate MR.

Lars intends to file an MR to add .tera to the other template names.

Regarding the tracking of getting new users to Subplot

We added Subplot issue 116 as a blocker to Subplot issue 118, labelling Subplot issue 125 as a tracking issue.

Lars is concerned that we’re still not getting people to try Subplot. Perhaps we could redo the Fable experiment. We will plan for the next iteration (i.e. the one starting Dec 20th) to include efforts toward this.

Regarding Subplot in Debian

Daniel marked Subplot issue 119 as a tracking issue and marked it blocked by Subplot issue 125.

We’re not in a position to support subplot for 2 years yet. As such we’re not aiming it at Bullseye

Divergence between codegen templates

Python template has --env the Bash one does not. On the one hand, we don’t necessarily want to support CLI options in the generated bash. On the other hand we feel bad if bash is a third class citizen.

Daniel suggested that all runners are going to have their own individual sets of properties/capabilities. As such, rather than worrying about making all the runners have the same capabilities, we should have a table of what has what.


  • Daniel to extract cargo fmt commit from Subplot merge request 105 into a new MR for merging.
  • Daniel and Lars to set up a call about Subplot issue 131.
  • Daniel to split typemap work out into a separate MR so that it can be reviewed and merged independently of the Rust runner work. (Daniel to file an issue before doing this to include our decided approach).
  • Lars to file MR to add .tera to bash and python template
  • Daniel to file an MR for splitting out the filters in the Rust MR.
  • Daniel to file an issue about embedding templates with a view to cargo install related to Subplot issue 66 and Subplot issue 109.
  • Lars to open an issue about how we don’t have the feature table for runners.
  • Schedule pairing session with Dan to help him work through Subplot issue 22