23:30:02 <gaba> #startmeeting S31
23:30:02 <MeetBot> Meeting started Tue Nov 19 23:30:02 2019 UTC.  The chair is gaba. Information about MeetBot at http://wiki.debian.org/MeetBot.
23:30:02 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic.
23:30:18 <gaba> pad with the agenda is here: https://pad.riseup.net/p/IRjuGtQkWNKZLc7qskDb
23:30:25 <gaba> please add anything you think we need to talk about
23:31:49 <ahf> o/ i'm here with half-an-eye
23:32:14 <gaba> ok, anybody has anything to add?
23:33:02 <nickm> I'd like to go down our main deliverables to check in where we are
23:33:17 <nickm> I guess that's part of the agenda already?
23:33:18 <gaba> sounds good. I will add them to the pad
23:33:29 <gaba> yes, but we can be more specific
23:33:59 <teor> Sorry, network issues, here now
23:34:39 <nickm> hi teor !
23:35:38 <gaba> ok, let's start with an update then
23:36:35 <gaba> how the last 2 weeks have been? There are 7 open must tickets
23:36:54 <nickm> two are needs-review
23:36:59 <catalyst> i'm reviewing #32207
23:37:00 <gaba> yes :)
23:37:09 <nickm> I just closed #32279
23:37:32 <gaba> almost all of those tickets are documentation
23:37:42 <catalyst> i've been delayed by following up with some GSoD stuff; i don't expect to need to do much there for another few weeks
23:37:56 <teor> I think they're all documentation now
23:38:05 <gaba> yes
23:38:26 <catalyst> doc format migration stuff is kind of a moving target but not too difficult to track
23:38:33 <gaba> thanks catalyst for following on the gsod
23:39:30 <gaba> any other update? do any of you need help with anything in the next 10 days about the work on your plate?
23:39:57 <nickm> So I expect that I will have a good chunk of the remaining stuff done, but want to keep going on some things.
23:40:11 <nickm> I have gotten pretty backed up trying to figure out testing for #32279
23:40:20 <catalyst> teor: i might want additional review on #30984 (which is mostly doc stuff now and might end up including some of #32208)
23:40:46 <nickm> For the documentation in general, I'm happy to write any area, but I'm a bit unsure what to write. Recommendations are welcome :)
23:41:09 <nickm> I think I could call #29214 done if need be, though it is a perpetually unfinished task
23:41:34 <nickm> catalyst: please let me know if there's any other high-level architectural stuff I could usefully do
23:42:03 <catalyst> nickm: ok
23:42:32 <nickm> wrt config refactor: i'm thrashing a bit on #32427. I'm going to try to wrap it up tonight or tomorrow
23:42:48 <nickm> Then I've got to do #32408
23:44:14 <teor> catalyst: happy to do review, just add me as a reviewer. Or ping me on IRC/Signal.
23:44:24 <catalyst> teor: thanks!
23:45:07 <teor> I realised that we don't have good tooling for tracking dependencies between modules. And eliminating unnecessary ones.
23:45:25 <teor> So I've been focused on #32522, should have something useful by the end of today.
23:45:45 <teor> (Which in my case is 8 hours away.)
23:45:52 <nickm> ack
23:46:28 <gaba> nice
23:46:47 <teor> So far I've discovered 10+ duplicate includes across the codebase, and about the same number of PRIVATE defines that no longer exist.
23:47:44 <teor> But I'd like to automate the process of building without each include, and deleting the ones that aren't needed.
23:49:08 <nickm> sounds reasonable, we need to be careful.  Some defines might only be needed on some platforms
23:49:44 <teor> And some includes as well.
23:49:57 <catalyst> i recall someone (isis maybe?) mentioned a tool that tries to minimize includes when this came up before
23:50:04 <teor> I think our CI should catch most of those, and we should conditionalise the rest per-platform.
23:51:07 <catalyst> maybe this one https://github.com/include-what-you-use/include-what-you-use but i vaguely recall it seeming clunky to use
23:51:10 <nickm> I also remember that it sucked up a huge amount of isis's time, and they couldn't get it to work so well
23:51:45 <catalyst> oh, uses lots of clang internals. that doesn't sound too robust for us to use in CI
23:53:15 <gaba> ok
23:53:20 <gaba> can we move to go through the deliverables?
23:53:34 <teor> I wouldn't use it in CI, I think we should run it after every new alpha branch is split off. So we can detect missing includes in our alphas.
23:54:54 <nickm> gaba: ok with me. what's next?
23:55:05 <gaba> ok
23:55:18 <gaba> first deliverable is "Refactored architecture for how Tor modules should communicate, designed to reduce module complexity and maintenance burden. "
23:57:07 <nickm> I believe we've got that significantly done.  We've made a huge bunch of improvements.
23:57:26 <nickm> Our remaining config work will help a little more, but we could call it  done as it stands.
23:57:31 <nickm> teor,catalyst : agree?
23:57:58 <catalyst> we've made significant improvements, which is what we set out to do, as i recall
23:57:59 <teor> Does the control refactor fit in there as well?
23:58:20 <gaba> in the pad for writing the report I have been trying to divide the tickets per "category" or deliverable
23:58:31 <nickm> I believe it does.
23:58:55 <nickm> unless it fits as "new architecture for several key tor modules"
00:01:16 <nickm> For the documentation: I think we have a bunch more documentation than we did when we started, and it is much better organized.
00:01:31 <gaba> yes
00:01:36 <gaba> that is the deliverable for "Architectural documentation for how Tor modules work with one another, covering both the actuality and the refactored architecture. "
00:01:41 <nickm> yes
00:01:50 <nickm> there's always room for more, and I'd like more feedback on what we have, but I think we've made a good bunch of progress
00:02:54 <gaba> is there any significant improvement for "New architecture for several key Tor modules." ?
00:03:13 <nickm> do you mean, left to do? or done?  We have improved so much since we started withs work
00:03:20 <gaba> done
00:03:45 <teor> We made the relay module optional
00:03:46 <teor> * parts of the relay module
00:04:21 <gaba> maybe it makes sense to write all this down in the pad for the report that we need to send. https://pad.riseup.net/p/sponsor31-last-report
00:04:27 <catalyst> we made progress on improved architecture for config.c and control.c
00:04:43 * gaba is writing this there...
00:05:27 <nickm> we refactored config and main a lot too.
00:05:36 <nickm> (when did this project start?)
00:05:55 <gaba> Project Period: December 1, 2018 - November 30, 2019
00:06:42 <gaba> and the last 2 deliverables are related to testing and documentation on those modules.
00:07:30 <nickm> so fwict this covers everything in 0.4.1.x and later, plus much of 0.4.0.x
00:08:05 <gaba> yes
00:08:11 <gaba> next item in the agenda is the report :)
00:08:25 <gaba> can you all check if i'm not missing something there? https://pad.riseup.net/p/sponsor31-last-report
00:08:49 <nickm> is there a target date for getting a complete list of tickets?
00:08:59 <nickm> And is there an outline for what we want to write, and who drafts which part?
00:09:04 <gaba> yes. We are sending the report the first week of December
00:09:13 <gaba> I used all the tickets that closed until last week
00:10:04 <nickm> ok. so every ticket that was closed with  S31 as a sponsor up till then should be on this list?
00:10:08 <gaba> that pad has a start on what we would like to write. For the previous report I drafted a few paragraphs for each part. For this one it would be great if we can divide it because MOSS also wants us to write a blogpost about this project.
00:10:15 <gaba> yes nickm
00:10:15 <teor> We should do a final list at the end of NovemberA?
00:10:36 <gaba> We can just list all the tickets closed after last week and then add those
00:11:01 <gaba> We are at November 19th. I would just go in closing this sooner than later
00:11:12 <gaba> Mostly if we only have 4 or 5 more tickets to include
00:12:05 <teor> I'm not sure what you mean? We close tickets when they are merged?
00:12:08 <nickm> so how about we aim for a draft of a few paragraphs for each section by the end of the week?
00:12:16 <gaba> Do any of you is interested in writing about any part of this report/blogpost? There is something that you all already wrote for the documetnation that could help.
00:12:27 <gaba> sounds good
00:13:15 <gaba> teor: what I am saying is that we can add tickets that get closed and we do not have to go through all the tickets again
00:13:44 <teor> Sure, that makes sense
00:13:59 <nickm> I'm happy to write some of this but not all.  For every person, is there a part you'd be comfortable writing a couple paragraphs about?  If so I can do whatever nbody else wants
00:14:07 <teor> I am going to add #32407, because it is merged to master, but open for backport
00:14:18 <gaba> ok
00:14:42 <gaba> Please, feel free to change anything related to teh categories I added if you think does not fit the ticket
00:15:26 <teor> It's already there,
00:15:31 <gaba> ok
00:16:35 <catalyst> gaba: how did you generate the ticket list for this draft report?
00:17:24 <gaba> I exported the CSV from the trac query. Let me add the link to the query at the top of the pad
00:18:59 <nickm> I think it makes sense to move these around not during this meeting
00:19:13 <gaba> ok
00:19:14 <nickm> maybe we can figure out who writes what parts, though?
00:20:10 <gaba> yes
00:20:13 <gaba> volunteers?
00:20:50 <gaba> teor, catalyst: do you want to write any part of this?
00:21:07 <nickm> (I will do anything but not everything). Does anybody care what sections they do or don't do?
00:21:36 <catalyst> i'd like to work on the sections that will largely contain stuff i'll already be writing for docs :)
00:21:53 <nickm> ok, are those ones that you could mark on the report pad?
00:22:56 <catalyst> not sure i'm finding it yet
00:23:40 <gaba> catalyst: please add them to the pad and add your name to it
00:24:40 <gaba> teor: any preference?
00:24:55 * nickm grabs "architectural documentation" and "improved testing" and "new architecture", but is happy to give them up
00:26:26 <gaba> ok, the last topic I added to the agenda is to think a little about the after-life of s31
00:26:45 <gaba> we do not have to totally discuss it here but start thinking if there is any of this work that will continue in December and January
00:27:25 <nickm> I think there is.  It also depends how much other work we will have
00:27:26 <teor> Sorry, I was moving things around in the report like gaba asked, didn't see the messages
00:28:24 <gaba> nickm: there is little work from s28 (RACE) and s30 (bridges) that network team could help with in January and February but other than that there is no other sponsor for the next 3 months.
00:28:26 <teor> I am happy to do tests, tooling, and CI. I would like nickm to draft config, and then I can add things?
00:28:56 <teor> Oh, and I want to do the relay and dirauth bits
00:29:09 <gaba> sounds good teor. add your name to the pad
00:30:16 <gaba> anything else for today?
00:30:19 <nickm> ok. if there are parts left over for any of the major headings, please mark them for me?
00:30:52 <nickm> I think I'm set.
00:31:08 <catalyst> a few tickets i worked on seem to be missing from the report for some reason
00:31:25 <gaba> catalyst: oh, can you add them?
00:32:27 <catalyst> gaba: ok
00:33:03 <gaba> thanks. sorry that i missed them
00:33:15 <gaba> teor, catalyst: anything else for today?
00:33:47 * catalyst is good for now
00:34:00 <teor> There's a lot of overlap between "Refactored architecture for how Tor modules should communicate" and "New architecture for several key Tor modules"
00:34:11 <teor> How can we decide which tickets go in each one?
00:34:47 <teor> I feel like config and control actually belong in "communicate", but I am happy to discuss
00:34:48 <nickm> I'd say that intermodule achitecture goes in the first, and module-local improvements go in the second?
00:35:03 <nickm> I am fine with calling config and control "communicate"
00:35:09 <nickm> or not
00:35:13 <nickm> both ways are ok w me
00:36:08 <gaba> ok. We are in 66 minutes since we started the meeting.
00:36:58 <gaba> We can follow up after the meeting on this and check at the end of the month again.
00:37:04 <gaba> Any last thing?
00:37:05 <nickm> teor: I left you a question on #32427, but if you can't get to it today, that's ok
00:37:30 <gaba> I'm going to end the meeting. Thanks everybody!
00:37:33 <gaba> #endmeeting