[11:41] <Keybuk> rah
[11:42] <Keybuk> Straw Poll:
[11:42] <Keybuk> a) "start on EVENT and EVENT" / "stop on EVENT or EVENT"
[11:42] <Keybuk> or
[11:42] <Keybuk> b) "from EVENT and EVENT" / "until EVENT or EVENT"
[12:29] <shawarma> Keybuk: Well, b) more clearly conveys the fact that upstart manages the job and doesn't just start and stop it.
[01:23] <Keybuk> shawarma: from/until fits in better with adding "while" as well
[01:23] <Keybuk> from starting dbus
[01:23] <Keybuk> until stopped dbus
[01:23] <Keybuk> while filesystem-writable and network-available
[01:24] <Keybuk> (other suggestions from the floor welcome <g>)
[03:55] <Trevelyan`> hi. looking at launchpad it seems that init script replacement jobs writting seems to have stalled. is this true or has the work moved elsewhere?
[03:56] <Keybuk> Trevelyan`: we're working on changes to Upstart itself to make it possible
[03:58] <Trevelyan`> still not happy with how jobs (defs) work?
[03:59] <Keybuk> largely, yes
[03:59] <Keybuk> the issue has been the implementation of more complex event expressions than just an "OR" list
[04:00] <Keybuk> Upstart 0.2 and 0.3 just implement "start on"/"stop on" as a list of events, and any can match
[04:00] <Keybuk> that's obviously not flexible enough (and we knew it wouldn't be)
[04:00] <Keybuk> the delay has been coming up with a replacement expression language that is as flexible as we want, but with very well defined behaviour
[04:00] <Keybuk> I think we're on a very good track for it now, with some really nice features
[04:04] <Trevelyan`> cool. I tried initng, but upstart i think has more promise. however until it has jobs that will do parallel job/process starts i wont get much use out of it, ifykwim.
[04:04] <Trevelyan`> thank you for explaining that.
[04:05] <Keybuk> these things take some amount of time to get right
[04:05] <Trevelyan`> no doubt
[04:05] <Keybuk> and I'm being deliberately cautious, rolling out changes incrementally and testing them, rather than trying to do it all at once
[04:06] <Trevelyan`> sensible, but having said that it surprises me more that upstart went into ubuntu so quick.
[04:06] <Keybuk> how so?
[04:07] <Keybuk> in order to test, you need a group of users to test it on
[04:07] <Trevelyan`> not that it wasn't ready, but how young it was
[04:07] <Trevelyan`> that is true
[04:09] <Keybuk> the set of features of 0.2.7 was a superset of those of sysvinit
[04:09] <Keybuk> so it was an ideal way to test it, since it could behave like sysvinit while stress-testing the new code in the field
[04:11] <Trevelyan`> i gather it went well? since i've not really heard anything that negative about the upstart in ubuntu.
[04:13] <Trevelyan`> anyway i look forward to upstart reaching its full potential, and my laptop booting in a couple of seconds =)
[04:13] <Keybuk> it's gone well, yes
[04:14] <Keybuk> it's taking a little longer to develop than anticipated, but there's no major panics yet :)
[04:15] <ion_> trevelyan: While youre at it, replace the BIOS with something better and faster. :-)
[04:16] <Trevelyan`> http://linuxbios.org/index.php/Main_Page
[04:16] <ion_> Yes. :-)
[04:18] <Keybuk> meh, BIOS isn't that slow
[04:18] <Trevelyan`> although i think that might be a step too far for Dell's tech support to swallow =)
[04:18] <Trevelyan`> they only just about accept the fact we run debian
[04:20] <Trevelyan`> although since they now ship ubuntu i guess they can't blink at our ubuntu desktops.
[04:24] <Trevelyan`> i don't know what dell uses but for their desktops/laptops it fairly fast on what i like to think as cached boots (ie nothings hw or bios wise has changed since last boot)
[04:24] <Trevelyan`> on their servers it can take as long as 5 mins before you reach grub =/
[06:07] <AlexExtreme> Keybuk: what would i need to do if i wanted to add a new command to initctl to change profile?
[06:09] <Keybuk> AlexExtreme: it's a little complicated ;)
[06:09] <AlexExtreme> heh
[06:09] <Keybuk> first you need to modify libupstart
[06:09] <Keybuk> add appropriate messages and replies to upstart/message.h, and then modify upstart/message.c so that the arguments in both directions are correctly marshalled
[06:10] <Keybuk> the usual format here is a "change profile" message from initctl, along with a generic "current profile" message that can be used as both a reply, and as a subscription event
[06:10] <Keybuk> cf. the emit/event series
[06:10] <Keybuk> second you need to modify upstart itself
[06:11] <AlexExtreme> so that it receives the message and does the appropriate thing with it?
[06:11] <Keybuk> this is quite easy, just add a function to init/control.c and hook it into the message table, that handles your marshalled message - it looks like an ordinary function that has some useful effect
[06:11] <Keybuk> and lastly you need to modify initctl
[06:11] <Keybuk> add an action function that makes the appropriate initctl_send call
[06:12] <Keybuk> and add handle functions to deal with the replies
[06:12] <AlexExtreme> ok
[06:15] <Keybuk> http://upstart.ubuntu.com/wiki/JobEventExpressions
[06:15] <Keybuk> ^ for proof-reading and comment
[06:15] <AlexExtreme> *clicks*
[06:17] <AlexExtreme> there's a small typo in the design section
[06:17] <AlexExtreme> "The expression, or sub-expressions within parentheses) must"
[06:17] <AlexExtreme> where's the opening bracket for that closing bracket? ;)
[06:18] <Keybuk> heh
[06:18] <Keybuk> fix it for me :p
[06:18] <AlexExtreme> k :P
[06:19] <AlexExtreme> done
[06:19] <Keybuk> any comments on the design, rather than my typing? :p
[06:19] <AlexExtreme> i haven't finished reading yet ;)
[06:19] <AlexExtreme> bah, what is it with the weather in this country?
[06:19] <AlexExtreme> this is supposed to be summer!
[06:20] <AlexExtreme> gah, thunderstorm overhead, i'll bbiab
[06:21] <Keybuk> it's doing similar here
[06:40] <wasabi> Keybuk, I don't see our "from" idea there. Has that cahnged?
[06:40] <wasabi> oh wait there it is.
[06:40] <wasabi> unresolved issues heh
[06:41] <Keybuk> :)
[06:54] <AlexExtreme> back
[07:02] <AlexExtreme> Keybuk: IMO the from/until is better because it makes it reading a job sound more like the time period in which the job is run (i hope that makes sense :))
[07:08] <AlexExtreme> this seems like a "simpler" verson of c-e-c
[07:36] <Keybuk> AlexExtreme: it's intended to be step #1 in replacing c-e-c
[07:36] <Keybuk> step #2 is to introduce "States" which are jobs without the jobbish bits. ie just from/until
[07:37] <Keybuk> step #3 is to allow expansion of from events in the until expression
[07:37] <Keybuk> step #
[07:37] <Keybuk> states introduce a "while" stanza
[07:37] <Keybuk> and I do think that from/until/while go together nicely
[07:40] <AlexExtreme> cool, sounds good
[09:48] <ion_> Wow. By using the GUI edit mode, i managed to do a huge diff, while adding just a single character. http://upstart.ubuntu.com/wiki/JobEventExpressions?action=diff&rev2=3&rev1=2
[09:48] <ion_> It changed each `...` to {{{...}}}
[09:54] <ion_> Is it possible to subscribe to each current and future spec at the Upstart wiki?