18:00:40 <nickm> #startmeeting weekly network team meeting , 11 December 2017
18:00:40 <MeetBot> Meeting started Mon Dec 11 18:00:40 2017 UTC.  The chair is nickm. Information about MeetBot at http://wiki.debian.org/MeetBot.
18:00:40 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic.
18:00:43 <nickm> Hi everybody!
18:00:59 <nickm> Teor has made us a pad at https://pad.riseup.net/p/JwIxVq6RkMMk
18:01:06 <dgoulet> ahoy
18:01:29 <nickm> hi isabela (on a plane), dgoulet, asn, ahf, isis, catalyst, komlo, armadev, mikeperry, Sebastian, and others!
18:01:40 <catalyst> hi
18:01:48 <ahf> heeey!
18:02:17 <nickm> first announcement is: no meetings between 25 Dec and 5 Jan!  Not that you necessarily had expected any, but I'm sure not going to try to have meetings then. ;)
18:02:58 <nickm> second announcement: i want to get 0.3.2.7-alpha (or rc?) out this thursday or friday. :)
18:03:03 <nickm> so that the TB folks can ship it
18:03:31 <ahf> cool
18:03:46 <dgoulet> rc ftw :D
18:03:50 <nickm> Somebody typing on a lovely shade of yellow (dgoulet?) has added an announcement to remind folks about the new _free() convention
18:04:03 <dgoulet> yes me
18:04:32 <nickm> so make sure you take a look at the new "allocator convention" section of CodingStandards.md if you ever need to write new() and free() function for a type
18:05:25 <ahf> neat, very nice work with that
18:06:59 <nickm> thx! it made the rest of the in-process-restart logic pretty easy
18:07:03 <nickm> at least as far as crashes go
18:07:48 <catalyst> nickm: wow were that many crashes due to dangling pointers?
18:08:40 <nickm> So, this is for the case when tor stops, but doesn't exit(), and then you restart it in the same process
18:08:45 <nickm> that was previously unsupported...
18:08:57 <nickm> so yeah; there were lots of dangling pointers left at shutdown
18:10:44 <ahf> this is going to make mike happy on ios
18:11:01 <nickm> well, once all the logic bugs get straightened out
18:11:13 <nickm> just because it doesn't crash, doesn't mean it's all sunshine and giggles
18:11:30 <ahf> no no, that is true
18:11:47 <nickm> so!  While folks are finishing their status updates -- let's go through and read things and put interesting stuff in boldface!
18:12:40 <dgoulet> ouf 249 tickets in 033...
18:12:50 <dgoulet> much triage needed eheh
18:13:19 <nickm> dgoulet: yes indeed
18:14:06 <nickm> komlo: +1 on the more rust tasks thinking
18:14:27 <nickm> ahf: left some questions for you on your items
18:15:04 <nickm> dgoulet: yeah.  And what's worse, there are a huge number of needs_revision and new tickets.  We should either accept or defer the 'new' ones.
18:15:21 <dgoulet> indeed, I'll do a pass this afternoon
18:15:41 <dgoulet> and also freeze is in theory Jan 15th! so it is coming fast
18:15:48 <nickm> I'm thinking maybe we should also look over the needs_review tickets to see if anything is stalled and needs fixing
18:15:58 <ahf> i think i mean to tor-android. i need to get some patches into https://github.com/n8fr8/tor-android to include the bench/test tools if you build it in debug mode
18:16:06 <ahf> maybe it's some danglish?
18:16:12 <nickm> ahf: no, you're right --
18:16:26 <nickm> i just was hoping you might get stuff from tor-android merged into Tor
18:16:43 <ahf> i want to have things upstreamed to the orbot repos such that other people can use it too if they need to
18:17:00 <ahf> and so that everyone who builds the android stuff will get these right away without having to do anything weird with adb
18:17:38 <nickm> makes sense
18:18:34 <ahf> re: event loop stuff, right now i log on a timer how often we return from calls to event_base_loop(), don't think that is ideal, but i'm unsure what the best way to make the counter available
18:18:38 <ahf> over CP?
18:19:04 <nickm> part of heartbeat message maybe?
18:19:19 <ahf> can you tune how often they are written?
18:19:21 <ahf> from torrc?
18:19:25 <nickm> yes
18:19:31 <ahf> then i think that might be best, yes
18:19:35 <ahf> cool
18:19:37 <nickm> (control port is a problem, since the control port uses the event loop, and causes wakeups)
18:19:47 <ahf> didn't think of using the heartbeat message
18:22:02 <nickm> looks like we only have a few discussion things this week
18:22:12 <nickm> (anybody still writing or bolding?)
18:22:19 <dgoulet> not here
18:22:31 <Hello71> not presently, but I want to talk about meson
18:22:43 <nickm> ok. so, teor wants volunteers to help with refreshing the fallback mirror list
18:23:16 <nickm> this is probably a matter of shadowing teor as he sends a bunch of emails, helping send them, learning how to run the scripts, and generally being an understudy so that two people will know how it's done
18:23:47 <nickm> If you know anybody who'd be good for the role, you should try to talk them into doing it.  If that person is you, that's also pretty cool!
18:24:02 <nickm> any thoughts here? anybody want to pick it up, or help  Tim find somebody?
18:25:21 <dgoulet> for sure a +1, this is a good idea for teor to get a second person to help (or at least know the process)
18:25:43 <pastly> I can be a fallback teor understudy if no one else wants
18:27:30 <nickm> that's awesome, pastly!
18:27:33 <Hello71> I would also be unopposed to doing that
18:27:41 <nickm> that's awesome, hello71!
18:27:55 <nickm> please reach out to teor and he'll help you get started?
18:28:07 <nickm> also anybody else who is interested should reach out
18:28:20 <nickm> next topic on the list that I see: 0.2.3.7-rc (?) is coming out this week
18:28:34 <nickm> we need to make sure that we fix any/all the blocking issues on 0.3.2.x
18:28:57 <ahf> ok
18:29:02 <nickm> I think the only one I'm not sure about is the issue with bridges and startup that the TB folks have been asking about, which Tim's patches were related to
18:29:24 <dgoulet> #24423 is also important to get in for the scheduler fix
18:29:29 <dgoulet> I've ACk that part
18:30:54 <nickm> cool. catalyst has just taken on reviewership for 24423, so we'll see if we can merge it all at once, or if we need to do a partial backport
18:31:46 <nickm> dgoulet: actually, if the KIST thing in 24423 is a real bug, maybe it should have a real ticket, and a changes file
18:31:53 <nickm> do you have time to write one?  I don't know what the bug actually is here
18:31:54 <dgoulet> it is a real bug indeed
18:32:02 <dgoulet> sure I can do that
18:32:05 <nickm> thanks!
18:32:22 <nickm> do we have other tickets that we should prioritize for 032 this week?
18:32:46 <nickm> (if so please make sure i know about them and somebody is working on them?)
18:33:10 <nickm> next topic not already discussed: Hello71 wants to talk about meson!
18:34:08 <nickm> (how about you introduce the topic, Hello71?)
18:34:10 <Hello71> so I was working on https://trac.torproject.org/projects/tor/ticket/20424, and it was painful, so I rewrote the build system in meson.
18:34:19 <ahf> the build system?
18:34:21 <ahf> oh ok
18:34:26 <Hello71> autotools etc
18:34:29 <Hello71> oh, I see
18:34:52 <Hello71> and I was wondering if anyone thought this was a good idea
18:35:08 <asn> ugh around!
18:35:13 <nickm> why was it hard to remove the enable-openbsd-malloc option?
18:35:16 <nickm> hi asn !
18:35:27 * asn catches up with pad backlog
18:35:31 <Hello71> well removing it isn't hard, but I wanted to add an option to link with jemalloc
18:36:11 <Hello71> I was assuming by the radio silence on #20424 that nobody wants to look at autotools bugs.
18:36:21 <ahf> while i don't think autotools is very nice, i've never really liked anything else better :/
18:37:14 <Hello71> overall I like it much better than both autotools and cmake
18:38:07 <Hello71> rust support is apparently kinda "meh" in that it only runs rustc and not cargo, but that's no worse than autotools
18:38:45 <Hello71> benefits for tor developers would be: faster compile, probably better out-of-source-build support, easier changes down the road
18:39:03 <Hello71> are those pain points for anyone?
18:39:08 <nickm> well, benefits-in-theory would be.
18:39:13 <Hello71> (also, is this even the correct meeting to talk about this)
18:39:42 <ahf> can one see you work? it might just be me, but i've never looked at a project that uses it
18:39:45 <nickm> Well, we're all here, so it's not necessarily a _bad_ time?
18:39:48 <ahf> sitting and reading their tutorial now
18:40:01 <Hello71> ah, I put my work on my git
18:40:11 <Hello71> https://cgit.alxu.ca/tor.git/commit/?h=meson&id=a0a6f3c4d0a0fb5f4d5bf2a27bc086dceb89ea96 this commit is the bulk of it
18:40:17 <ahf> thank you
18:40:24 <nickm> generally speaking the problem that we've had to deal with with most replacements for autotools is that it's hard for them to get true feature parity, and hard to port stuff over.
18:41:17 <nickm> http://mesonbuild.com/Users.html
18:41:34 <Hello71> I expected this to be very hard, but it only took me about two days.
18:41:53 <ahf> this code is missing all the compiler warning flags we test for and enable too, no?
18:41:58 <Hello71> yes
18:42:02 <ahf> (just the first thing that came to my mind)
18:42:09 <Hello71> and also docs and tests
18:43:06 <ahf> i'd have to look more at meson before i have an opinion
18:43:27 <Hello71> that's cool. I brought it up a few times in #tor-dev, but I wanted to make it more well known
18:43:29 <Hello71> and get more opinions
18:43:51 <dgoulet> perhaps a tor-dev@ thread could be useful. I kind of feel packagers might also want to weigh in possibly on this
18:44:12 <catalyst> also relay operators who might want to build from source on more unusual platforms
18:44:47 <Hello71> I also do packaging for Gentoo and AUR (not tor, but other packages). changing to meson wouldn't make a huge difference either way.
18:44:54 <nickm> So, some of these projects are fairly serious, so that's a good sign...
18:45:04 <Hello71> the present build system is already fairly clean, but there are some odd things like that torint.h
18:45:28 <Hello71> if people don't like meson then I could work on cleaning up configure.ac and torint.h and whatnot but keep autotools
18:45:31 <nickm> removing cruft from the autotools system seems orthogonal to porting it to something else
18:46:06 <nickm> one thing about autotools is that it's "the devil you know" -- we have a few people who have experience fighting with it when it breaks
18:46:07 <Hello71> well replacing it would imply that there wouldn't need to be a separate cruft removal work
18:46:08 <catalyst> yeah torint.h did look like it was mostly superfluous last time i looked at it. isn't there a ticket about it already though?
18:46:12 <nickm> yes
18:46:25 <nickm> Hello71: no, that's a bad idea IMO. Let me explain what I mean
18:46:53 <nickm> if we're going to replace the build system, we should try to get the new one to behave the same as the old one: invoking the same code, setting the same flags, using the same option, etc
18:47:11 <Hello71> ah, yes, I thought of my original benefit; meson is better for newcomers, which seem to be more common in the past few weeks (possibly related to 0.3.3?)
18:47:21 <nickm> if we just throw stuff out at the same time we're replacing the build system, it seems likely that we will throw out things that seemed "crufty" but actually had a purpose.
18:47:39 <Hello71> hm... yes, you do make a good point
18:47:48 <nickm> https://xkcd.com/927/
18:47:52 <Hello71> so you would propose that if we were to change, then we should use both for some time
18:47:58 <Hello71> ?
18:48:28 <nickm> not sure.  Other projects have tried to migrate build systems, and usually only one build system gets serious testing at a time
18:48:31 <nickm> something to think about, I think
18:48:31 <Hello71> my plan was to get approval from everyone, then switch in one release
18:48:47 <nickm> i wonder if we can run them both in parallel and see if they produce the same outputs :)
18:49:24 <nickm> I think step 0 here is probably for folks to learn more about meson and see if they fall in love with it
18:49:47 <Hello71> yeah, that's why I wanted to bring it up in the meeting here, just to gauge some initial responses
18:50:11 <Hello71> if people think "eh, not really better" then the point is sorta moot
18:50:14 <nickm> what does it output?  Does it become or introduce new build dependencies?
18:50:42 <Hello71> as designed, it requires that meson is present at build time
18:50:53 <nickm> yikes
18:50:55 <Hello71> meson requires python, I believe either 2 or 3
18:52:04 <Hello71> I reason that this is not a major issue, since tor is not a critical operating system component, and python is likely to be already ported to any platform of interest
18:52:18 <Hello71> almost certainly more than rust, and we are moving in that direction anyways
18:52:48 <nickm> hm. Well, I guess we should get some experience with it then
18:53:03 <nickm> (I'm personally not thinking this is an 0.3.3 item)
18:53:04 <Hello71> AIUI the hope is that rust works out well and the C implementations can be deprecated and eventually removed
18:53:09 <Hello71> ah, yes, I agree
18:53:14 <Hello71> not urgent in the slightest
18:54:02 <Hello71> so I guess we're done with that. anyone have anything else? if not, I guess the meeting can be concluded (sorry for dragging it out so long)
18:54:14 <nickm> any other topics for today?
18:54:30 * dgoulet is good
18:54:50 <nickm> ok
18:55:01 <nickm> thanks, everybody!  ttyl!  I'll be on #tor-dev through the afternoon!
18:55:05 <nickm> #endmeeting