=== thumper is now known as thumper-afk | ||
=== tasdomas_afk is now known as tasdomas | ||
TheMue | morning | 07:05 |
---|---|---|
fwereade__ | TheMue, heyhey | 07:26 |
TheMue | fwereade__: heya | 07:30 |
TheMue | fwereade__: any good idea on how to test the cleaner? maybe i should export an access to the size of the cleanup collection ... *loudThink* | 07:33 |
fwereade__ | TheMue, yeah, export_test sounds sensible to me | 07:34 |
TheMue | fwereade__: ok, will go this way | 07:36 |
TheMue | *bibber* | 07:49 |
* TheMue switched clothes to summer mode, but right now we have 12°, not very much | 07:49 | |
=== thumper-afk is now known as thumper | ||
thumper | fwereade__: hey, you around? | 07:58 |
fwereade__ | thumper, hey dude | 07:58 |
thumper | fwereade__: I made a calendar appt with you, but perhaps we could do it now? | 07:59 |
fwereade__ | thumper, sure, just 5 mins to clean up some tests please? | 07:59 |
thumper | sure, np | 07:59 |
jam | hi danilos | 07:59 |
jam | would you prefer a G+ hangout to mumble today? | 07:59 |
thumper | hi jam, danilos | 07:59 |
danilos | jam: hi | 07:59 |
jam | hey thumper, I'm suprised to see you still around | 07:59 |
danilos | jam: whatever works for you, generally hangouts | 07:59 |
jam | are you still poaching mgz from me this week ? | 08:00 |
danilos | thumper, hey-hey | 08:00 |
thumper | jam: monday nights are a convenient time to catch up | 08:00 |
jam | danilos: https://plus.google.com/hangouts/_/865fe063d65c84b4533952ee66bfefaec8fc18d8 | 08:00 |
thumper | grab people at the start of the week | 08:00 |
jam | I added it to the calendar event | 08:00 |
thumper | dinner is done here | 08:00 |
jam | thumper: and throttle them? | 08:00 |
danilos | jam: cool, getting in | 08:00 |
thumper | jam: nothing so violent | 08:01 |
rogpeppe1 | mornin' all, BTW | 08:19 |
TheRealMue | rogpeppe1: heya | 08:20 |
=== TheRealMue is now known as TheMue | ||
thumper | mgz_: you up? | 09:06 |
thumper | hi rogpeppe1 | 09:06 |
thumper | rogpeppe1: I have a juju-core branch up for the loggo changes | 09:06 |
rogpeppe1 | thumper: yo! | 09:06 |
rogpeppe1 | thumper: i LGTM'd it | 09:07 |
thumper | cool, ta | 09:07 |
thumper | I'll land things tomorrow | 09:07 |
rogpeppe1 | thumper: great | 09:08 |
rogpeppe1 | thumper: any feedback on the loggo CL? | 09:08 |
thumper | rogpeppe1: it's all good, will land unchanged | 09:08 |
rogpeppe1 | thumper: lovely, thanks a lot | 09:08 |
mgz_ | thumper: yup | 09:08 |
thumper | rogpeppe1: jam also raised the point about the logger and module separatness, and I think it may well be a hang over from C++ where you won't want to hand out pointers you care about | 09:09 |
rogpeppe1 | thumper: what do you think of my other suggested changes (lose case insensitivity, always use ";" as a separator... there might've been another one too) | 09:09 |
thumper | because people might delete them | 09:09 |
rogpeppe1 | ah | 09:09 |
rogpeppe1 | thumper: i think you can probably lose the whole concept of "module" | 09:09 |
thumper | rogpeppe1: actually I may have missed those, but I'm ok with them | 09:09 |
rogpeppe1 | thumper: i just mentioned them in the CL description | 09:10 |
thumper | rogpeppe1: yeah, I think go gives more protection there, so could be ok | 09:10 |
thumper | I thought the other day, when jam suggested it, that I had a good reason why it was bad | 09:10 |
thumper | but when I thought again, I couldn't recall | 09:10 |
thumper | so I'll think a bit more, and we may be able to get rid of modules... and just have loggers | 09:10 |
thumper | mgz_: quick hangout? | 09:11 |
rogpeppe1 | i think that may end up nicer | 09:11 |
jam | thumper: I would probably say that Logger should be an Interface, rather than a concrete type. What do you think? | 09:11 |
rogpeppe1 | jam: why would you want to do that? | 09:11 |
mgz_ | thumper: sure | 09:11 |
thumper | hmm.. that is an interesting idea | 09:11 |
thumper | I like interfaces | 09:11 |
* rogpeppe1 likes interfaces too | 09:11 | |
=== rogpeppe1 is now known as rogpeppe | ||
jam | rogpeppe1: you never want to muck with the internals anyway | 09:12 |
jam | and it lets you do all sorts of nice tricks in test suites, etc | 09:12 |
rogpeppe | jam: hmm, i'm not sure | 09:12 |
jam | It is a bit of "least information that you should care about" which is the interface. | 09:12 |
rogpeppe | jam: it's a big interface | 09:12 |
rogpeppe | jam: and you can already replace the logger with something test-suite specific | 09:13 |
rogpeppe | jam: and if it's not an interface call, the compiler can potentially work out the arguments don't escape | 09:14 |
jam | rogpeppe: 5 related APIs doesn't seem very wide to me, and global objects that must be concrete types can be a bit clumsy when you really want something else. However, I agree that the compile-time optimization is nice. | 09:15 |
rogpeppe | jam: Logger has 16 methods. i'd say that's a pretty big interface. | 09:15 |
rogpeppe | jam: i'd be more interested in something which gave you more than one possible logging hierarchy. | 09:17 |
jam | thumper: what was your thought on the Is* methods being public? Are you expecting people to do a pre-check before computing something expensive? | 09:18 |
rogpeppe | jam: but actually the Writer interface probably gives you everything you need for the fancy tricks in test suites | 09:18 |
thumper | jam: I thought it could be a possibility | 09:19 |
rogpeppe | thumper: i think it's reasonable to expose them, but perhaps compress them all into IsLevelEnabled(Level) bool | 09:21 |
jam | thumper: well, you do have GetEffectiveLevel which gives you that information, it seems a bit of "you can ask 3-different ways for the same info, because we're not sure what fits best". | 09:24 |
rogpeppe | jam: yeah, i tend to agree with that. given how rare it's likely to be, log.EffectiveLevel() <= level is probably good enough. | 09:27 |
rogpeppe | jam: BTW the compiler does currently know that the variadic argument to Logf, Errorf, etc does not escape, and saves an allocation per call accordingly | 09:30 |
thumper | rogpeppe: btw, if you have log.Errorf("100% failure"), it kinda messes up | 09:32 |
thumper | rogpeppe: as it expects params for a % thingy | 09:32 |
thumper | which is why the special case used to be there | 09:32 |
thumper | anyway, I'm off now | 09:32 |
rogpeppe | thumper: that's a problem with using % in any printf format string | 09:32 |
thumper | I'll leave you two to argue | 09:33 |
jam | thumper: doesn't that need to be "100%% " anyway? | 09:33 |
rogpeppe | jam: +1 | 09:33 |
thumper | should have an Error one that only takes a message | 09:33 |
rogpeppe | thumper: govet will warn you about the above | 09:33 |
thumper | not touched govet | 09:33 |
rogpeppe | thumper: yeah. or Error(...interface) | 09:33 |
thumper | does it do pets? | 09:33 |
rogpeppe | thumper: only pet projects | 09:33 |
thumper | ha | 09:33 |
jam | thumper: govet is the "go compiler doesn't believe in warnings only errors, so things we might want warnings on we put in another tool" :) | 09:34 |
rogpeppe | thumper: there's also golint now | 09:34 |
* thumper off to watch game of thrones | 09:34 | |
rogpeppe | thumper: enjoy! | 09:34 |
jam | thumper: enjoy | 09:34 |
rogpeppe | it's interesting seeing what golint says about our code actually | 09:34 |
rogpeppe | the most frequent warning is that it prefers ID to Id. | 09:35 |
jam | rogpeppe: on the same premise as URL vs Url ? | 09:35 |
rogpeppe | jam: i guess. | 09:35 |
rogpeppe | jam: only i'd always reasoned the other way | 09:36 |
jam | though ID isn't an acronym is it? | 09:36 |
rogpeppe | jam: exactly | 09:36 |
rogpeppe | jam: but evidently in google, they've gone with ID | 09:36 |
rogpeppe | jam: github.com/golang/lint/golint if you want to play | 09:37 |
fwereade__ | Makyo, ping | 09:47 |
* rogpeppe is going to reboot again. i'm finding raring really quite buggy. | 10:23 | |
* TheMue is at lunch | 10:37 | |
=== tasdomas is now known as tasdomas_afk | ||
=== fdehay_ is now known as fdehay | ||
=== tasdomas_afk is now known as tasdomas | ||
rogpeppe | sigh. | 10:58 |
* rogpeppe goes off to submit a unity bug | 10:59 | |
mgz_ | jam: standup today? | 11:34 |
TheMue | *facepalm* | 11:45 |
TheMue | Looking for an error at the right place helps a lot. | 11:45 |
jam | mgz_: I probably missed the standup since you and danilos should be fast, but I'm around for 1:1 whenever you are ready. | 11:48 |
mgz_ | we're just wrapping up :) | 11:50 |
mgz_ | mumble? | 11:50 |
danilos | jam: you've had your chance to join in as well :) | 11:50 |
jam | danilos: you were doing a g+ I guess I just missed it | 11:50 |
danilos | jam: yeah | 11:51 |
=== tasdomas is now known as tasdomas_afk | ||
=== tasdomas_afk is now known as tasdomas | ||
* fwereade__ lunch | 12:07 | |
TheMue | ah, bug found | 12:17 |
=== BradCrittenden is now known as bac_ | ||
=== wedgwood_away is now known as wedgwood | ||
rogpeppe | not my day today. second forced reboot of the day. | 15:40 |
rogpeppe | at least i only lost 30 minutes of work this time | 15:41 |
=== tasdomas is now known as tasdomas_afk | ||
mattyw | it looks like under the current version of juju-core (1.11) and possibly tip $HOME isn't set when a hook is running, has anyone else seen or reported this? I couldn't see a bug for it | 16:13 |
rogpeppe | mattyw: hmm, interesting. was it definitely set before? | 16:15 |
mattyw | rogpeppe, 1.10 it seemed to be yes | 16:15 |
rogpeppe | mattyw: fwereade__ would be yer man for knowing about what might have changed there. | 16:16 |
rogpeppe | mattyw: in the meantime, i'd make sure it's reproducible and report a bug | 16:17 |
mattyw | rogpeppe, ok thanks, - while I have your attention: you mentioned in oakland that you'd done some stuff in SBCL yeah? | 16:17 |
rogpeppe | mattyw: yeah | 16:18 |
rogpeppe | mattyw: though my CL skills are somewhat rusty by now... :-) | 16:18 |
mattyw | rogpeppe, have you used it for connecting to secure websockets? I tried to get clojure connected up to the juju-core api over the weekend, the java ssl stuff seems a complete mess | 16:19 |
rogpeppe | mattyw: no; i played a little bit with some web server stuff, but never from client side and not involving ssl | 16:20 |
rogpeppe | mattyw: i'd google around. there are quite a few nice libraries out there | 16:20 |
rogpeppe | mattyw: you're implementing stuff in lisp? | 16:20 |
mattyw | rogpeppe, I have a love hate relationship | 16:21 |
rogpeppe | mattyw: i had fun playing with it, but it really is a baroque language. i imagine clojure is a bit less idiosyncratic though | 16:22 |
mattyw | rogpeppe, clojure has been my favourite, but connecting to wss sockets doesn't just work like in python and go - I get all sorts of crazy exceptions | 16:22 |
rogpeppe | mattyw: i think you're best off persevering with clojure - porting to CL is unlikely to be a breeze | 16:23 |
mattyw | rogpeppe, clojure is the sanest one I've used, but being based on the jvm is a blessing and a curse | 16:23 |
rogpeppe | mattyw: does clojure even do macros in a similar style to CL? | 16:23 |
mattyw | rogpeppe, I've only done clojure macros. I've not done CL macros so I don't know | 16:25 |
rogpeppe | mattyw: are they hygienic? | 16:25 |
mattyw | rogpeppe, I think so yes | 16:25 |
fwereade__ | rogpeppe, mattyw: I'm not sure why that would have happened, I'm afraid, although I'm a bit suspicious of needing $HOME in charms | 16:27 |
mattyw | fwereade__, we've got a binary that gets called in a hook. the binary uses $HOME | 16:28 |
rogpeppe | mattyw: sorry, my laptop just crashed again | 16:29 |
rogpeppe | mattyw: last thing i saw was "i think so yes" | 16:29 |
rogpeppe | i think this laptop might be on its way out | 16:29 |
mattyw | rogpeppe, it ended there | 16:29 |
rogpeppe | mattyw: ah, it must've crashed just after that and i hadn't seen it | 16:30 |
* rogpeppe is well annoyed. just lost 500 words of detailed documentation. | 16:31 | |
rogpeppe | (at least) | 16:31 |
rogpeppe | mattyw: sbcl macros aren't hygienic | 16:33 |
rogpeppe | aargh | 16:35 |
=== deryck is now known as deryck[lunch] | ||
=== wedgwood is now known as wedgwood_away | ||
=== wedgwood_away is now known as wedgwood | ||
rogpeppe1 | g'night all | 17:48 |
=== deryck[lunch] is now known as deryck | ||
=== BradCrittenden is now known as bac | ||
thumper | morning | 21:23 |
hatch | morning | 21:51 |
thumper | perhaps it is time for a second coffee... | 22:11 |
=== wedgwood is now known as wedgwood_away |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!