/srv/irclogs.ubuntu.com/2010/06/22/#bzr.txt

poolielifeless, i just wondered why you wanted to push a separate branch for it00:15
pooliewas it blocking you?00:15
lifelesspoolie: having reviewed it there seemed no real point not JFDIing it00:15
=== poolie changed the topic of #bzr to: Bazaar version control | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: lifeless | bzr 2.1.1 is out | bzr 2.1.2 is having binaries built for it
pooliei see00:16
lifelesspoolie: I would have pushed to your branch and mp, but lp doesn't really support that as a workflow00:16
poolieyou're pilot this week too?00:16
lifelesspoolie: yes00:16
pooliei think that given lp's current state pushing new ones makes a lot of noise00:16
lifelesspoolie: so it took me; oh 30 seconds to pull your branch, another minute ot make the change, bzr lp-propose to make the new proposal was all cli driven00:16
pooliesure00:16
lifelessits pretty slight to that extent00:16
pooliebut now i have a big old diff in my mailbox :)00:16
pooliei'm not really complaining00:17
poolieit's just a bit of a change from the normal practice of committers landing their own code00:17
lifelessthere is a backlog00:17
lifelessI could nag folk, but I know people are just busy00:17
lifelessso am doing; I think people will respond by getting there first if they want to avoid the noise ;)00:18
pooliei haven't had any work hours between some of these being reviewed and you landing them00:19
lifelesspoolie: heh, I didn't notice that00:20
pooliethat seems a bit overoptimized :)00:20
lifelessperhaps00:20
lifelessOTOH for all noncommitters we roughly need this anyway00:20
poolieah00:21
lifelessand if the fixes aren't trivial to such branches, they will deserve a peer review too; so its worth noting the rough edges - and spiv filed a bug about part of it yesterday00:21
poolieplease let me read the review comments on my branches and land them myself00:22
poolieunless you know i'm away00:22
lifelessI think its important we make this easy to do; I appreciate there is some noise now, lets make sure there are good bugs and think about how to reduce the noise.00:22
lifelesspoolie: for most of yours I have00:22
poolieit's a bit like the pqm thing00:23
poolieif you're going to change the patterns in which people work it's nice to tell them first00:23
lifelesspoolie: uhm, I've landed one of yours00:23
poolietwo?00:23
lifelessand added a patched version of a second00:23
lifelessI landed your external base deprecation patch00:23
pooliei appreciate the help i'm just a bit surprised00:25
lifelesspoolie: I'm really not sure how to react00:25
poolieI agree with > I think its important we make this easy to do; I appreciate there is some noise now, lets make sure there are good bugs and think about how to reduce the noise.00:25
poolieperhaps send an rfc saying that any contributor (or especially the pp) can finish off and land other people's patches?00:26
poolieif this is what you generally want to do?00:26
mgzevenin' all00:26
pooliei guess it's just that with lp reviews as they exist today this seems to generate more noise than me doing the updates in the existing branch00:27
lifelesspoolie: this isn' actually a change you know; we've variously landed stuff when people are busy for years00:27
poolieok00:27
pooliei don't know then00:27
lifelesspoolie: I can send an email saying 'is the amount of email when I do this too much'00:27
pooliemy answer is yes00:28
pooliebut, whatever00:28
poolieit's only two patches00:28
lifelessits worrying that two patches makes you feel overloaded :(00:28
poolieheh00:29
=== bouncingzip is now known as mgz
=== r0bby is now known as robbyoconnor
mgzurk, hung on "Inserting missing keys" pushing to launchpad again01:52
mgzI won't interrupt it, broke things horribly last time I did that01:53
mgzbetter not take hours though I need sleep.01:54
mgzdone. only three minutes with no ui update there:01:55
mgz17.046  creating new compressed block on-the-fly in 0.015s 172124 bytes => 58366 bytes01:55
mgz196.281  creating new compressed block on-the-fly in 0.000s 4194098 bytes => 2161 bytes01:55
lifeless-> food02:05
mgzbytes!02:06
mgzor just nybbles...02:07
pooliethat's a lot of compression02:11
pooliehi lifeless02:11
pooliehi spiv02:11
=== vednis is now known as mars
parthmi am trying to clean up a testcase http://pastebin.com/t6KvPff0 . if i replace the ".bzrignore" creation with "self.build_tree_contents([('.bzrignore', 'RE:*.cpp\n')])" it fails (run_bzr returns 0 instead of 3).04:55
parthmdoesn't build_tree_contents put a file on disk?04:56
parthmsorry. mybad. looks like i did something wrong there. its working now :)04:59
lifelessparthm: the u'' there is almost certainly wrong05:01
lifelessparthm: you don't have any unicode in there, and you're not opening an encoded file05:01
parthmlifeless: yes. i cleaned that up. thanks.05:03
lifelessparthm: cool05:05
lifelessparthm: the alarm bells went off because of the regular file: we write bytes to regular files, unicode to encoded file.s05:05
parthmlifeless: have you seen the "class _Pattern" in rejected https://code.launchpad.net/~parthm/bzr/300062-invalid-pattern-warnings/+merge/26809 ? that seem like a good cleanup to me.05:05
parthmi can port it to the error based mp. what do you think?05:05
lifelessits odd that its a class with no methods05:07
lifelessand no global mutatable state05:07
lifelessI think I'd want to see separate patches05:08
lifelessone to introduce such a thing05:08
lifelessand one to change the error handling05:08
parthmlifeless: sounds fine. i can try a separate patch for that. thanks for the quick review :)05:10
lifelessparthm: I think if you do it, that you should make it a real object w/out static methods05:10
lifelessand either a single global instance, if you really need that, or one instance for the each Globster, or something05:11
lifelessor even05:11
lifelessmake it a base class of the globsters05:11
lifelessthe file looks half-refactored from functions to objects, to me.05:11
parthmlifeless: yes. while implementing it i was thinking that much of it fit well in globster.05:13
lifelessspiv: whats the bug # you filed yesterday about LP MP continuations05:29
spivlifeless: bug 59672605:37
ubot5Launchpad bug 596726 in Launchpad Bazaar Integration "Poor support for merge proposals superseded by different branch (affected: 2, heat: 10)" [Undecided,New] https://launchpad.net/bugs/59672605:37
lifelessthanks05:40
jibbles'Ello, all!06:14
jibblesI want to try versioning all my work in a centralized fashion, pushing and pulling from various machines to one server. I have a hierarchy of folders for my work...I assume this should be added to the same repository; is there any point in adding E.g. schoolwork and writing (if unrelated) as different projects? Will I lose any flexibility if I just import it all as one project?06:17
lifelessjibbles: if you make it all one project, you can't push just part of it somehere06:27
lifelessjibbles: bzr works on an entire project (we call it tree, or branch) at a time06:27
lifelesspoolie: night (signing off work, still around tho in various ways)06:30
poolielifeless, good night, thanks for the note about mps06:31
lifelessno probs; we should wait for jam who has expressed pain in this area before deciding what to do06:32
jibblesso I should just manually init each project folder like /stuff/cplusplus/foo with E.g. "bzr init-repo --no-trees sftp://host/srv/bzr/cplusplus/foo" ? Is this how most people do it?06:41
jibblesoops, I meant "bzr init", not "init-repo"; assume the repo was already created06:42
jibblesbe back in 2006:43
=== oubiwann is now known as oubiwann-away
=== oubiwann-away is now known as oubiwann
maxbjibbles: init-repo creates a repository, which is a storage/speed optimization to allow multiple branches/trees to share a single copy of history they have in common. init, on the other hand, creates a new branch07:02
jibblesOk, if you were going to version a lot of personal work in one folder hierarchy, what workflow / project divisions would you choose? Any takers?07:11
=== radoe__ is now known as radoe
lifelessjibbles: I'd just make branches for each project07:19
lifelessand ignore the hierarchy07:19
vilahi all !07:20
jibblesso something like "bzr init sftp://host/srv/bzr/foo" rather than "bzr init sftp://host/srv/bzr/work/programming/cplusplus/foo" ?07:21
lifelessjibbles: the latter07:22
jibblesdo you type the whole path for commits, etc.?07:24
spivjibbles: no, bzr remembers a default location for commits to checkouts, and for pushes, etc.07:28
spivSo, maybe the first time you might, but afterwards usually not.07:28
lifelessjibbles: also normally you'd just init on your local disk07:29
lifelessjibbles: and use push to push stuff to host07:29
jibblesThank you very much for answering my questions, lifeless :)07:31
jibblesGoodnight07:31
=== oubiwann is now known as oubiwann-away
=== oubiwann-away is now known as oubiwann
=== nlisgo_ is now known as nlisgo
thropehow can I find %BZR_HOME on windows?12:00
thropeI would like to create a RULES file12:01
thropedoes it have to be done on a per-user basis or is it possible to have a global one/12:01
lifeless bzr --version12:05
lifelessand yes, per user12:05
thropeok thanks12:07
thropeif I change an eol rule on windows12:07
thropedo I need to delete and recheck out the repo12:08
thropeto get the windows line endings put it12:08
thrope*in12:08
thropehmmm I have set eol native13:05
thropeand recheckout my repo13:05
thropebut now in windows all files have changed icon13:05
thropeI am guessing becuase of the different line endings13:05
thropewhen I do diff it is completely empy13:06
spivthrope: sounds like a bug in tortoisebzr (or whatever it is that shows those icons), please file a bug report about it14:03
thropespiv: after doing a commit it seemed to be ok14:04
thropeand the commit doesnt seem to have changed my other checkouts on linux machines14:04
iainfarrellhello BZR people! I come with limited knowledge seeking help :)15:38
iainfarrellI am trying to add a blog to the Ubuntu planet but it won't go15:39
iainfarrellget this error15:39
iainfarrellERROR: Cannot lock LockDir(lp-69469520:///~planet-ubuntu/config/main/.bzr/branchlock): Transport operation not possible: readonly transport15:39
iainfarrellany ideas?15:39
parthmiainfarrell: did you "launchpad-login"? if you don't login lp default branch to use https which is readonly.15:41
iainfarrellhello parthm - I have logged in, yes15:41
parthmiainfarrell: whats the command thats failing? push?15:42
iainfarrellcommit -m15:43
iainfarrellbzr commit -m "Added Design Team Blog to the Planet"15:43
iainfarrellwhich is what I'm trying to do :)15:43
parthmiainfarrell: do you have commit access to the branch on the server?15:45
caravelhi folks15:46
iainfarrellparthm: I _think_ so in that this is the adding to the planet and I'm an Ubuntu Member15:47
caravelI get some weird flickering issue in explorer using 2.1.1 on XP (and tortoise I guess). Didn't find any info so far, besides a known overlay conflict with DropBox (which I don't feel is related, and I don'tuse anyway). Any tip anyone, please ?15:48
parthmiainfarrell: i see some talk about this error message on bug #129701 ... seem to indicate that the user may not have write permissions to the branch.15:49
ubot5Launchpad bug 129701 in Bazaar "UnlockableTransport error trying to commit in checkout of readonly branch (affected: 0, heat: 0)" [Medium,Fix released] https://launchpad.net/bugs/12970115:49
parthmiainfarrell: what is the "checkout of branch:" shown by "bzr info"15:50
iainfarrellok parthm thanks, I guess I will have to find the right person to ask for access15:50
parthmthats the branch you will need write access to.15:50
iainfarrellcheckout root: .15:50
iainfarrell  checkout of branch: bzr+ssh://bazaar.launchpad.net/~planet-ubuntu/config/main15:50
parthmiainfarrell: if you are a member of "planet-ubuntu" you should be able to write.15:52
iainfarrellahh ok, I think it's because I've not been added to the correct launchpad team15:52
iainfarrellheh parthm - great minds :)15:52
parthmiainfarrell: :)15:52
parthmiainfarrell: i think the message is a bit cryptic. maybe it should be clearer. ... you could file a bug. someone would eventually look into it :)15:53
iainfarrellSo I need to be a member of Ubuntu Members which I didn't check at the start15:54
iainfarrellI'll get myself added15:54
iainfarrellyou guys ROCK, thanks :)15:54
beunoiainfarrell, being added to ubuntu members is a big process, as it is community-driven, I'd suggest you talk to someone from IS about it, or jcastro15:55
iainfarrellthanks beuno I'm talking to Jcastro now :)15:56
iainfarrellmake sure we do this properly :)15:56
LeoNerdBah.. I dislike the new shelve plugin. shelve/unshelve/shelf was nice because all the options that weren't -obviously- shelve/unshelve, lived in shelf. shelf list, shelf view, shelf delete,...16:05
LeoNerdNow they're seemingly-arbitrarily attached to one option or the other. bzr shelve --list, bzr unshelve --preview, bzr shelve --delete-only16:05
caravelCould anyone enlighten me please ? Using bazaar 2.1.1/xp w/tortoisebzr (0.5.4 by default) -- since this version, explorer "blinks" when getting around to any bzr folder. Fresh reinstall of bazaar/win and reboot reproduce the issue. Any thought ?16:20
MantridI'll take a really wild guess as I don't know, and suggest it may have something to do with icon caching in explorer.16:24
caravelMantrid: thanks - this is all I found, and I can't see it related: http://preview.tinyurl.com/2b8qclg16:26
caravelMantrid: the issue was occuring on a test repos, linked to an ftp server which is currently unavail. Could this be related ? Killing explorer mostly killed my windoz session, apps didn't come back when restarting explorer ^^ After restarting the issue still occured. I deleted the repos and created a new, local one: issue is gone.16:56
caravelin other word: is there any process trying to figure "real time" whether the branch seen in explorer is up to date against its source ?16:58
Mantridhmm. Looks like you may have found the cause. I've not look at the tortoise code so I don't really know much about it. If it does re-occur then perhaps you can determine if it is related to the ftp server.16:59
MantridAh you should ask the totoise devs. I believe there are hooks in explorer that tell you something is happening and probably we hook into that.16:59
caravelI've been using/setting up tortoise/cvs&svn an awful lot and never saw any similar issue. toirtoise was not 100% perfect but still the easiest for non-technical users ^^17:02
caravelI've got a question cf. topology: two developers need to use bzr on their respective laptops, no server involved, just an ftp folder as a "relay" between both devs, one of them is the "gate keeper". Another ftp server should be used as an extra backup place. I guess it's a very common scenario on small projects ^^17:08
jelmercaravel: right, that should work without issues17:10
caravelNone of the ftp servers are considered reliable. Should the main repos be created as independant on the gate keeper's laptop, then "pushed" onto the relay ftp ? To automate the ftp "waterfalls", should be use bzr client from the backup ftp to the relay ftp folder ?17:12
caravel(backup ftp is a debian server we administrate, so we can setup bzr client here)17:13
caravelOr... should the gate keeper define the main repos to be located on the relay ftp, then work on his local copy until remote commits ?17:14
caravelFinally, is there any difference between both results ?17:15
MantridDo you mean, should you use bzr to transfer the branches to the ftp server, or should you copy them up there?17:18
caravelMantrid: well, no: I hadn't consider NOT using bzr for replication, since I was assuming bzr would be more efficient than eg rsync for this (one of our criterias to chhose bzr actually, is that it's said to support folder renaming and files moving)17:20
caravelbut should I ? ;-)17:20
Mantridno I'd use bazaar to do everything. i.e. to push it up to the ftp server. That way it will lock the branch for you and prevent any accidental overwrites and so on.17:21
caravelok, so  dev A should make a "standalone" branch on his laptop, then "push" it on the relay ftp... which should be simply branced by dev B and the backup debian. Right ?17:23
Mantridyes I think so. But I don't quite understand, what is "backup debian" ? The ftp server is just to share the code isn't it between dev A and B right?17:25
MantridI've no doubt seen this I assume: http://wiki.bazaar.canonical.com/Workflows17:26
Mantridsounds like this "Decentralized with human gatekeeper" except the gatekeeper is also developer B (or A) and you have some other debian server involved.17:28
=== beuno is now known as beuno-lunch
caravelMantrid: Yes, I have seen this again and again ;-) dev A & B both travel quite extensively. "relay ftp" is a poor windo$ machine located at dev A home with unreliable connection (dev A is an independant consultant). dev B does internal QA and small contribs. "backup debian" is a modest server "on site" with unreliable connection, but we want a copy there, even if sometimes a little outdated. Purpose of the repo is a whole web site inclu17:32
caravelMantrid: sorry I guess this is almost flooding, did you receive this entirely ?17:33
Mantridmissed the end :P But I think you say the debian box is where you would call the main repository where the code will have it's home.17:34
Mantridand the ftp at A is so that dev B can get A's work.17:34
MantridYou needent have a gatekeeper. It depends if you want the code reviewed or not before it goes to the debian server. I guess you DO want it reviewed yes?17:35
caravelMantrid: well... dev A need NOT to rely on debian. YES, dev A must review anything, he's the only one skilled with the code he's using17:36
caravelhere is the end of my prev msg ^^ "backup debian" is a modest server "on site" with unreliable connection, but we want a copy there, even if sometimes a little outdated. Purpose of the repo is a whole web site including many media files. Sync don't have to be very often (2 weeks), and will be scheduled ^^17:37
caravelMantrid: what we need really are mirrors of what dev A is doing + the ability for dev B to contribute (for exclusive approval by dev A)17:38
Mantridin which case dev B can put the code somewhere, anywhere in fact and tell dev A to review and merge. you can even use bzr send to send a bundle.17:39
Mantriddev A can then push up to a mirror and or release site.17:40
caravelMantrid: (bundles could be huge) ok, so the main branch should be located on dev A laptop -- then pushed up his home ftp. Is this correct, will bzr handle his subsequent pushes to let him update ?17:43
Mantridyes that will work. Unless someone else pushes and update to the same place on the ftp server first. In which case bzr will tell your the branches have diverged and dev A will have to merge. But. that should not happen as each developer will have his own place on the ftp server to put code, and so pushes will just "go up" - the differences (new revisions) will get pushed.17:45
MantridIn all cases, only the differences will get pushed up no matter which developer is pushing where.17:47
caravelMantrid: ok, so it seems perfect: actually, since the only purpose of the ftp is sharing a copy of the main branch (which sits on dev A laptop) then if dev B wants to contribute it is perfect: he could push also to the same space, forcing dev A to merge before re-pushing. Right ?17:48
Mantridso 1. You can't really break anything by accident, bzr will tell you. 2. It will be quick to push (after the first push of all the data)17:48
caravelMantrid: brilliant. thanks, I think I had not understood what was a bzr "push". cheers17:49
Mantridyes that's right.17:50
Mantridyou can push the the same place. But if it's changed, he would have to merge back down first. But you said you want dev A to review the code first, so both the devs would use seperate places.17:51
MantridI suggest you give it a little try out. You don't have to use an ftp server. You can pretend that /home/ftpserver or c:\ftpserver is your ftp server.17:52
MantridWhat I do is the same for small projects. I push my work upto an sftp sever, so does my collegue. If I own the project, then I merge his work from the ftp server into mine and check it works, and then I push it back via sftp to what I call the mainline location which is seperate from both our branches.17:54
caravelMantrid: ok, but then do you use a shared repos for both branches, so the repo location is on the sftp server (and not on your workstation), right ? Then your mainline is a seperate bzr repo, even if it is 99% a duplicate of the dev area ?17:56
Mantriderm. you can do either. With two people it doesn't matter so much. But you can have a separate branch on the server called mainline if you want, that is if you like the "proper" stable code. That's separate from each of the developers branches. But you don't have to. If might be best though and then you can have a rule that says the mainline code must always at least be in working order. Whereas the developers branches don't have to be.18:01
MantridSo developer B will then refresh his branch "pull" or megre from either dev A's branch, or the mainline that that developer A manages.18:02
Mantridin any case. No matter what developer B does, whereever he gets the code from. bzr will pull it, or will tell him he needs to merge. There will be no problems of getting out of sync.18:04
caravelMantrid: I understand - in our case, dev A branch need to remain purely local to dev A laptop (yet it is a big effort for dev A to start using a VCS, can't push it too far). So he'll push "stable", dev B will update from "stable" and push to "B branch", from which dev A will merge ^^ OK, unless you need to correct me again I think it's all clear18:07
MantridYes that's it. And you can change your mind later if there is another way it's not a problem.18:08
Mantriddev B can pull or (update) from DEV a's branch directly if he wants to help dev A fix something toghther and then push his branch up. it will still merge correly, bzr will track all the changes no matter which branch they come from.18:10
Mantridbut maybe I am confusing you now. Try it out, and you will see.18:10
Mantridalso the bzr missing command can be helpful. it will give you a list of changes essentialy from what you have. You could say bzr sftp://server.com/projectx/trunk and it will tell you waht's changed, and what changed you have made that isn't up there already.18:12
caravelMantrid: sure ;-) again, dev A branch won't ever be accessible or published, only stable. Look: yet if I succeed to introduce the word "stable" itself as a concept in this little team, I think it will be a great victory!!  I already know that after this essential move (start using a VCS, finally), dev A won't have/take/accept to spend any time to reconsider anything, not even a sec ;-)18:14
caravelMantrid: thanks a lot for your clarifications. Bzr definitly sounds a lot more flexible than cvs/svn (or, well, then what I experienced with these).18:15
MantridYes. When you try it out a bit you will understand it better and it will make more sense to you.18:16
* caravel gives #bzr a break and is quite thankful to Mantrid18:17
Mantrid:-)18:17
=== beuno-lunch is now known as beuno
lifelessmornin18:26
Mantridevening. Got to run.18:52
lifelessthis is going to be fun20:11
lifeless"Note that when os.listdir() returns a list of strings, filenames that cannot be decoded properly are omitted rather than raising UnicodeError."20:11
maxburgh.20:14
maxbWhoever thought *that* was a good idea20:14
lifelesspython3 has a bit of architecture-astronaut feel to it20:14
lifelessin the whole unicode string thing20:14
jamlifeless: so now they are omitted rather than returned as 8-bit strs? I thought there is a proposal to give them as private-plane code points, or something like that20:15
lifeless3.2 or something like that will do a surrogate escaping thing for non decodable filenames which is better20:15
lifelessjam: no, thats the 3.0.1 docs20:15
maxbI'm going to assume that architecture-astronaut means something like being designed from a viewpoint far too far away from the problem?20:15
lifelessmaxb: yes, one ignoring inconvenient realities ;)20:15
jamlifeless: malformed files don't exist20:15
maxband if we all cross our fingers and believe that really hard, maybe it'll come true! :-)20:16
rubbswait. you mean Santa doesn't exist?20:16
* rubbs cries himself to sleep now.20:17
jamrubbs: no no, santa *does* exist, malformed filenames don't20:17
rubbsjam: oh, thank you for re-enforcing my irrational beliefs.20:17
jamsimilarly the current discussion about why URLs are all Unicode strings in python 320:17
james_wmalformed files are what you get for Christmas if you are on santa's naughty list20:18
jamthough from what lifeless has convinced me, you're not supposed to touch anything that you don't control20:18
lifelessright20:20
lifelessthere is a large amount of close your eyes and ignore the world involved in browser address/location bars20:20
lifelessand if you read that thread, to see the references to single urls that go20:20
lifelesshost/encodingA/encodingB20:21
lifelessand then ask yourself how a user is possibly meant to create-guess a url for that server ;)20:21
rbriggsatuiowais it bad form to call the cmd_* classes from another python script?20:34
lifelessrbriggsatuiowa: not at all, though I'd recommend using our factory facilities rather than constructing the objects directly.20:50
lifelesse.g. bzrlib.commands.get_cmd_object('foo')20:50
rbriggsatuiowalifeless: thanks - also, when I try and merge one branch into another - the files show up - but the merge history does not (it does when I run bzr merge manually) # I'm passing cmd_merge().run(location=merging_location)20:52
rbriggsatuiowalifeless: (currently refactoring to use command factory)20:52
lifelessrbriggsatuiowa: check bzr status20:52
lifelessrbriggsatuiowa: I bet you haven't committed after the merge ;)20:52
rbriggsatuiowalifeless: reverting and trying with factory20:53
lifelessrbriggsatuiowa: some commands override run_argv_aliases, but not all that many20:53
lifelessrbriggsatuiowa: the factory change won't fix the issue, its merely to let you get plugin enhanced command objects and so on20:53
rbriggsatuiowalifeless: could you help me with this?  the merge history doesn't show up and the lockfile stays locked (if I run this manually it behaves normally)21:05
rbriggsatuiowalifeless: https://gist.github.com/d0ecf3eb46b7fbec71e021:05
lifeless'lockfile' ?21:06
lifelessoh right21:06
lifelessyou really want to be calling run_argv_aliases21:06
lifelessas currently setup bzr command objects 'run' method is only really public if you are implementing a whole UI environment21:07
lifelessyou seem to just want to reuse the command as is, so you should reuse much or all of the UI environment too21:07
lifelesswhat bzrlib version are you iusing?21:08
lifelessrbriggsatuiowa: ^21:08
rbriggsatuiowa2.1.1 (I run apt off of the ppa)21:09
lifelessrighto21:09
lifelessso I think I know what is happening21:09
lifelessjust chekcing21:09
lifelessright21:10
lifelesscmd_merge uses cleanups21:10
lifelessin 2.1.x the run() method is not safe to call because only higher levels in the call stack ensure cleanups are run21:10
lifelessso call run_argv_aliases21:10
lifelesswhich is a little less python21:10
lifelessand it will work21:10
lifelessor grab 2.2b321:10
rbriggsatuiowalifeless: trying it out21:13
mgzlifeless: you've approved lp:~jspashett/bzr/missing_win32api_for_test but shouldn't it use Gordan's ExcutableRequired or whatever it was called instead?21:22
lifelessmgz: it may want to use that as well21:22
lifelessmgz: but his specific issue is his python doesn't have the win32api module21:22
rbriggsatuiowalifeless: bzrlib.commands.get_cmd_object('merge').run_argv_aliases([merging_location]) # worked - thanks a bunch21:23
mgzah, so it actually does require pywin32?21:23
mgzin which case, ignore me, it's fine.21:23
lifelessso he says, and my general thought on $notmyplatform things is - if they say it works and it looks plausible, land and fix later if needed.21:23
mgzyup, it's correct.21:25
lifelessthank you21:26
mgzthe actual function it's testing is horrible, but hey.21:27
TresEquismgz:  after all, where would we be without horrible code ;)21:28
lifelesshahaha21:28
lifelessTresEquis: a land of shinging light21:28
lifelessrbriggsatuiowa: excellent21:30
mgzre: his other branch, it's landable.21:36
mgzI take Alexander's +1 as meaning Approve as well21:37
mgzit's just a big confusing merge proposal discussion with lots of different threads of conversation going on21:38
lifelessok21:38
lifelesshas he pulled your stuff in ?21:38
lifelessif not21:38
lifelesscan you please:21:38
mgzhe has21:38
lifelessok cool21:38
mgzit's a little confusing as launchpad somehow has it listed above my comment21:38
lifelessplease file a bug21:39
mgzperhaps because my commit timestamps predate the comment and it's not a merge?21:39
mgzwhich is arguably correct21:39
lifelesswell21:39
lifelessa timeline has a context21:39
lifeless'when it becomes visible in the context' is better than 'when it was created but still not visible'21:39
mgzright, which would be "when did launchpad get this branch" I guess, rather than when the commit happened21:39
lifelessembugginate!21:40
lifelessmgz: right21:40
lifelessin fact,21:40
lifelesswhen did this branch, which is proposed, get this commit on its mainline21:40
lifelessmgz: please try toggling https://code.edge.launchpad.net/~jspashett/bzr/587868_args_handling_cant_debug/+merge/28129 to approved21:40
mgzI have no means of doing so.21:41
lifelessmgz: didn't we give you pqm access ?21:41
mgzoh, it can be done via pqm? I've not tried that.21:41
lifelessno21:41
lifelessseparate related question21:41
lifelessdid we give you pqm access?21:41
lifelessI thought we did21:42
mgzyup, I have an open tab somewhere with john's pqm plugin that I mean to get round to working out21:42
lifelessignore that for a sec21:42
lifelessplease visit this page https://edge.launchpad.net/~bzr-core21:42
lifeless(ignore the name, its misleading)21:42
lifelessit will say somewhere near the middle21:43
lifeless'are a member' or 'are not a member'21:43
mgzah, yeah, I'm not member of any teams on launchpad21:43
lifelessare you willing to be ?21:43
lifelessjoining either ~bzr (bzr and all plugins) or ~bzr-core (just bzr itself) will grant review control21:43
mgzdo I get a sticker?21:44
lifelesswhich you have at the social level21:44
lifelessheh :) - you got the tshirt instead21:44
mgzyeah, I can join one of these, last time we looked at it there wasn't an obvious way21:44
mgzbut I now see a join button, so was perhaps just being blind before21:44
lifelessmgz: no21:44
lifelesstell me which one you'd like to join21:45
lifelesscore+plugins, or just core21:45
mgzI've just hit join for bzr-core21:45
lifelessthe ~bzr team got lots of folk that weren't really interested in teh community, more just wanting help/cds/fanboy at one point21:46
lifelessso its set to restricted, which I think has a bad UI in LP21:46
lifelessbecause you can't *apply*, you have to be *added*21:46
lifelessand there isn't even a 'but please sir' mechanism, which the slightly more open 'moderated' setting has.21:46
mgzpresumably you now have an approve button somewhere?21:47
lifelessmgz: so, just-core is what you want ?21:47
lifelessmgz: in moderated mode, yes.21:47
mgzyup, core will do as I've only looked at a few bits of qbzr and so on21:47
lifelessok21:49
lifelessI could add you to ~bzr, but martin is the owner of ~bzr-core and neither I nor a group I'm in are administrators in that team21:49
lifelessso21:49
lifelesswhen poolie gets up, you'll get review approval facilities21:49
mgzcool.21:49
lifelesshave you looked at hydrazine ?21:50
lifelessit needs the launchpad API stuff, but thats pure python and should be ok on windows.21:50
mgznotyet, alexander expressed some fear of it.21:50
lifelessFamous Last Words.21:50
lifelessmgz: well the next step in getting you fully enabled here... is getting you running hydrazine21:51
lifelesspqm-submit is a terrible weapon from a bygone age21:51
mgzoh, the launchpad api things I tried to use when we were doing that stop-using-edge-thing21:51
lifelessyeah21:51
lifelessmgz: as I read the diff21:51
mgzand it nearly worked, one of the (many, ugh, setuptools) bits had a recent 2.4 compat thing I submitted a merge proposal thing for21:52
lifelesss is now unused ?21:52
lifelessmgz: also, typo, line 10621:52
mgzit's just an iterator, that we listify.21:52
lifelessspit the command line21:52
mgzyeah, the comments are a little suboptimal, and there are some existing and new >80 char lines21:53
mgzroasting the commandline on a spit is about right though.21:54
lifelessok21:54
lifelessso where I was going with all this21:54
lifelesshydrazine has21:55
lifeless$python feed-pqm bzr21:55
lifelessit will, once sufficiently stabbed, land stuff and its the interface I'll be fixing up to use LP APIs for merge control in the future21:55
lifelessI think it would be great if you had it working21:57
lifelessand this patch seemed like a perfect worked-example21:57
lifelessparticularly as there are a few more quirks to get out21:57
lifelessif its not too late, and you're interested in doing that, I'd love to work through it with you21:57
mgzokay, so, you're kindly offering to walk me through landing this?21:57
mgzletsdoit21:57
lifelessyes21:58
lifelessso firstly, lets assume this is perfect as is21:58
lifelessto do the simple path through21:58
lifeless(you can after we get it going land a trivial tidy up :))21:58
lifelessI've 'approved' the patch21:59
lifelessin principle you just do21:59
lifelesspython feed-pqm bzr21:59
lifelessit should be the first patch up, so you'd hit e\n21:59
lifelessand away it goes21:59
mgzjust reinstalling and patching the launchpadlib stuff22:01
mgzokay, feed-pqm launches browser window pointing at edge22:03
lifelessright22:03
lifelessthis is the login step22:03
lifelessoauth style22:03
lifelessfeed-pqm will need to change any data22:03
mgzanything, or non-private?22:04
lifelessthe permissions are very broad, but you get to see the code ;P22:04
lifelessanything22:04
lifelessif you were to have a private branch22:04
lifelessyou would want to be able to land it.22:04
lifelessA major security fix might get that treatment, for instance.22:04
mgzgotcha.22:04
mgzwhere's it store the token locally?22:05
lifelessit uses the freedesktop config path, or something22:05
lifeless[god knows]22:05
mgzI shall hunt later.22:05
mgzOkay, so first up is the win32api dependency addition22:06
lifeless~/.local or .cache I suspect22:06
lifelessright22:06
lifelessnow see the last comment22:06
mgzrecent comments is blank here, should it have something listed?22:06
lifelesshmm22:07
mgzah, the next one lists the last comment22:07
lifelessodd22:07
mgzI think you marked that first one approved without actually adding an approval comment22:08
lifeless thought I sent it to pqm22:08
mgzand it doesn't show the review submitter's comment22:08
lifelesslooking22:08
lifelessoh right22:08
lifelessit didn't have a commit message22:08
mgzah, it should say if you've already sent it/22:08
lifelessso I set one and while it thought context switched.22:08
lifelessanyhow22:08
lifelesslets stay on track22:08
lifelessyou've used n and found the argv one right?22:08
mgzyup.22:09
lifelesse\n22:09
lifeless(thats e-mail)22:09
mgzcomplains about commit message22:09
lifelessm\n22:09
mgzmy least favourite part ;)22:10
lifelessfeed-pqm will automatically add '(you)message(merge proposer)' when 'e' is done.22:10
lifelessmgz: and thus why I ask submitters to set one :)22:10
mgzso, I get a http 401 there, which I guess is expected22:12
lifelesspermission denied ?22:12
lifelessyou did login though22:12
lifelessor were you not logged into edge at the time?22:12
mgzright, but I'm not a member of bzr-core yet22:13
lifelessoh22:13
lifelessyeah22:13
lifelessso - what did you put in22:13
mgzfor the commit message?22:13
mgz"Allow use of Python arguments preceding bzr script in Windows command lines"22:13
lifelessyes22:13
lifelessok I've set that for you22:13
mgzokay, going back in22:14
mgzokay, looking good, there an option to tell feed-pqm where to find gpg?22:14
mgz(I'll just modify my path for now)22:15
lifelessit uses the bzr config22:15
lifelessso your ~.bazaar/bazaar.conf22:15
lifeless[DEFAULT]22:16
mgzand I need to set up gmail for smtp too.22:16
lifelessgpg_signing_command = pathtogpg22:16
lifelessright22:16
lifelessI dunno how to do that22:16
mgzI think I saw instructions on this for John's plugin, where's that tab...22:16
lifelessmail_client = mapi22:17
lifelessperhaps22:17
mgzsmtp_server = host:port22:17
mgzsmtp_username = smtp_password =22:17
lifelesssorry, thats the default22:17
mgzfrom there22:17
lifelessmail_client=editor22:18
lifelesstoo, perhaps22:18
lifelessENOTSURE22:18
mgzwilltry22:18
mgzmeh, thought I could get it to prompt me for email password, but get:22:20
mgzNotImplementedError: <bound method SilentUIFactory.get_password of <bzrlib.ui.SilentUIFactory object at 0x01EDF5B0>>22:20
mgzthat might be nice to fix at some point22:20
lifelessha ha ha22:20
lifelessyes22:20
lifelessuhm22:20
lifelessfeed-pqm22:21
lifelessshould call bzrlib.initialize()22:21
lifelessif it exists22:21
mgzscary, it says "Sent!"22:22
lifelesshttp://pqm.bazaar-vcs.org/22:23
lifelesscongrats22:23
lifelessyou might like to write it up for alexander and gordon and so on22:23
lifelessor not - I don't mind :)22:23
mgzyeah, wasn't nearly as bad as Alexander was fearing I think22:23
lifelesswhile you're there22:24
lifelessplease hit e on the win32lib thingy22:24
mgzdonedonedone22:25
lifelessnow, the responsibility22:26
lifelessits not a mechanical is-approved-queue22:26
lifelessbecause needs fixing votes etc require verification22:26
lifelessits just meant to make the mechanical part of 'send it in' easier22:26
mgzis there anything particular that needs doing if pqm rejects it at the testing stage?22:28
lifelessdepends on how enthusiastic you are22:29
lifelessheres what I do22:29
lifelessif its my code, I dig deep, figure it out, fix etc.22:29
mgzI take it I'd get email with the failures (now you've fixed that), and should write that in the merge proposal for feedback?22:29
lifelessif its someelses code that I've committed to landing, same.22:29
lifelessotherwise I'll grab the error from the mail and put it in the MP without the skips22:29
lifelessand perhaps attach the stdout/stderr gz files if they look like there is going to be additional, useful data.22:30
lifelesshowever they can't be attached because MP's are not 'things with attachments'22:30
lifelessso instead you'd need to put them on a related bug or something22:30
lifelessit also depends on how shallow it is22:30
lifelessNEWS files conflicts I will generally JFDI22:30
lifelessnow - see my thread on bazaar@ about continuing work on someone elses proposal for some related stuff22:31
mgzyeah, I nearly commented on your discussion with poolie the other evening but netsplit at the wrong moment22:31
lifelesswe took it to phone22:32
lifelessirc wasn't quite getting the right intonation22:32
mgzthe superseeded workaround mentioned in the email thread seems like a reasonable workaround22:35
lifelessyeah22:35
mgzwhat I've done in the past it push up a copy of the branch with my changes and invite a pull22:35
lifelessbzr lp-propose can set it all up for you22:35
lifelessI think thats good too22:35
lifelesscase by case22:35
mgzwhich is a softly-softly option for less straightforward changes22:35
mgzha, you've put up a py3 merge proposal!22:37
mgz...doesn't *quite* deliver on the name :)22:38
lifelessmgz: softly softly catchee dragon22:40
cbzmonkey22:44
lifelesscbz: not in this case, have you see python 3 ?22:45
cbzheh22:45
fullermdDragons are easy to catch.  First, you smear yourself with ketchup...   I'll let somebody else pick up the planning from here.22:46
mgzit's amusing how the email module thread has ballooned out into all kinds of doubt about the whole approach22:48
lifelesswell22:48
lifelessfolk have been skeptical from the start22:48
lifelessas they were about .net's stance which AIUI is similar22:48
lifelessI think part of the problem is that stringlike API's become less powerful when you make them more typed... and many web-sensitive things in python are expressed as pithy stringlike API's rather than (shock, horror) objects.22:49
lifelessurlparse is terrible, for instance.22:50
mgzyeah, as is like, all of wsgi22:50
lifelessthat reminds me22:50
lifelessI saw a tweet about a comet ready wsgi server this morning22:50
lifelessI must follow up on thsat22:50
lifelesssee how much evil its doing22:50
lifelessmgz: where are we at in testtools23:09
mgzwell, there are probably still some things to debate, but if we're mostly happy with the current, could try landing tonight.23:10
lifelesssure23:10
lifelessgimme 10 minutes23:10
mgzsuggestion: I fix the problem the patch for Python 2.5.2 introduced, then merge trunk, resolve the _StringException bits, add NEWS, and we give it a shot?23:11
mgzshould take me about ten minutes to do the bits my side.23:12
lifelessok23:20
lifelessping me when ready23:20
mgzokay, just writing NEWS now23:29
mgzlifeless: pushed.23:34
mgzI have kept your UTF-8 changes to _StringException, but haven't done anything about making piping to file output UTF-8 yet.23:35
lifelesshttp://furiousfanboys.com/2010/04/luke-i-will-not-be-your-father/23:35
lifelesstotally offtopic, but lolol23:35
lifelessbzr+ssh://bazaar.launchpad.net/~gz/testtools/unicode_tracebacks_501166/ still ?23:41
mgzyup.23:42
mgzI prefer the _StringException version with a type check in __init__ rather than in both __str__ and __unicode__ but you said subunit needs some changes there23:45
lifelesssubunit can be changed easily.23:45
mgzlet's do that now-ish as well then, and check it all works together23:46
lifelesssure23:47
lifelessfirst thing, does it work for me23:47
lifelessmake check PYTHON=python3.1 -> boom23:48
lifelesshmm trunk goes boom too.23:48
lifeless4 vs 623:48
lifelesswhats the diff23:48
mgzdammit!23:48
lifelesstesttools.tests.test_testtools.TestDetailsProvided.test_multiple_addDetails_from_Mismatch23:49
mgzI was checking like, six different pythons every step, and still manged to break py3k without noticing23:49
lifelesstesttools.tests.test_testtools.TestDetailsProvided.test_addDetails_with_same_name_as_key_from_get_details23:49
lifelesstesttools.tests.test_testtools.TestDetailsProvided.test_addDetails_from_Mismatch23:49
mgzyeah, it's okay, I see it too.23:49
lifelesstesttools.tests.test_testtools.TestAssertions.test_assertThat_mismatch_raises_description23:49
lifelessthats trunk23:49
lifelessSEP (me)23:49
mgzyeah, but I don't know how I missed testing py3k after the merge23:50
lifelesstesttools.tests.test_testresult.TestNonAsciiResultsWithUnittest.test_assertion_text_shift_jis23:50
lifelesstesttools.tests.test_testresult.TestNonAsciiResults.test_assertion_text_shift_jis23:50
lifelessare the new ones for me23:50
lifelessI'll pastebin the lot as thats easiest23:50
mgzokay, that must be my fault, was sure I'd fixed it23:50
lifelesshttp://pastebin.com/19SPiZEz23:50
lifelessand I23:50
lifelesswill look at trunk now23:50
lifelessactually, will finish my 'python2to3 is not sensible' mail first23:51
mgzokay, my dumb, I understand that.23:51
mgz^I was going to ask that question in your thread, I really don't like the source compatible approach23:51
mgzit might be the least worst, dunno, but I didn't have fun doing this with testtools23:52

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!