=== kiko is now known as kiko-fud === BradB is now known as BradB|out === kiko-fud is now known as kiko [01:49] Merge to rocketfuel@canonical.com/pyarch--devel--0.5: bugfix for _package_revision_param (patch-50) [02:00] Merge to rocketfuel@canonical.com/launchpad--devel--0: more (mostly) notification-related fixes to malone (patch-717) [02:02] Merge to rocketfuel@canonical.com/pyarch--devel--0.5: back-end refactoring (patch-51) [02:03] lifeless: good example of correctness-preservingly turning a mess of interdependent modules into something much more sane providing a Facade. [02:03] congrats === kiko is now known as kiko-afk [02:05] the next step (after command name customization) is abstracting out the command line generation. [02:05] you've been talking about it in London. [02:05] baz is going to make that something nice to have. === ddaa is out to bed === BradB|out is now known as BradB === justdave [~dave@24.236.223.222.gha.mi.chartermi.net] has joined #launchpad === jblack [~jblack@static-209-158-45-74.scr.east.verizon.net] has joined #launchpad === BradB is now known as BradB|away === doko [doko@dsl-082-082-067-110.arcor-ip.net] has joined #launchpad === stub [~stub@dsl-246.248.240.220.dsl.comindico.com.au] has joined #launchpad [09:38] Merge to thelove@canonical.com/bazaar--devo--1.0: Moving commands into the commands dir (patch-46) [01:11] Merge to thelove@canonical.com/bazaar--devo--1.0: merge from thelove@canonical.com/bazaar--devo--1.0 (patch-47) [01:28] Merge to thelove@canonical.com/bazaar--devo--1.0: create commands specific unit tests subtree (patch-48) [02:02] Merge to thelove@canonical.com/bazaar--devo--1.0: merge in switch implementation from robert.collins@canonical.com--general/bazaar--switch--1.0 (patch-49) === ddaa [~ddaa@nemesis.xlii.org] has left #launchpad [] === kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad [03:25] Merge to thelove@canonical.com/hackerlab--devo--1.1: fix hackerlab for all current gc warnings (patch-1) [03:27] Merge to thelove@canonical.com/bazaar-debian--debian--1.0: use stricter gcc flags for building (patch-2) [03:38] Merge to thelove@canonical.com/bazaar--devo--1.0: fix baz for all current gcc warnings (patch-50) === BradB|away is now known as BradB [06:07] !lilo:*! Irssi is planning a redesign of its project web-pages. If you want to have your say in what we do with them, please join us in #irssi-site. [06:07] !lilo:*! We will be brainstorming and want to know what you, the users and public, feel is missing from the site, and what would make our web presence better. Join us now! === BradB is now known as BradB|out [08:18] spiv: ? === kiko is now known as kiko-afk === BradB|out is now known as BradB === kiko [~kiko@200-206-134-238.async.com.br] has joined #launchpad === cprov [~cprov@200-206-134-238.async.com.br] has joined #launchpad [10:27] elmo, yo? === BradB [~bradb@modemcable165.196-131-66.mc.videotron.ca] has joined #launchpad [10:47] wtf is our Label sample data [10:47] grrrrr === ddaa [~ddaa@nemesis.xlii.org] has joined #launchpad [11:28] Merge to rocketfuel@canonical.com/launchpad--devel--0: job name munging for buildbot (patch-718) [11:35] BradB, I need your help. [11:35] ? [11:35] and don't say you're not here [11:35] i'm not here! [11:35] vive la france! [11:35] dude [11:35] I am doing something like way way evil [11:35] kiko: ? [11:36] we won a football match against your team again, or what? :-P [11:36] no, no [11:36] def architecturesReleased(self, distroRelease): [11:36] # XXXkiko I am a criminal [11:36] return SourcePackageRelease.__dict__['architecturesReleased'] (self, distroRelease) === ddaa is disappointed of seeing his troll fail [11:37] hey [11:37] if you help me I will try and pretend I fell for it [11:37] basically I created a view but I want to proxy some of the requests to another class [11:38] BradB, how do I create an SQLBase manually? [11:38] can I instantiate it supplying an id? [11:38] ya know, if we tell mark about that, you be accommodated in the stables in Spain... [11:38] I will bring you candy if you don't [11:38] dilys, you be quiet [11:38] hm, /me ponders momentarily [11:39] kiko: architecturesReleased = SourcePackageRelease.architecturesReleased maybe? [11:40] I don't think it will run because of Python's class-enforcement [11:40] yeah, hm [11:40] kiko; I am not sure I understand, but the only reason i can see of doing what you do would be to bypass getattr/getattribute... [11:40] it's practically the same as calling SourcePackageRelease.architecturesReleased(self, ...) [11:40] yes [11:40] precisely [11:40] because I am impersonating a SourcePackageRelease with a view [11:41] Which is pointless, because iirc, getattr is not used for attributes which exist. Dunno about getattribute. === ddaa apparently lacks context to understand why doing something like that would ever be necessary [11:42] ddaa, I am creating a database view [11:42] this means my query returns objects that are views and not real sourcepackagereleases [11:43] now some attributes there I have, but some I don't [11:43] A view in the DBMS sense or in the MVC sense? [11:43] DBMS sense. [11:43] Uh... what is that view for? [11:43] ddaa: getattribute is always called (for new-style classes). === cprov [~cprov@200-206-134-238.async.com.br] has joined #launchpad [11:44] joining 1000 different tables conveniently [11:44] spiv: I was sure you knew everything of that kind of evil black magic :-) [11:44] spiv is allowed to provide opinions too [11:44] just this once [11:44] ddaa: http://users.rcn.com/python/download/Descriptor.htm [11:45] Thanks. [11:45] ah! [11:45] it's easy! [11:45] kiko: Mixin class? (shudder) [11:46] kiko: why not just get rid of the __dict__? [11:46] Ha, yes, descriptor is the thing I need to do to make my "memoized_property" decorator for pyarch one day. [11:46] BradB: Because self is not an instance of SourcePackageRelease, if I'm understanding correctly. [11:46] no! [11:47] pass in a good self then [11:47] it's just a proxy through one of the view's attributes [11:47] spiv, yes, that's right. [11:47] BradB, that was SUCH a wisecrack :) [11:47] kiko: why not just create another sqlos class for your view? [11:47] spr = SourcePackageRelease.get(theid), etc. [11:47] I COMMAND THE SYSTEM [11:47] def architecturesReleased(self, distroRelease): [11:47] # Proxy to a real SourcePackageRelease [11:47] return self.sourcepackagerelease.architecturesReleased(distroRelease) === kiko does the command-the-system dance [11:48] That looks much saner, yeah. [11:48] heh, somehow i don't think we had the context to know that could suffice, but yeah, makes sense :) [11:48] kiko: yeah, that looks like a regular Proxy pattern. [11:48] modeling SQL views as objects is horrible [11:48] I want to go back to gardening [11:49] Modelling relations as objects is horrible ;) [11:49] I WANT THE ZODB [11:49] ++ [11:49] hu, spiv++ [11:50] dunno about zodb... btw maybe we could have used the underlying ODBMS of postgres instead of bothering with sql.... [11:50] ddaa: ZODB is goodness. [11:50] dunno about postgres's odbms :) [11:50] I'm skeptical of NIH, by principle. [11:51] Plus the ZODB guys keep finding weakref gc bugs in Python, so they must be clever ;) === BradB dresses up as a guy wearing a hat for halloween [11:51] i dunno about postgres odbms either. But I trust the postgres people to know what they are doing. [11:52] spiv: somehow, code that keeps hitting obscure bugs in commodity software has to be a bit over the top. [11:52] ddaa: I trust the ZODB guys :) [11:52] ddaa: the guy who wrote most of the ZODB is now employed by google. he has much clue. [11:52] That's a good cred, indeed. [11:52] and the guy currently in charge knows more about Python that god [11:53] (or about anything that's written in 1s and 0s I suspect) === BradB can't wait to play mao in spain === ddaa gives two penalty cards to BradB [11:55] Invoking the name of our leader in vain. [11:55] ouch! [11:56] Lying. You can obviously wait, your are waiting at the moment. [11:56] point of order: poo. end point of order. [11:57] :-) [11:58] The game, some like harsh. [11:58] the first time i played it, all i knew was something about how you can make up your own rules. i was a bit too liberal in applying that knowledge. [11:59] muhuwhahaha [11:59] making new rules is _hard_ [11:59] plus i was having a semi-scuffle in text messages on my cell with my girl back in montreal, so i wasn't thinking. [11:59] harder than guessing them [12:00] yeah, i made a stupid one [12:00] kinnison is like the jrr tolkien of mao rules