22:59:18 <ahf> #startmeeting network team meeting, 5 february 2020
22:59:18 <MeetBot> Meeting started Wed Feb  5 22:59:18 2020 UTC.  The chair is ahf. Information about MeetBot at http://wiki.debian.org/MeetBot.
22:59:18 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic.
22:59:22 <ahf> hello hello!
22:59:29 <catalyst> o/
22:59:29 <nickm> hihi!
22:59:36 <ahf> who is here for first network-team meeting in february? :-)
22:59:46 <ahf> o/ catalyst & nickm
22:59:58 <ahf> our pad is at https://pad.riseup.net/p/tor-netteam-2020.1-keep
23:00:49 <ahf> okay, let's start out with roadmap stuff: https://dip.torproject.org/torproject/core/tor/-/boards
23:01:02 <ahf> are people doing alright there?
23:01:37 <nickm> I'm pretty much wrapped up in 043 stuff the last few days, but I may get back to those things soon I hope :/
23:01:58 <ahf> yeah, that makes sense. it would be good if people could prioritize 043 stuff right now
23:02:28 <ahf> i wonder if it'll just be the 3 of us here or if we should give everybody else a bit of time. usually we are more at the wednesday meetings
23:02:47 <ahf> gaba is in europe so its late for her and i don't know if mike perry is home yet
23:03:14 <teor> I am here, I was trying to get through my emails :-)
23:03:43 <ahf> o/ teor
23:03:48 <teor> I have been focused on Sponsor 55, I expect I will have to spend most of my time on it, at least until the end of next week
23:04:04 <teor> I still have to write the stats proposal (313) and open tickets for the essential work
23:04:48 <ahf> sounds good
23:05:09 <ahf> are everybody good with the stuff they need to review this week?
23:05:27 * ahf has 2 reviews that he is behind with, but doesn't seem to be blocking network team folks
23:06:01 <teor> I'll just check my reviews now
23:06:25 <nickm> checking ... I'm prioritizing the ones that are in 043.  I probably won't be able to review 044 code for a little while
23:06:41 <ahf> oki, #32373 is the only one that has no reviewer and is from a NT person
23:06:46 <ahf> err
23:06:55 <ahf> #32372
23:07:18 <ahf> ok, everything is assigned now. nice
23:08:04 <nickm> I wonder if we have too many reviewers on #33072 and #33029?  I'm not exactly sure who is supposed to be doing what when.
23:08:10 <gaba> hey
23:08:16 <gaba> ohhhh, I thought it was in an hour
23:08:18 <gaba> nice
23:08:28 <ahf> gaba: :-D then i'd be very tired
23:08:33 <gaba> mmm, nevermind, confusing meetings...
23:08:34 <gaba> hehe
23:08:40 <ahf> yeah, s55 is in 50 min i think
23:08:41 <gaba> s55 is in one hour...
23:08:43 <gaba> yes
23:08:55 <gaba> one way or the other, I'm here :)
23:08:56 <ahf> nickm: hm, that is a good question. i haven't followed it much myself
23:09:02 <ahf> but is it one of those things with too many chefs in the kitchen or?
23:09:05 <nickm> I just hope nothing is blocking on me
23:10:04 <nickm> I guess should have a look soon :/
23:10:39 <ahf> ah, it's david who wrote one of the patches
23:10:49 <ahf> i was about to say that this seems like the kind of stuff david is usually very interested in
23:11:25 <ahf> nickm: anything we need to delegate to somebody else?
23:11:57 <teor> I have commented on those tickets, and removed myself as a reviewer.
23:12:01 <ahf> yeah, saw that
23:12:20 <nickm> Can I delegate #33069 to asn? it's related to something he's working no
23:12:24 <nickm> *working on
23:12:46 <ahf> i can try to talk to asn tomorrow about it
23:12:52 <nickm> ok
23:12:54 <ahf> asn can also see the backlog
23:12:59 <ahf> but i'll note it down
23:13:02 <ahf> cool!
23:13:25 <ahf> let's do a 0.4.3 status: https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/CoreTorReleases/043Status
23:14:15 * ahf is going to focus on #33119 tomorrow
23:14:23 <nickm> I've got a lot of stuff there.  Several of them are more advanced than it looks like there, but there's more to do
23:14:49 <ahf> hm, arma has a ticket there. i hope he is aware of that
23:15:23 <nickm> I can take #33103 ; I looked at it for a moment and the fix looks simple
23:15:35 <ahf> is this the one catalyst found last week?
23:15:48 <ahf> hm, no
23:16:32 <nickm> I just did a batch modify to put the "must" tickets (and only the musts) as "high" priority
23:16:33 <catalyst> no, that was getconf
23:16:38 <ahf> yeah
23:18:15 <ahf> anything else for 0.4.3? other than people should prioritize this since we have a lot there for the next few weeks with an aim of medio april
23:18:50 <nickm> specifically we're trying to get the stable out at April
23:18:57 <nickm> so we really need an rc in March
23:19:20 <ahf> yeah
23:20:16 <ahf> ok, we have some discussion items:
23:20:24 <ahf> * What are our next steps with the C style work?
23:20:32 <ahf> i think it's added by nickm
23:20:38 <nickm> (i'm asking that becasue catalyst and teor are both here)
23:21:15 <teor> What do you need to know, nickm ?
23:21:27 <nickm> so, it seems that we've got three areas of work to do:
23:21:39 <nickm> 1) pick out what style target we want and get all the settings right
23:22:00 <nickm> 2) do the necessary cleanup and infrastructure so that we can run that style without breaking cocci and/or checkSpaces
23:22:14 <nickm> 3) get the infrastructure together to automatically apply it for everybody
23:22:44 <nickm> Right now catalyst is reviewing my changes on 2; we've been discussing 1 a little, but we don't have a firm consensus
23:22:46 <catalyst> i'm still very nervous about applying the new style to the entire tree at once. it'll be harder to review
23:23:20 <nickm> (and 3 is stalled till we get farther on 1 and 2)
23:23:25 <catalyst> i sent out a poll about some formatting options where we don't seem to have consensus, but only see responses from teor?
23:23:43 <nickm> where / when did that go?
23:23:59 <catalyst> (also i still think clang-format is too aggressive about reformatting)
23:24:21 <catalyst> nickm: Jan. 21 to the network-team list
23:24:26 <nickm> does any of the other tools do more like what you'd like?
23:25:26 <catalyst> i'd have to go back and check... clang-format did seem the least bad, apart from being overly aggressive about rearranging line breaks and comments
23:25:33 <ahf> i think you 3 should feel free to not worry too much if people don't respond to your polls. people have had plenty of time to suggest changes here
23:25:43 <nickm> I don't see a poll?
23:26:18 <catalyst> nickm: Re: [network-team] Yet more fun with clang-format
23:26:52 <nickm> The one starting with "Bumping this again." ?
23:26:54 <catalyst> it was more like explicitly proposing two specific changes to to nickm's configuration
23:26:57 <catalyst> nickm: yes
23:27:21 <nickm> Ah. I didn't see that as a poll
23:27:35 <teor> I had a strong opinion on one of them, so I replied. I didn't mind what we chose for the other topics.
23:27:57 <nickm> I don't feel strongly about either of those options
23:28:01 <catalyst> also unresolved is if we choose clang-format, what minimum version do we use?
23:28:27 <teor> I think people may have more opinions when they actually see the consequences of reformatting
23:28:45 <teor> So let's get something working, at least as a demonstration?
23:28:49 <nickm> how do we make progress here?
23:28:50 <teor> Then we can iterate
23:29:04 <catalyst> teor: there's already the demo branch that nickm made. are people not looking at it?
23:29:08 <ahf> don't we have something that we can see? i have seen a version of the tree with this applied in a tarball?
23:29:36 <teor> nickm's demo branch doesn't work yet: it doesn't take my new code, and automatically reformat it.
23:29:54 <teor> That's been our experience with CI: people have opinions once they actually see it working on their code.
23:30:20 <nickm> #32931 is the last work I did here
23:30:24 <nickm> err no
23:30:27 <catalyst> i guess another thing people can do is try editing a few files on the demo branch and see how hard their editor fights with the reformatted code
23:30:28 <nickm> #32921
23:31:03 <nickm> note that there are two branches there: one runs the reformatting on the code as a demo, but the other one is just code cleanups
23:31:18 <ahf> so there is a missing step where clang-format is applied on ... travis? and then we see if there is a delta between what is submitted, or?
23:31:20 <nickm> demo_clang_foramt_20190110 is the demon branch
23:31:45 <nickm> demo
23:31:55 <nickm> [clang_format_prep_2 is the one with only the code cleanups]
23:32:57 <catalyst> so when i last had to bulk-reformat a source tree, we wound up doing a thing with some custom elisp, because everything else we looked at was worse. it would be nice to be able to avoid that
23:32:59 <teor> clang-format should be applied as a pre-commit hook, and modify the code that's about to be committed
23:34:03 <teor> We may also want to apply it as a pre-merge hook, which adds a commit that reformats the code, before merging to master
23:34:17 <teor> Then we can merge forward succcessfully
23:34:18 <ahf> i think pre-commit hook or folks editors' save-file-hook, but i think the CI should also check if the style is what the CI expects
23:34:23 <nickm> Are there suggestions for what I should do next on this?
23:34:39 <teor> Let's choose a small part of the tree, based on:
23:34:58 <ahf> we moved to clang-format with irssi 2 years ago and we just had a date where we said we move on that date and then we broke all the PR's from before that. i was happy with that mostly because it distributed the load on fixing things to everybody and we knew upfront when the style change happened
23:35:15 <nickm> a declared reformat date seems smart
23:35:24 <teor> * code that check-spaces and coccinelle are happy with after reformatting
23:35:41 <teor> * people who are working on that code who are happy to deal with reformatting issues
23:35:54 <teor> Then we can try reformatting that small part of the tree automatically?
23:36:14 <teor> And if that works, we can declare a date for the whole tree>
23:36:15 <teor> ?
23:37:34 <catalyst> another suggestion: * the postprocessing script should be as small/simple as possible, to minimize our ongoing maintenance burden
23:38:12 <nickm> hm. is it too complex as it stands?
23:39:05 <catalyst> haven't looked recently. it might be too complex if we add code to deal with making aligned escaped newlines in macros emacs-consistent? not sure
23:40:03 <teor> I would be happy to deal with reformatting in Sponsor 55, so it might make sense to target the relay, dircache, or dirauth modules
23:40:24 <catalyst> i like being able to do C-c C-\ (or whatever it is) to align escaped newlines in emacs, but maybe i can figure out an emacs config that produces what clang-format does with AlignEscapedNewlines:Left
23:40:51 <ahf> david and i spend some time a year or so ago and took all our common tor vim knowledge and put into a vim module/package
23:41:00 <ahf> i think that was useful. maybe the emacs folks should do something like that
23:41:15 <ahf> we found out we both had a lot of smart editor tricks we used, but not much overlap in them. now we share them
23:41:20 <catalyst> ahf: oh cool. how complicated was it compared to what is needed for other C source trees?
23:41:48 <ahf> we did a dialect of C in vim called "onion C" which the script detects when it is in tor.git and enables that dialect
23:41:57 <catalyst> ahf: nice
23:42:07 <nickm> teor: I don't think we're going to have "check-spaces and cocci happy after reformatting" there necessarily.  There were little changes of various kinds that needed to be made for #32921, and check-spaces stuff I had to remove because it conflicts with our new style
23:42:08 <ahf> like the two spaces and our one space label: things for goto's and such
23:42:24 <ahf> https://github.com/ahf/onion-vim
23:42:24 <catalyst> i might work on an emacs C style for tor; maybe that would help
23:43:07 <catalyst> are there emacs users who would like to collaborate on C style configs for emacs?
23:43:20 <nickm> are we targetting the current style or the new one?
23:43:56 <catalyst> i'd say the new one is more important, but both would be nice
23:44:00 <nickm> i can show you want I have now for emacs, but i don't know how much that would help with the new format
23:44:02 <teor> I use emacs, I'd be happy to try a style
23:45:06 <ahf> i think doing knowledge sharing for this kind of stuff was very useful for david and i
23:45:14 <catalyst> teor nickm: cool, thanks
23:45:39 <catalyst> teor: i think we still disagree about SpaceAfterLogicalNot? anyone else have anything to say about it?
23:45:56 <nickm> My opinion is htat once we're running clang-format, it would be easy to turn that option on or off
23:46:07 * ahf is cool with either :-)
23:46:35 <catalyst> i will note that making it true turns "if (!!foo)" into "if (! ! foo)", which to me seems particularly ugly and breaks up the "cast-to-boolean operator"
23:47:25 <teor> I don't mind it that much, but I will note that the single ! is much more readable with a space after it.
23:47:46 <teor> Perhaps we can do a "! ! " to "!! " post-process?
23:47:47 <nickm> we can turn "! !" into !! easily
23:48:02 <ahf> hm, i think i only see that being used 3 places?
23:48:05 <ahf> the !!
23:48:15 <ahf> ah, no
23:48:28 <ahf> never mind
23:48:54 <nickm> how can we progress forward on this?
23:48:57 <catalyst> teor: hm, how would you compare readability of, say, (!foo) vs (!(a && b)) without the space? how about (!FOO)?
23:49:43 <teor> I honestly really don't care that much
23:49:49 <ahf> (10 min. left before another meeting begins)
23:50:22 <teor> I would rather prioritise getting auto-formatting working, than spend a lot of time deciding on the exact details
23:50:52 <teor> I also agree with nickm: once we are auto-formatting, changes are easy
23:50:57 <ahf> i also don't think we will ever reach something where we all agree 100% about the settings
23:51:21 <ahf> i have many opinions about the style, but i also know that i very quickly will adapt to whatever we pick and based on what i have seen so far it is very small things that would "bug me" in the beginning
23:52:04 <catalyst> i still place a lot of value in "not too different from a widely-adopted style"
23:52:30 <nickm> we're closer to knf than we were before, and we can get closer
23:53:10 <teor> I'm much more interesting in getting auto-formatting working, because I think we will get style feedback from more people once it actually affects them
23:53:58 <ahf> catalyst: yeah
23:54:04 <nickm> Does this block review of #32921 ?
23:54:19 <catalyst> nickm: does which block review?
23:54:52 <nickm> getting the exact style we want and getting auto-formatting together
23:55:20 <ahf> teor: the items you have in the discussion is largely read/only for some specific folks and then getting feedback from your proposals, right?
23:55:23 <asn> ok online
23:55:30 * asn reads backlog
23:56:11 <nickm> (should we have a regular time to talk about style and formatting?)
23:56:39 <ahf> i think that would be good
23:56:46 <nickm> (I can also break 32921 into smaller branches if that's helpful)
23:56:52 <catalyst> nickm: it seems like patch party time might be good for that, given that teor has some opinions?
23:57:17 <nickm> so, this time, but 24 hours earlier than this meeting?
23:57:18 <teor> ahf: yes, I think people can do their reviews, or hand them over, once they get reminders
23:57:18 <ahf> but do note that everybody in the team thinks the work is good and will say otherwise - the silence from other people should not be seen as a blocker i think (based on talking with people in 1:1's) but rather than people don't have very strong opinions about this
23:57:31 <teor> nickm: No, this exact time
23:57:59 <nickm> oh! I could do that for a few weeks, yes, but it does make my dinners pretty awkward.
23:58:00 <teor> https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam#MeetingsSchedule
23:58:13 <catalyst> teor: yes, i meant at the actual patch party slot
23:58:14 <teor> Wednesday 2300 UTC
23:58:29 <nickm> ok. let's do it for a few weeks and see how much progress we can make?
23:58:35 <ahf> this time and monday is the best times for everybody i think. most people show up for those two timeslots
23:58:36 <teor> Great!
23:58:47 <teor> We need to start Sponsor 55 soon
23:58:57 <teor> * the Sponsor 55 meeting
23:59:10 <ahf> yeah, please see the last items on the discussion list by teor and help them review their proposals 8)
23:59:19 <ahf> thanks all for joining!
23:59:25 <ahf> #endmeeting