[00:19] <andreas_> Hey everyone.
[00:19] <andreas_> ew, opless.
[00:37]  * alecu hates faulty PyQt versions on windows.
[00:37] <alecu> and eod, btw.
[00:53] <andreas_> why use windows? :)
[08:48] <JamesTait> Mornin' all! :)
[10:11] <gatox> good morning
[12:23] <ralsina> good morning!
[12:24] <gatox> ralsina, hi here too! :P
[12:25] <ralsina> hello at work, gatox! :-)
[12:54] <alecu> hello all!
[12:55]  * alecu has just finished packing the bag for PyCamp. Half of it is board games :P
[12:55] <gatox> alecu, hi!!
[12:55] <gatox> alecu, i pack mine too.... i don't know how i put everything in there... but i did :P
[13:00] <alecu> ralsina: so, what did the doctor say? feeling any better?
[13:00] <ralsina> alecu: "have some ibuprofen, drink liquids and be a man about it"
[13:01] <ralsina> alecu: that's doctorspeak for "who knows what you have, what am I, a psychic?"
[13:01] <ralsina> but yes, a bit better
[13:02] <alecu> ralsina: so, that means you'll be the vector for the pycampflú! yay!
[13:02] <ralsina> it's a dirty job, but someone has to do it
[13:02] <ralsina> call me patient0
[13:02] <alecu> we've never had one of those in the pycamp! we are getting near uds, awesome!
[13:03] <ralsina> this pycamp is one deci-UDS :-)
[13:03] <alecu> ralsina: I'll call you patient0()
[13:03] <ralsina> alecu: I have __call__ implemented
[13:04] <alecu> "a deci-UDS". That's quite an accomplishment, yes!
[13:04] <ralsina> alecu: you in veronica already?
[13:05] <alecu> ralsina: not yet! I'm eagerly waiting for 6.20 pm, when I've got to board facundobatista's car.
[13:06] <ralsina> I am getting xip, gatox and diva tonight at home and we leave at 6AM tomorrow
[13:06] <gatox> \o/
[13:06]  * gatox is so excited! his first pycamp!
[13:07] <alecu> ralsina: awesome! so you start your small pre-pycamp tonite too!
[13:07] <alecu> gatox: they say the first time it always hurts...
[13:07] <ralsina> it's an idea
[13:07] <gatox> alecu, ouch....
[13:07] <alecu> (since mandel it's out, I get to do the bad jokes)
[13:07] <gatox> joke!
[13:08] <alecu> ralsina: btw, I've got good/bad news about the authenticated proxy bug you found on askubuntu... bug 1021098
[13:08] <ralsina> alecu: yes, Qt 4.9???
[13:08] <gatox> Do you know what Darth Vader is looking for in the freezer?
[13:08] <ralsina> gatox: I know!
[13:08] <alecu> ralsina: pyqt 4.9. Which, afaik, means qt 4.8, right?
[13:08] <gatox> ralsina, don't spoil the joke for alecu
[13:08] <ralsina> alecu: right
[13:08] <ralsina> gatox: "joke" he said! jajajaja
[13:09] <gatox> jejeje
[13:09] <alecu> gatox: "helado oscuro"
[13:09] <gatox> ohhhh.....
[13:09] <ralsina> "Porqué Darth Vader siempre pide helado de chocolate?" (misma idea)
[13:09] <alecu> gatox: it's an old one! two or three days old already!
[13:09] <ralsina> gatox: also, you said it on twitter
[13:10] <gatox> yes.... i was expecting that you don't read what i twit
[13:10] <gatox> jeeejej
[13:10] <alecu> gatox: sorry to dissapoint you :-)
[13:13] <gatox> alecu, maybe, just MAYBE, i'll be able to bring this (but ninja-style): http://www.reclamstation.com/enews_images/pulseras/EMBOSSED_WRISTBANDS_ST.JPG as a gift for everyone at pycamp
[13:18] <ralsina> gatox: nice (although I can't use them, can't stand having things on my wrists)
[13:18] <ralsina> and that includes buttoned sleeves
[13:20] <gatox> ralsina, not my case: http://yfrog.com/nunzdptj - http://yfrog.com/ntvttulj
[13:20] <gatox> jeje
[13:20] <ralsina> clearly
[13:22] <alecu> gatox: I don't like to wear bracelets nor watches either...
[13:22] <gatox> watches me neither.... but i love to wear silicon bracelets :P
[13:28] <dobey> hmm
[14:12] <dobey> cmake == suffering
[14:12] <dobey> ralsina: doing "cmake .. && make" in a subdir fails in u1db now :-/
[14:13] <ralsina> dobey: looking
[14:13] <dobey> can't run python setup.py, and can't find u1db/u1db.h
[14:14] <ralsina> dobey: the setup.py error is when trying to set the version
[14:15] <ralsina> dobey: change it to execute_process(COMMAND python ${CMAKE_SOURCE_DIR}/setup.py --version
[14:15] <ralsina> I will do a branch to fix this quickly
[14:16] <ralsina> the include error is probably something similar
[14:16] <dobey> apparently debhelper cmake stuff uses subdir
[14:17] <dobey> yeah, i think there's an -Iinclude that needs to be -I${CMAKE_SOURCE_DIR}/include
[14:17] <ralsina> dobey: oh, well. That used to work before, it will work again. It's mostly forgetting to account for variables in paths
[14:17] <ralsina> right
[14:19] <dobey> hmm
[14:24] <ralsina> the target failing is install-python because the extension is not built.But we don't need to build it to install.
[14:25] <ralsina> so it needs a bit of thought
[14:27] <dobey> well we do need to build it to run tests
[14:28] <ralsina> dobey: well make check works
[14:28] <dobey> hrmm, it didn't here
[14:28] <ralsina> dobey: after I fixed a couple of include paths
[14:28] <ralsina> dobey: let me push
[14:28] <dobey> ah
[14:29] <dobey> i need to run an errand. brb
[14:29] <ralsina> dobey: lp:~ralsina/u1db/cmake4 works for make check, still need to fix python-install
[14:30] <dobey> ok, i'll check it as soon as i return
[14:30] <dobey> i'll be back before the call
[14:30] <ralsina> cool
[14:38] <rye> gatox: https://bugs.launchpad.net/ubuntuone-client/+bug/1021037 - is it ok if i drop the logs from that bug report, was the reason found?
[14:39] <gatox> rye, i couldn't work on that yet, i'm working in a darwin issue
[14:40] <gatox> rye, i'll probably do that on tuesday (i'm not here tomorrow or monday)
[14:41] <gatox> rye, but if you want to delete the logs go ahead... i already have them
[14:46] <rye> gatox: ok, thanks, removed
[14:51] <mmcc> hi folks. so what's the right way to import winreg now? I saw something a while back about winreg vs. _winreg ...
[14:53] <mmcc> looks like in sso we do import winreg and fall back to _winreg as winreg. is that the right way? (why?)
[15:00] <dobey> oi
[15:00] <ralsina> mmcc: versions changed
[15:00] <ralsina> team, team call!
[15:00] <dobey> mmcc: python3 renamed the module
[15:00] <gatox> already there
[15:00] <dobey> mmcc: so the try/except is needed
[15:00] <dobey> ralsina: where at this time?
[15:01] <ralsina> dobey: let's go trditional and mumble
[15:01] <dobey> ok
[15:01] <ralsina> funny, mumble didn't like my password
[15:01] <ralsina> And now it does
[15:02] <mmcc> be right there
[15:03] <ralsina> thisfred: team call!
[15:28] <alecu> gatox: shall we mumble about what you mentioned just now?
[15:28] <gatox> alecu, ok
[15:28] <dobey> mmcc: re: constants for those app things, i suppose they'll have to be in each individual app code, or in the project future formerly known as ubuntuone-windows-installer
[15:29] <mmcc> hmmm
[15:31] <mmcc> well, if we put the path-finding code into dirspec, then only dirspec will need the constants I'm thinking of.
[15:32] <dobey> dirspec shouldn't have any references to things that depend on dirspec
[15:32] <dobey> what are the constants exactly?
[15:33] <mmcc> strings for packaged sub-app names, like SSO_LOGIN_SUBAPP_NAME = "Ubuntu SSO Helper.app"
[15:34] <dobey> yeah i think that would belong in ubuntu-ssoc-client
[15:34] <dobey> err, s/ssoc/sso/
[15:34] <mmcc> yeah, I'm not sure there's really all that much to move to dirspec here
[15:35] <ralsina> mmcc: we should put the app-finding code in dirspec and pass these constants on call
[15:35] <dobey> well, if we have N places that actually have logic to find and execute things, we should consolidate that into a single point of failure
[15:35] <dobey> but that code shouldn't have anything specific about which apps to launch
[15:35] <ralsina> dobey: point of SUCCESS ;-)
[15:36] <mmcc> so, dirspec.get_packaged_cmdline(sso_login_exe, SSO_LOGIN_SUBAPP_NAME)
[15:36] <dobey> ralsina: well, in the event of failure, we can easily determine where and why it is failing, vs. flailing about in N different places :)
[15:36] <ralsina> mmcc: right, and the second argument is ignored if non-darwin
[15:36] <dobey> mmcc: something like that i guess. depends on what the output really needs to be
[15:37] <dobey> since i don't really have any idea what exactly the expected output is for all the cases; at the moment
[15:37] <mmcc> in the places I've seen, the output should just be a path to the exe
[15:38] <dobey> i also have no idea how the 'find and run an app' logic works on osx, since a .app can literally be anywhere on the filesystem and be usable
[15:39] <mmcc> dopey, there are ways to find and run an app without knowing its location, but since these are sub-apps in our package, we can just use a known path to them
[15:39] <mmcc> ARGH sorry dobey how do I turn this off
[15:40]  * mmcc trades spelling errors for calling dobey dopey
[15:40] <dobey> heh
[15:40] <dobey> are you using an osx client that forces spell correction?
[15:41] <mmcc> it's just on by default, and 10.6+ has ios style autocorrect
[15:42] <mmcc> I can turn it off, but I have to turn off all spell checking instead of just autocorrect
[15:42] <dobey> awesome
[15:42] <dobey> can you not add words to the dictionary?
[15:42] <dobey> surely that is needed for en_US-TX
[15:43]  * gatox lunch!
[15:43] <mmcc> huh, y'all is not flagged
[15:43] <dobey> heh
[15:44] <Grumpy_> y'all is a perfectly cromulent word
[15:44] <Grumpy_> or maybe two
[15:44] <mmcc> I told OSX to define cromulent  and it showed me the wikipedia page for "Lisa the Iconoclast"
[15:45] <dobey> hahah
[15:45] <Grumpy_> mmcc: OSX is right
[15:45] <Grumpy_> now you can embiggen it's dictionary with it
[15:45] <mmcc> :D
[15:46] <mmcc> simpsons reference degrumpifies ralsina!
[15:46] <ralsina> just that if I am the only one switching to dwarf name it's not fun ;-)
[15:46] <ralsina> Pronunciation IPA: /ˈkrɒmjʊlənt/
[15:47]  * mmcc gets it now
[15:47] <ralsina> english dictionaries are funny. In spanish words are pronounced as they are written.
[15:48] <mmcc> brb
[15:51] <dobey> ralsina: haha. good joke.
[15:52] <dobey> ralsina: how do you define dependencies in cmake? install-python needs to depend on the library being built :)
[15:52] <ralsina> dobey: add u1db in the DEPENDS line
[15:53] <ralsina> dobey: line 85
[15:54] <ralsina> dobey: ugh, looks like I broke make clean
[15:55] <rye> ~.
[15:55] <ralsina> dobey: because now the version has a \n in it! :-/
[15:56] <dobey> le sigh
[15:56] <rye> ralsina: spanish? v b j z c ?
[15:56] <ralsina> rye: yep
[15:56] <ralsina> they all sound different
[15:57] <rye> ll
[15:57] <ralsina> that one is a digraph
[15:57] <ralsina> if you ever have a ll it always sounds like a ll :-)
[15:57] <ralsina> the one that's a lie is gu that may sound different depending on what's after it
[15:58] <ralsina> dobey: I'll do cmake5 fixing the version problem and the dependency in a bit
[16:01] <ralsina> dobey: https://code.launchpad.net/~ralsina/u1db/cmake5/+merge/113606
[16:07] <mmcc> windows question - why do we use the registry at all to find exes? we only use it for two of the several exe's, and they're all in the same location anyway - the reg keys both point to ${installer}\dist\exename , and ubuntu_sso.utils.get_bin_dir just uses dirname(sys.executable) for the rest
[16:08]  * ralsina points his finger at alecu for mmcc's question. Or maybe mandel, but he's not around.
[16:10] <alecu> mmcc: historical reasons likely.
[16:10] <rye> ralsina: will the socket interface used on mac for IPC? will then it be used on windows too?
[16:11] <ralsina> rye: sorry, don't understand
[16:11] <alecu> mmcc: we had the installer create a registry key with the path to the various .exes
[16:11] <alecu> rye: we are using sockets on windows, but named pipes (I think!) on darwin
[16:11] <mmcc> alecu, right - but only two of them
[16:11] <ralsina> alecu: unix domain sockets?
[16:12] <rye> on windows that's TCP sockets with pb
[16:12] <alecu> mmcc: we had two at that moment in time :-)
[16:12] <mmcc> alecu , rye: unix domain sockets on darwin, yes. tcp on windows
[16:12] <alecu> mmcc: I mean, we had to start two
[16:12] <ralsina> rye: yes, and that will stay that way
[16:12] <mmcc> both with twisted pb
[16:12] <rye> hm
[16:12] <rye> wrong statement. should be "ah"
[16:12] <alecu> oh, right. We use UDSs on darwin. And we hold UDSs for ubuntu.
[16:13] <alecu> Things are not getting clearer at all....
[16:13]  * ralsina slaps alecu with the clarification fish
[16:14]  * alecu shudders
[16:17] <rye> ralsina: i just want to interface with it without bringing the whole python runtime...
[16:17]  * rye does not know what runtime to bring though
[16:18] <ralsina> rye: PB is going to hurt you there
[16:20] <rye> zeroMQ FTW, even though i have no idea why it is FTW but it ia statement i can say in any circumstance and it will non-zero impact
[16:21] <ralsina> hahaha
[16:21] <rye> there are missing words in the sentence
[16:22] <ralsina> Lunch time, it seems
[16:22] <dobey> ok, i need to get lunch and have an appointment after. be back in a while (~1.7h)
[16:24] <mmcc> hm, auto generated ubuntu_sso.constants is only useful on linux
[16:24] <mmcc> when packaged in darwin, it contains paths to my temp staging directory
[16:45] <mmcc> btw, still not sure what happened with tarmac on this merge: https://code.launchpad.net/~mikemc/ubuntuone-control-panel/fix-1018614-darwin-raise/+merge/112493 -- maybe when dobey gets back?
[17:15] <ralsina> mmcc: looking...
[17:17] <ralsina> mmcc: that error about unicode encoding in string declaration is about having  the magical encoding comment in strings passed to eval
[17:18] <ralsina> mmcc: could be a problem with new pylint or something, don't know
[17:19] <ralsina> mmcc: OTOH, the X initialization errors could mean tarmac is broken
[17:20] <mmcc> yeah, I'm wondering if everything's a 'warning', what made the overall thing a 'failure'
[17:28] <mmcc> ok, lunch time here.
[17:29] <joshuahoover> ralsina: any ideas on how to help a 11.10 user who is showing this in the syncdaemon log: ubuntuone.SyncDaemon.StorageClient - INFO - Connection lost, reason:  [Failure instance: Traceback (failure with no frames): <class  'OpenSSL.SSL.Error'>: [('SSL routines',  'SSL3_GET_SERVER_CERTIFICATE', 'certificate verify failed')]
[17:29]  * czajkowski hugs joshuahoover 
[17:30] <joshuahoover> ralsina: i can try to recommend the symlink trick, wasn't sure if we knew of anything else
[17:32] <ralsina> not for 11.10
[18:14] <dobey> mmcc: ./ubuntuone/controlpanel/gui/qt/gui.py:130:24: W291 trailing whitespace
[18:46] <facundobatista> ralsina, dobey, alecu, do you know a good Python GTK *3* reference?
[18:46] <ralsina> facundobatista: I suspect with GI being the binding of choice there isn't one
[18:47] <dobey> there isn't a good GI binding reference, no
[18:52] <facundobatista> ralsina, dobey, ok, thanks
[18:55] <mmcc> dobey, thanks - I've fixed that already, wasn't sure if the other stuff needs to be fixed somehow too
[18:55] <viesturs> hello
[18:56] <viesturs> i am new to ubuntu-one and i have a question about the api
[18:56] <dobey> mmcc: that's the only issue i see. the stuff after that is normal stderr randomness for those tests i think
[18:57] <viesturs> i want to upload a file in ubuntu-one and pupice it atonce, and then get back the link where it is publiced
[18:58] <mmcc> dobey, ah ok. so can I change the status or do pep8 fixes require re-review?
[18:58] <viesturs> how do i do that in python
[18:58] <viesturs> ?
[18:58] <viesturs> i understand the upload part, but how to puplice it and get the link back at once
[19:00] <dobey> mmcc: just change it back to approved if you've fixed that
[19:00] <beuno> aquarius, viesturs's question is for you, I reckon
[19:01] <gatox> people..... eod for me..... see you on tuesdday
[19:01] <dobey> viesturs: the file has to be on the server and uploaded, before it can be published, i think
[19:01] <aquarius> viesturs, heya! are you on Ubuntu?
[19:01]  * gatox is about to kill someone!
[19:01] <dobey> bye gatox
[19:01] <dobey> gatox: zombies?
[19:01] <viesturs> yes on ubuntu
[19:01] <aquarius> viesturs, you'll need to wait until the file is uploaded before publishing it; is that OK?
[19:01] <gatox> dobey, no..... people from an airline
[19:01] <viesturs> there is a tutorial how to upload it is not so complicated, but i don't get how to publish
[19:02] <viesturs> ofcourse
[19:02] <aquarius> viesturs, if so, then the way to do this is to use SyncDaemonTool to publish a file and get back its public URL. I'll throw together an example for you :)
[19:02] <viesturs> is there a way i can get the upload progress?
[19:02] <viesturs> thankyou
[19:03] <viesturs> i use python
[19:03] <aquarius> viesturs, you can get notified when the file is uploaded. You can't be told (very easily) that it is 62% uploaded, though -- that's doable, if you want to do a reasonable amount of work, but do you want "it is 60% uploaded", or just to be told when it's finished uploading?
[19:04] <viesturs> aquarius, the idea is to display the upload progress on launcher icon like the ubuntu one app
[19:05] <viesturs> is it complicated?
[19:05] <aquarius> viesturs, ok, give me a few minutes to put an example together :)
[19:05] <viesturs> aquarius, thank you :)
[19:09] <dobey> ralsina: well, u1db packages are 99.99% there
[19:13] <ralsina> dobey: awesome
[19:13] <ralsina> dobey: anything that needs fixing?
[19:13] <viesturs> aquarius, one more question: when i upload the file to ubuntu one, can i upload it in a spasific folder, or create that folder if it isn't here?
[19:15] <aquarius> youcan
[19:15] <viesturs> can you include it in example?
[19:15] <aquarius> if you create a folder inside an existing synced folder, it'll be synced
[19:15] <viesturs> ou
[19:15] <aquarius> if you want to create a whole new synced folder, you can do that too
[19:15] <viesturs> logic :D
[19:16] <viesturs> no only inside
[19:16] <dobey> ralsina: yes, but i'm not sure what exactly. it's giving a weird error
[19:17] <dobey> ralsina: http://pastebin.ubuntu.com/1076960/
[19:18] <ralsina> dobey: looking
[19:20] <ralsina> dobey: add setuptools as a dependency, maybe
[19:20] <ralsina> so it doesn't go to distutils
[19:20] <aquarius> viesturs, http://paste.ubuntu.com/1076964/ is a simple example. It's based on http://kryogenix.org/days/2012/04/18/publishing-a-folder-with-ubuntu-one. You will find "pydoc ubuntuone.platform.tools.SyncDaemonTool" useful
[19:20] <aquarius> viesturs, and that will soon be on one.ubuntu.com/developer as well, but it isn't yet.
[19:21] <dobey> ah, of course
[19:23] <viesturs> thank you aquarius
[19:23] <viesturs> you are wery helpful :)
[19:24] <aquarius> this is a good example of the sort of thing that I want the developer site documentation to include :)
[19:25] <viesturs> yes it definetly should :)
[19:26] <ralsina> aquarius: I fully intend to bring to the next full team sprint a bottle of nicotine, a smoke machine and a red light. Just warning you.
[19:27]  * aquarius laughs
[19:27]  * ralsina knows that an open bottle of nicotine would kill every person in a closed room in minutes
[19:27] <aquarius> you want the flavourings too, otherwise it'd be horrid
[19:27] <ralsina> and a bottle of marraschino cherries
[19:27] <ralsina> and a blender
[19:27] <aquarius> an open bottle of nicotine would kill every person in the *country*. the stuff's really lunaticly toxic when neat :)
[19:39] <viesturs> aquarius, i got an error
[19:39] <viesturs> when i executed your example
[19:39] <viesturs> python exapmle.py
[19:41] <viesturs> line 26, in create_a_file_upload_and_publish
[19:41] <viesturs>     os.rename(temp_file_name, u1_file_name)
[19:41] <viesturs> exceptions.OSError: [Errno 18] Invalid cross-device link
[19:41] <viesturs> maybet i am doing something wrong?
[19:42] <viesturs> and when i do ./exapmle.py i get
[19:42] <viesturs> ./example.py: line 6: syntax error near unexpected token `from'
[19:42] <viesturs> ./example.py: line 6: `    from dbus.mainloop.glib import DBusGMainLoop'
[19:45] <aquarius> viesturs, ah, the thing creates  a temp file and then moves it into ~/Ubuntu One
[19:45] <aquarius> you don't have to do it that way
[19:45] <aquarius> but I don't know where you're getting the file to upload *from* :)
[19:46] <aquarius> also, put "#!/usr/bin/env python" (without quotes) as the first line :)
[19:47] <dobey> eww
[19:47] <dobey> #!/usr/bin/python
[19:47] <aquarius> or what dobey said
[19:47] <aquarius> I've never quite followed why the env idea is bad :)
[19:47] <dobey> it breaks virtualenv, and installing with specific python versions
[19:48] <ralsina> dobey: OTOH, the alternative breaks buildout, but sure, virtualenv is more important
[19:48] <dobey> well, it exposes bugs in buildout which we have to work around :)
[19:48] <viesturs> sorry but I don't get that file creation
[19:48] <ralsina> viesturs: rename doesn't work if you are renaming from one disk or partition to another
[19:50] <viesturs> ou
[19:50] <viesturs> i have my root in one partition and /home in another, is that the case?
[19:51] <viesturs> if so, than what can i doo to fix this?
[19:54] <aquarius> viesturs, you don't have to do the rename at all
[19:54] <aquarius> viesturs, I just did that as an example of a file
[19:54] <aquarius> viesturs, you want to upload a file to U1, and then publish it once it's uploaded, yes?
[19:54] <viesturs> yes
[19:54] <viesturs> and then get the ling
[19:54] <viesturs> link
[19:54] <aquarius> so just save that file from your program straight into ~/Ubuntu One or something
[19:55] <dobey> ralsina: any idea about this: failed to import Cython: /usr/lib/python2.7/dist-packages/Cython/Compiler/Code.so: undefined symbol: Py_InitModule4
[19:55] <ralsina> dobey: nope
[19:56] <ralsina> dobey: let me google a bit
[19:56] <viesturs> i figured as much, but how do i get the link then?
[19:57] <ralsina> dobey: references I see to that error talk about using binary modules with the wrong python version, maybe a bad cython package?
[19:57] <viesturs> i guess i don't understand that code very well, aquarius
[19:57] <viesturs> i am still new to python
[19:58] <aquarius> viesturs, OK. the first bit, where it creates a tempfile and then os.rename()s the tempfile into your Ubuntu One folder, is not code that you need to use
[19:58] <ralsina> dobey: and/or it's not loadingthe python runtime library
[19:58] <aquarius> the part *after* that is where you start to pay attention.
[19:58] <dobey> ralsina: weird
[19:58] <ralsina> dobey: yes
[19:58] <aquarius> viesturs, the bit at the beginning of the function was just an example -- you'd replace that with your code that creates or saves the file
[20:00] <dobey> i'll try it on precise, in case quantal is broken
[20:00] <viesturs> OK
[20:04] <dobey> nope, fails on precise too :(
[20:05] <dobey> oh, duh
[20:05] <dobey> need cython-dbg too i bet
[20:05] <ralsina> dobey: I am not sure I have attempted the dbg target lately
[20:08] <dobey> yup, cython-dbg fixed that
[20:12] <ralsina> cool
[20:31] <dobey> "When complete: a moment ago (estimated)"
[20:31] <dobey> ♥ launchpad
[20:46] <dobey> ok, gotta run. will work a bit later after i get back
[20:52] <mmcc> man, what good is an IRC client with no working backlog search?
[20:54] <mmcc> ralsina, you still around? I see dobey just left, and alecu already emailed his adios, so my timing is impeccable
[20:54] <alecu> mmcc: I'm still around, thou
[20:54] <mmcc> RFC: a multiproject exe-finder for dirspec: http://paste.ubuntu.com/1077115/
[20:55] <mmcc> alecu ok cool, if you have a minute, take a look at that. only 58 lines of text about our exe finding issues
[20:55] <mmcc> I wanted to get some design feedback before reimplementing this stuff a third or fourth time
[21:00] <alecu> mmcc: up to line 50, it sounds reasonable.
[21:00] <alecu> mmcc: I'm not sure about passing in DARWIN_APP_NAMES['ubuntu-sso-login']
[21:00] <alecu> mmcc: where would that dict live? I mean, DARWIN_APP_NAMES
[21:01] <alecu> mmcc: I'm trying to thing what would be the proper module for that dict.
[21:01] <mmcc> alecu, I agree it's a bit messy. let's hash it out. I wasn't clear but I was thinking that dict would be per project
[21:01] <alecu> mmcc: and to work around dependency issues, too.
[21:01] <mmcc> e.g., SSO client has its own APP_NAMES, since no one else needs to know that mapping
[21:02] <mmcc> and the dict(ubuntuone-syncdaemon = "name for sd") lives in ubuntuone-client somewhere
[21:02] <mmcc> so neither SSO nor dirspec needs to know that mapping
[21:02] <mmcc> it's nice and modular but it makes calling it a little verbose
[21:03] <mmcc> does that make sense?
[21:04] <alecu> mmcc: not sure I understood, I think I don't have it so clear in my head.
[21:05] <alecu> mmcc: what if we just pass in the module name to get_cmdline? and then in each module we define say __u1_executable__ and __darwin_app_name__
[21:05] <alecu> sorry, not the module name, but just pass the module
[21:05] <mmcc> well, some modules have multiple executables - sso has ~four
[21:06] <alecu> oh, right.
[21:06] <mmcc> s/module/project/
[21:06] <mmcc> but that idea would work for the app name dict
[21:06] <mmcc> pass in the module, and get_cmdline can get the app name dict from the module itself
[21:13] <alecu> mmcc: so, let me know if you need any more brainstorming... I'll be around for 20 more minutes.
[21:13] <alecu> mmcc: I think it's great we get to clean up those parts of the code. Thanks for working on it! :-)
[21:18] <mmcc> alecu, glad to do it. just wish I'd started off this way instead of doing a smaller fix first
[21:18] <mmcc> alecu so, if this sounds reasonable: - a function get_cmdline in dirspec that does the right thing given an exe name and a module, I'll just run with that
[21:18] <alecu> mmcc: we need to do some cleanup, yes. But we can't clean up *eeeeverything* :-)
[21:19] <alecu> mmcc: it sound perfect.
[21:20] <mmcc> alecu one quirk this will have, is when we call get_cmdline for syncdaemon, we will probably want to give ubuntuone.platform as the module, since that seems like a more reasonable place to put the darwin app name dictionary, as opposed to somewhere in ubuntuone.syncdaemon. what do you think?
[21:24] <alecu> mmcc: putting it in platform means that each platform would get its own dict
[21:24] <alecu> mmcc: we should be putting in platform only stuff that makes sense for a given platform, right?
[21:26] <mmcc> alecu, hmm. so this dict only makes sense on darwin… I envisioned it being defined in platform/constants.py, but only for darwin...
[21:29] <mmcc> same for wherever it ends up in ubuntu_sso, only define it for darwin.
[21:30] <mmcc> I just looked at everywhere we use os_helper.set_application_name, to see if there was already a name mapping I could use for this, but it's only used to set ubuntuone-syncdaemon's name to 'ubuntuone-syncdaemon'
[21:33] <dobey> mmcc: can you e-mail that rfc if you haven't?
[21:34] <mmcc> dobey, sure. I'll email an updated version in a sec
[21:35] <dobey> thanks
[21:38] <mmcc> dobey: sent
[21:40] <dobey> mmcc: cool. i'll read over it and try to reply sometime. but need to head off for the evening now. later :)
[21:40] <mmcc> ok, thanks - have a good one.
[22:27] <mmcc> alright, heading out. see some of you tomorrow.