/srv/irclogs.ubuntu.com/2011/06/03/#bzr.txt

jelmermaxb: døne00:47
maxbthanks00:47
poolielifeless: hi, re your comments on the export patch00:48
poolieis a do-nothing generator really the cleanest thing?00:49
pooliejelmer: ^00:49
jelmerhi lifeless, poolie00:51
pooliethis seems redundant with observing the exporter writing to the file object00:51
lifelesswsgi needs a yield in there00:53
poolieit must pull rather than being pushed to?00:54
lifelessyeah00:54
poolieok, not quite00:55
pooliethere is a write function you can use00:55
pooliewhich is what i was remembering00:56
pooliebut it's deprecated00:56
spivGood morning.01:03
lifelesspoolie: so you're ok with the approach I suggested?01:03
poolieit seems a bit ugly01:04
pooliewould be better to actually generate the bytes or something01:04
pooliebut i suppose if you're writing to a local file, it is better to have them written directly01:04
lifelessits complex generating the bytes:01:05
lifeless - first you need the archive layer to put them together01:05
lifeless - then pass into the compression layer (when its separate)01:05
lifeless - then flush that (which most/all compressors do by pushing through write)01:05
lifeless - and finally pull that out of a buffer to yield it01:06
poolieright01:06
jjohansenis there a way to get bzr-fastimport to do character mapping to do tag name translation01:06
jelmerjjohansen: hi01:06
=== spiv changed the topic of #bzr to: Bazaar version control <http://bazaar.canonical.com> | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: jam | UDD failure ratchet: 484
jelmerjjohansen: not at the moment01:06
pooliehi spiv01:06
jjohansenjelmer: thanks01:07
pooliethe failure rate went down?01:07
poolielifeless: otoh this will buffer up whole files01:07
lifelesspoolie: yes01:07
lifelesspoolie: however once we emit our first set of bytes haproxy and apache will become happy01:07
poolieit will avoid them thinking we've died01:08
lifelesspoolie: also, this provide an abstraction layer01:08
lifelessbzrlib could change this to a threaded implementation01:08
lifelessand yield multiple times in a big file01:08
spivpoolie: yes, https://bugs.launchpad.net/udd/+bug/790733 resolved.01:08
lifelessand loggerhead wouldn't need to change01:08
ubot5Ubuntu bug 790733 in Ubuntu Distributed Development "Manually clear stale imports on jubany - due to failure whilst filing merge proposals" [Undecided,Fix released]01:08
poolieoh thanks01:08
jelmerlifeless: the existing patch doesn't make an abstraction layer possible though, as it still requires a tarfile object to be passed in01:08
pooliethere are a few others from max, you probably saw01:08
lifelessjelmer: I think geoff has updated it01:09
lifelessjelmer: I wanted him to do the public api at a slightly higher level01:09
jelmerl01:09
jelmerlifeless: there's also some overlap with the existing abstraction layer for exporting to files01:09
maxbjelmer: Your git and bzr trunks of dulwich appear to have diverged?01:10
jelmerlifeless: that's not to say I don't like the idea of an abstraction layer for exporting to streams, but it'd be nice to avoid duplicating all that code01:10
lifelessjelmer: the reason I asked him to patch bzrlib was to avoid duplication01:11
lifelessjelmer: I haven't re-read his patch yet01:11
poolieso there's going to be higher-level code that, each time the generator yields, sucks out the file object and sends it back to wsgi?01:11
pooliein loggerhead, taht is01:11
lifelessloggerhead will have a file object that acts as a buffer01:11
lifelessit will pass that file object into bzrlib along with the tree to export etc01:12
lifelessand then on each yield handoff to wsgi01:12
jelmerit seems like that sort of code would be nice to have in bzrlib too - so it can be used when e.g. streaming to stdout01:12
poolieso it will pass something like a stringio?01:12
poolieand then do yield buf.getvalue()01:12
lifelessa list of bytes01:12
lifelessbut yes01:12
pooliehm01:13
lifelessthere is a patch up on loggerhead with his original code01:13
poolieit does seem a bit like we're reimplementing something that already exists in wsgi or paste01:13
spivmaxb: hmm, looks like kde-l10n-tg and bittorrent may be the same issue01:15
lifelesspoolie: possibly.01:18
pooliedo we know who blackbug-nx is?01:25
=== maxb changed the topic of #bzr to: Bazaar version control <http://bazaar.canonical.com> | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: jam | UDD failure ratchet: 483
spivHmm, I think 'bzr upgrade' is broken for upgrading stacked-on shared repositories01:48
spivBecause it tries find_branches which tries to open a branch which is stacked on a different format, which is why I'm running upgrade in the first place01:49
spivThe other question though is why is e.g. lp:~ubuntu-branches/ubuntu/natty/bittorrent/natty a shared repo?01:50
maxbThat's... interesting01:50
spivHeh, and pushing to ~ubuntu-branches/ubuntu/gutsy/bittorrent/gutsy-proposed warns me it won't update its working tree!01:54
spivI guess some of these old branches were copied via directly sftp'ing up the local files and directories rather than pushing.01:55
spivOk, looks like I've got the bittorrent package import doing real work now.02:02
lifelesspoolie: thanks for reviewing xaavs thing so clearly02:07
=== spiv changed the topic of #bzr to: Bazaar version control <http://bazaar.canonical.com> | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: jam | UDD failure ratchet: 482
poolielifeless: oh are you talking about the little tags?or the review itself?02:14
lifelessboth02:16
pooliethanks :)02:17
* maxb is working on the residual weirdness of the rxtx import from the bzr sprint02:22
poolieshould we let this blackbug guy into ~udd?02:46
pooliei'm guessing no, because it would allow merging to the package importer branch02:46
spivIt's not like udd needs more bugs either ;)02:47
spivWhat do they want to do that requires membership of ~udd?02:48
pooliei don't know02:48
pooliethis is a persistent problem with moderated teams02:48
lifelessDecline with a message asking.02:49
poolieyes02:49
pooliei filed https://bugs.launchpad.net/launchpad/+bug/79215502:49
ubot5Ubuntu bug 792155 in Launchpad itself "hard to understand what effect approving a membership will have" [Undecided,New]02:49
poolieprobably a dupe of a six year old mpt bug02:49
lifelessI think its new actually02:50
lifelessstrongly related to some other things02:50
poolieyes02:50
poolieistm there could be a pretty cheap page that just lists every privilege of the team02:51
poolieor even just _some_ privileges "and more" would be a start02:51
poolielike: "it has a ppa"02:51
lifelessmm02:51
lifelessits a transitive thing02:51
lifelessit can scale poorly02:51
lifelessbut yes, it should be done02:52
poolieuh02:52
poolieknew you were going to say that :)02:52
pooliecheap to write; perhaps not easily cheap to compute02:52
pooliewhich almost implies not cheap to write :)02:52
pooliebut even if you said "plus, all the privileges of _link_ _link_ ..."02:53
lifelessone of the problems is that 'has privilege' is turing complete02:53
lifelessit would be good to fix that02:53
poolieindeed02:54
pooliei think listing just some of them, the ones that are cheap,02:54
pooliewould let me quickly say "no, i'm not letting random people commit to that branch"02:54
pooliewhat is the answer to this? https://answers.launchpad.net/bzr/+question/16004403:17
spivpoolie: first I'd need to figure out what the question is!03:26
dcolesSounds almost like he's talking about multiple repositories in one directory.03:26
dcolesRather than two branches from the same project.03:26
spivI'm not sure it is actually a question.  It reads more like a blog post about an idea that occurred to the author.03:27
dcolesBut yes. I kind of agree. Sounds like they wanted to give feedback on the colocated branches spec and used the Answers system to do it.03:35
pooliei agree04:00
=== wallyworld__ is now known as wallyworld
pooliespiv, re bug 792193, it seems like the 500 should be an lp bug06:33
ubot5Launchpad bug 792193 in Ubuntu Distributed Development "'linux' import fails due to deleted librarian file (orig.tar.gz) in .dsc for 2.6.24-5.9 in hardy" [Undecided,In progress] https://launchpad.net/bugs/79219306:33
spivYes.  It'd be noticed by the OOPS reports I guess?  It does generate an OOPS code.06:34
poolieoh maybe06:34
pooliei believe the practice is to file one anyhow06:34
spivI'd imagine it's not too hard for them to fix that 500 to be a 40406:34
spivOr maybe 410 Gone?06:35
poolieyes, let's protect http status biodiversity06:35
spiv:)06:35
poolieif it knows it used to exist i think Gone would be good06:35
* spiv files06:35
spivwgrant: you maybe know this: where, if anywhere, would I be able to find the conflicting version of linux_2.6.24.orig.tar.gz from https://bugs.launchpad.net/launchpad/+bug/663562 ?07:01
ubot5Ubuntu bug 663562 in Launchpad itself "duplicate orig for "linux" package in hardy" [High,Fix released]07:01
wgrantspiv: We swore that that file would never see the light of day again.07:05
spivYes, I can imagine :)07:05
spivIt leaves the package importer in a bit of a quandry though07:05
wgrantI think we may have deleted it.07:05
wgrantBut let me see.07:05
wgrantOh?07:05
spivBecause it wants to turn that package version into a revision07:06
spivAnd it can't because it can't find the source for it.07:06
wgrantspiv: Both are still there. Do you know the md5/sha1 of the one you need?07:07
wgrantb7b63f52551f9e4bf2e5ba902f8385fbefc5d80c is the purged sha1.07:08
spivYes, f09806748f6809d5f7d2a1859240e1a5, a.k.a. not the one currently published07:08
wgrantI presume that's it.07:08
spiv(that's an md5, obviously)07:08
wgrantRight, that one.07:08
spivWell, I can sneak it onto a directory on jubany where the importer will find it07:09
wgranthttp://launchpadlibrarian.net/11930615/linux_2.6.24.orig.tar.gz, but don't tell the kernel or security teams.07:09
spivThanks!  I won't :)07:09
wgrantOr they will find a way to sneak it into the primary archive and destroy a few days again.07:09
spiv(And I'm glad to see the original bug that allowed it in the first place is fixed)07:10
* spiv hmms07:10
wgrantIt gave us a very unpleasant couple of days, so yes, it was fixed :)07:10
spivThe importer understandably doesn't really expect this scenario, so I made need to do some hackery beyond just putting that file there…07:11
spivBut this is a good start, thanks!07:11
wgrantYeah.07:12
spiv(if it finds it has the right filename but wrong md5 it just shrugs and redownloads, but that means it's likely to overwrite the manually downloaded copy in its cache.  we'll see how I go.)07:14
spivOnce we get past this tricky revision we hopefully never need to care about this situation again.07:14
globis it possible to set a 'related branch' on an existing branch?07:48
spivglob: probably, what do you mean by “related branch” though?  Something that appears in the “Related branches:” section of 'bzr info' output?07:51
globspiv, yes; i am talking about the 'related branches' section of bzr info07:51
spivSo you can set any of those locations via 'bzr config' (except perhaps “stacked on”, but you can use 'bzr reconfigure' for that one).07:52
globspiv, ah, thanks :)07:53
spivBut there's a fixed set of relationships there, just public, parent, push, submit and stacked-on.07:53
spiv(Most of those can also be updated by using --remember with the appropriate command, e.g. bzr push --remember NEW_LOCATION)07:55
spivGoodness, I think I really have convinced the package import of 'linux' to make more progress07:56
globspiv, are those config changes local only?  can i make them the default for anyone else who checks out the branch?07:57
spivIf you set them on the branch (bzr config --scope=branch, or by editing .bzr/branch/branch.conf by hand), then yes they'll be the default for other people.07:59
globexcellent, you have been a wealth of knowledge, thanks :)07:59
spiv(Well, the stacked on location won't be, but again it's a bit special)08:00
* glob is setting submit_branch08:00
=== hunger_ is now known as hunger
=== spiv changed the topic of #bzr to: Bazaar version control <http://bazaar.canonical.com> | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.com/ | Patch pilot: jam | UDD failure ratchet: 481
pooliejam: don't suppose you're here yet?08:26
maxbSo, since people are busily UDD-ing, what do you think of my either-or on bug 708655 ?08:36
ubot5Launchpad bug 708655 in Ubuntu Distributed Development "sysvinit package import failing" [Undecided,New] https://launchpad.net/bugs/70865508:36
poolieoops08:38
pooliei actually did the deletion and requeeu08:38
poolieoh, actually only the deletion08:38
pooliewill do the other part now08:38
spivmaxb: have you seen my latest comments on https://bugs.launchpad.net/udd/+bug/792193 ?08:40
ubot5Ubuntu bug 792193 in Ubuntu Distributed Development "'linux' import fails due to deleted librarian file (orig.tar.gz) in .dsc for 2.6.24-5.9 in hardy" [Undecided,In progress]08:40
maxbum08:41
maxbThorny problem. I don't have an answer without studying the code for a while08:41
spivI'm getting close to the end of my day (and week!) but if you can help me understand the impact of that situation that'd be lovely08:41
pooliegood morning vila08:41
spivAh, that'll do for now :)08:41
pooliespiv, i'm getting close to the end too08:42
pooliei was thinking a bit about bug 25721708:42
ubot5Launchpad bug 257217 in Bazaar "closing terminal causes stale lock" [High,In progress] https://launchpad.net/bugs/25721708:42
maxbPresumably I can set this import up myself by just seeding the download cache with the "odd" version from the librarian?08:42
poolieand the conversations in london about this kind of thing08:42
spivBut I do see light at the end of the tunnel for that import, which is nice.08:42
poolieabout error handling and so on08:42
poolieperhaps i should post to the list08:42
spivmaxb: yeah, although of course it's a pretty resource-intensive import08:42
pooliethe idea of a crash-only design seems to make sense08:42
maxbI'll abuse my office workstation with it over the weekend :-)08:43
spivmaxb: FWIW it took ~1400s to reach the point where it used to crash on jubany, and if left to run to completion would probably take... hmm, not sure, but possibly days!08:43
spivI suspect when 2.4 is released and we put that on jubany it'll help the performance somewhat.08:44
maxbMaybe I should hack the code to ignore the existence of all series after hardy08:44
spivMaybe only a little, but I can be optimistic :)08:44
pooliethere's no reason we can't run the betas08:44
maxblamont was definitely working on a 2.4b2 IS-blessed package08:44
spivpoolie: well, except that the last time we updated to a beta on jubany there was some fallout due to plugin breakage or something like that IIRC08:45
pooliemm08:45
pooliecould well happen08:45
pooliewe could just try running it from source08:45
spivIt was fairly easily resolved, but it does push the “upgrade bzr” task past the <"trivial, just do it” threshold.08:45
poolietrue08:46
poolieso essentially i'm thinking of marking 257217 wontfix08:46
poolieto say that we handle closing windows by detecting the lock is stale08:46
spivHmm, I think so.08:48
spivIn general I think it's nice to make a best-effort attempt to cleanup when things go wrong or the process gets interrupted.08:48
pooliei'm coming to think that it may be 'nice' but it's not actually sensible08:49
spivBut in this case the risk of EINTR etc by intercepting SIGHUP means it's probably not worth the tradeoff.08:49
poolielike, the general skew should be more towards nicely recovering from an interrupted situation08:49
spivAnd I definitely agree that it's far more important to recover gracefully on the next run08:49
pooliebecause you will hit that anyhow08:49
spivSo I'd much rather we put effort into graceful recovery than dubious cleanups while crashing.08:50
spivWhich is a long-winded +1 for me for Won't Fix.08:50
poolie:) thanks08:51
spivOk, I'm off.  Have a good weekend everyone!08:54
pooliecheerio, have a good weekend08:54
pooliemaybe i will stop too08:54
spivpoolie: perhaps take a final re-review of that export patch first?08:56
spiv(if you haven't already?)08:56
spivOk, really gone now :)08:56
pooliewhich?08:56
poolieoh from um xaaz?08:56
poolieok08:56
maxbpoolie: Can I ask you to kill the sysvinit import? Ironically I've just found and fixed a bug I introduced during the bzr sprint which will cause the importer to produce slightly suboptimal history for packages being freshly imported with history in etch and earlier.08:59
pooliespiv, beyond my sure09:00
maxbSo, I'm hoping we can defer the sysvinit import until that can get reviewed and deployed09:00
poolieblah09:00
pooliemaxb, sure, how?09:00
maxbfigure out the pid and kill -INT it?09:00
pooliedone09:01
maxbthanks09:01
maxbI'll update the bug09:01
pooliethank you09:01
jelmerRiddell: do you know if syncs are happening at the moment?09:49
jelmerRiddell: I mean, whether manually requested syncs are processed?09:49
Riddelljelmer: yes should be09:50
pooliehello riddell, jelmer09:57
Riddellgood morning poolie09:58
jelmerhey poolie09:58
lifelesspoolie: hi09:59
lifelesspoolie: you're not in #launchpad-dev09:59
pooliehuh09:59
lifelesspoolie: but I don't agree with your approach on the mail handling patch; I've replied in mail - and had already suggested an approach in the bug.09:59
lifelesspoolie: I'm glad you're hacking on it.09:59
pooliehm, i thought my approach was consistent10:00
Riddellpoolie: what was the rt ticket for adding me to jubany (asks the sysadmin vanguard)?10:01
poolie4586410:01
lifelesspoolie: if my mail resolves things great; if not I can chat about it so we get a consistent view on things anytime10:02
gourare you aware that PHP is considering switch from SVN and only hg & git are discussed?10:07
AuroraBorealisso?10:09
AuroraBorealispost on on the mailing list advertising for bzr, if not then oh well :>10:09
goursuch tasks are for bi fishes since the migration is very often not based on technical merits but it's political issue10:11
gour*big10:11
AuroraBorealispretty much10:12
gouri'm reading about Advanced shared repository layouts (http://doc.bazaar.canonical.com/bzr.dev/en/user-guide/shared_repository_layouts.html) and wonder how relevant it is when one uses LP to host project's branches? to me it seems not so much and for my local organization it's anyway not a problem..10:49
AuroraBorealisit seems that launchpad is the repo10:50
AuroraBorealisand you can branch and submit those branches to lp like you would anywhere else10:50
spivgour: Launchpad automatically arranges for branches to be stacked, so you don't need (and actually can't use) shared repositories on its code hosting server10:52
gourspiv: good...one headache less ;)10:54
spiv(And Launchpad also enforces a particular, consistent hierarchy; typically ~owner/project/branch-name, with some shortcuts and a slightly different scheme for branches of distro packages)10:56
gournow i'm researching about rebase7rewrite plugin...not considering git's feature but more from the darcs/fossil perspective and their 'private' branches which help to have 'nicer' history10:56
spivThe first question is “why do you care about making 'nicer' history?”  bzr's default presentation of just the mainline in 'bzr log' etc typically gives a similarly nice view without throwing away any history.10:57
gourin case when i do some 'experimental' commits in a 'feature branch' and then would like that during merge it's presented as 'one nice patch', is it the right use-case?10:59
spivWell, you get to choose the use cases, you're the user ;)10:59
gourheh...doing commit/uncommit, making mistakes etc. is, maybe, not so nice/important to keep in the history11:00
spivBut I'd first check if the default operation of "bzr merge" and "bzr commit" for that does something you like or not.11:01
spivI think you may find that actually you're happy with that without rebasing.11:01
spiv(Or maybe not.  Personally it suits me quite well.)11:02
gourspiv: you mean, you don't have need for rebase?11:02
spivI do use uncommit quite frequently :)11:02
spivI can't remember the last time I rebased.  Probably many months ago.11:02
AuroraBorealiswhat is rebase?11:02
* gour is re-reading http://bemusement.org/diary/2008/July/29/rebase-criticism11:03
spivgour: that would be my website :)11:03
Riddellyay, I have access to jubany11:03
gourAuroraBorealis: http://wiki.bazaar.canonical.com/Rewrite?action=show&redirect=Rebase11:03
gourspiv: heh, interesting...i remember it was good read, but it looks i forgot the wisdom ;)11:04
AuroraBorealisah11:04
spivgour: :)11:04
spivgour: thanks!11:04
spivTo an extent I don't think it matters hugely if you rebase or simply merge; it's usually pretty rare for someone to actually spelunk through old history in enough detail that the difference would matter much.  But given that, you may as well do the simpler of the two: just merge.11:06
spivIt mostly is a question of how you want to present your changes to someone else to get them accepted to their branch.11:07
gourit makes sense...11:09
gourbtw, i've decided to use LP with or without wiki ;)11:09
spivgour: :)11:09
* spiv wanders off for dinner11:09
gournow we're coming to looms..11:10
gournow, after brief look at looms, i wonder i part of its functionality is available by using shelves to keep it simpler11:25
Riddelljelmer: thanks for the changelog-closes-bugs review, I didn't write a test because I've no idea how to run the test suite for bzr-builddeb, can you tell me how?11:52
jelmerRiddell: anytime, this will be a neat feature to have :)11:53
jelmerRiddell: You can run them using "bzr selftest bzrlib.plugins.builddeb" or (shorter variant) "bzr selftest -s bp.builddeb"11:53
jelmerRiddell: if you're not working in the version of bzr-builddeb you currently have active, you can use BZR_PLUGINS_AT11:54
jelmerI usually run something like this in my active bzr-builddeb branch:11:54
jelmerBZR_PLUGINS_AT=builddeb@`pwd` bzr selftest -s bp.builddeb11:54
Riddellah hah right, I should have been able to work that out11:55
=== mrevell is now known as mrevell-lunch
jelmerRiddell: just noticed - there's a find_bugs_fixed convenience function in builddeb's util.py you should be able to use12:59
RiddellI'll take a look13:28
=== mrevell-lunch is now known as mrevell
Riddelljelmer: updated15:29
jelmerRiddell: reviewed.15:33
Riddellthanks jelmer, do you know if bzr-builddeb has a NEWS type file?  I can't see one15:34
jelmerRiddell: that's a good point15:35
jelmerRiddell: it's a native package, so we add entries to debian/changelog15:35
Riddellah right15:35
Riddellwell it can't be merged in until https://code.launchpad.net/~jr/bzr/707274-commit-message-hook/+merge/62334 gets merged anyway15:36
* jelmer takes the hint15:36
jelmer;)15:36
jelmerI'll have a look after I wrap up my current branch15:36
Riddelljelmer: "We usually stick to one single summary line in docstrings"  why, surely it should be as long as it takes to clearly describe it?15:40
jelmerRiddell: sorry, that could've been worded better15:40
jelmerRiddell: we usually have one sentence on a single line with the summary and then more lines for further explanation15:40
jelmerdoc generators often only display the first line in various places so if the initial sentence spans multiple lines it cuts the sentence off halfway15:42
mgzit's also a good habit to say what a function's for in ~60 characters15:47
jelmermgz: I guess that's what I'm trying to say.15:48
jelmermgz: But you managed to do it in 60 characters rather than 4 lines :)15:48
mgz:)15:50
mgzgah, will have to leave bzr things for another day again16:41
mgzstill haven't replied to that cycles thread on the list16:41
=== deryck is now known as deryck[lunch]
=== deryck[lunch] is now known as deryck
=== yofel_ is now known as yofel
jelmerlifeless: hi21:17
lifelesshi21:17
jelmerlifeless: what's the best way to QA the code importers? As I understand qastaging doesn't come with its own import slave?21:18
lifelessdunno21:18
lifelesshave a chat with losa21:18
jelmerhmm, ok21:19
lifelessgenerally we can't run stuff that talks to external servers in *staging21:25
lifelessso its tricky21:25
jelmerlifeless: thanks; that's not the answer I was hoping for.. :)21:33
jelmerI'll talk to a losa first thing on Monday21:33
maxbjelmer: Hi. Your bzr and git branches of dulwich seem to have diverged22:29
=== jjohansen is now known as jj-afk

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