poolielaunchpad will be down for 3 hours, starting now00:00
AfCThree HOURS?00:18
pooliewell, the window is that long00:18
poolieit will probably be less00:18
lifelessAfC: there is a large data-migration task being performed00:20
lifelessAfC: to improve performance00:20
AfClifeless: no doubt.00:20
awilkinsarse, launchpad is down00:22
AfClifeless: planning and executing that sort of event is what we specialize in, after all. I'm just surprised to hear that {the window is that long | there is that much uncertainty associated with the event's duration}. That speaks of a number of issues.00:23
lifelessAfC: The test environment provides an upper cap; but exact block usage etc on a filesystem drives actual timings, so there is some variation. We also prefer to surprise than disappoint if the duration announced is wrong.00:25
pooliei think the bottleneck here is technical, at the db level, rather than organizational00:25
lifelesspoolie: well, I think its arguable either way :).00:27
AfCWe would generally argue that if a technical bottleneck exists at the db level, that is an architectural failure. But that's a conversation a bit outside the realm of operational circumstances, more in line with "what do we do to prevent this from ever happening again". Which, of course, are the best conversations. But in the mean time,00:28
AfCyes, there are both technical and organizational issues.00:28
beunoAfC, maybe devs didn't setup the enviroment to such a large scale. It happens everywhere00:30
AfCbeuno: big time00:31
AfCbeuno: all though Robert did say "test environment" which speaks of a proper pre-production staging facility.00:31
AfCbeuno: the problem at that level tends to be that at a certain point it is (business economically) impossible to have a duplicate of the production data store as it is usually too big.00:32
AfCbeuno: and/or they run production on fast kit, but staging on not-fast kit00:32
AfCthat sort of thing happens a lot.00:32
beunoAfC, generally used for new features rather then scaling testing. It's a bit hard to predict _how_ users will use the application. I don't think it's anything our of the ordinary00:33
lifelessto be more precise in this case; we're getting a faster database server.00:34
AfCWell, it may not be unusual, but it doesn't change the fact that it's pathetic that so many organizations back themselves into such a corner.00:34
beunothere ya' go00:34
lifelessthere is a lot of data to get fully synchronised across.00:34
AfCSo the architectural failure here is that the system design did not forecast this operation nor allow for it to happen in such a way that did not require hours of downtime. <10 seconds is the usual standard.00:35
AfC(but that requires engineering the system to not have a single point of failure)00:36
AfC(hence my observation that that's is an architectural problem)00:36
lifelessAfC: it requires rather more than that00:36
lifelessno single points of failure is neither necessary nor sufficient for this sort of problem - sorry :)00:37
beunoAfC, launchpad devs seem to be generally very skilled, I'm sure they have more than enough reasons to do so00:38
AfClifeless: single point of failure in this case is "a single data base that must be downed to do migrations"00:38
AfCthe fact that your company is offline right now is more than enough evidence to that point.00:38
foomheck, the data warehouse at MIT goes down for 4 hours every sunday night for backups.00:57
lifelessabentley: mailed re: branch's having the pointer.01:09
lifelessabentley: happy to chat in higher bandwidth if you'd like.01:09
abentleySure.  Skype?01:09
lifelessyeah, let me change rooms01:10
awilkinsIs there a reason the tests don't use osutils for platofrm checks?01:13
awilkins(I mean a good one, not "meh, platform == 'win32' is easy to type")01:13
lifelessabentley: no01:53
lifelessawilkins signed ogg01:54
=== Verterok_ is now known as Verterok
eetfunkHello all!  Is there a way to convert git to bzr?02:43
jdongI think you need linus-proof class 10 armor first....02:47
lifelessthere is an experimental branch of bzr-git that will do conversions; dunno how good it is. There is also Tailor.02:48
jdonglifeless: has tailor gotten better at dealing with distributed vcs branching relationships?02:49
jdonglast time I used it , it was virtually a "playback one revision, commit it to bzr" deal02:49
lifelessjdong: no idea02:50
jdongwhoa, cool, bzr commit --show does --show-diff02:51
jdongdoes that apply to all options? incomplete ones expand out?02:51
eetfunklifeless: thanks, i'll check it out03:03
abentleyjdong: Yes.  Standard behavior of the Python optparse library.03:16
jdongabentley: very cool didn't know that :)03:16
abentleyIt was basically an accident.  Commands don't do that.03:17
abentleyi.e. bzr com won't commit.03:17
Bloguero__Connorwhy I am having this problem?: http://pastebin.com/m57a4a9b803:19
elmost and di work03:19
elmoor are they specific short forms?03:19
abentleyelmo: yes, only specific aliases work.03:19
abentleyBloguero__Connor: It looks like in a previous invocation, you did "bzr send sallycode.patch" and it remembered that location.  You need to specify the target branch to override it.03:21
jdongabentley: another case of Python Magic (tm)03:23
Bloguero__Connorabentley: Yes, that was what happened, now, How I do that (specify the target branch)?03:23
lifelessjdong: we'll probably fix this at some point03:23
jdonglifeless: is it really broken? Kinda useful for those long options without a short alias03:23
abentleyBloguero__Connor: it is the first argument, so you would do "bzr send -o sally.patch TARGET_BRANCH"03:24
Bloguero__Connorok, gonna try03:24
lifelessjdong: yes, its broken.03:24
Bloguero__Connorabentley: Target_BRANCH is the branch where I want to sen the patch or it is my branch?03:31
abentleyIt is the branch where you want to send the patch.03:31
Bloguero__Connorbut I want to create a "merge directive" to by send by email.03:34
abentleyA merge directive needs to know what data to send.  It does this by determining what's already present in the branch you want the directive to be merged into.03:35
Bloguero__ConnorI have a branch that is a copy of another code (Harry code). Then I made a change. I commited to my private branch (projectY-fromH). Now I want to send the patch back to the main branch (Harrys one).03:38
beunoBloguero__Connor, bzr push branch_location03:46
Bloguero__ConnorHow the receiving location can accept or reject the change?03:47
Bloguero__ConnorDoes Harry have a chance to accept or reject what I push to him?03:48
Bloguero__ConnorBTW, my user don't have write permission in the other's users filesystem. So the push didn't  work.03:52
Bloguero__ConnorThat is why I want to send him a patch using send03:52
lifelessBloguero__Connor: you can push to a public location of your own | harry can give you access to push to his branch | you can use bzr send03:53
Bloguero__Connorok, will try it now03:53
Bloguero__Connorlifeless, YES, I see it now. I was the eclipse, now is backing off and I undesrtand :)03:55
beunoBloguero__Connor, or harry can pull/merge from you03:56
* beuno is off to bed now03:56
Bloguero__Connorbeuno: I made the send by using Harry path. To create the .patch file I dont need write access03:56
Bloguero__Connorgonna sleep, bye!04:02
lifelesswoo stacked check passing.04:42
poolielifeless: gentle nudge re the baz packages for this week04:45
pooliealso, woot04:45
lifelesspoolie: didn't you see me hand off to beuno yesterday :)04:46
pooliei saw you talk to him04:46
pooliecan he actually do it?04:46
lifelesshe has as much access as I IIRC04:46
lifelessin Debian there is a maintainer lock, noone can do it other than anand unless its rc.04:47
lifelessin Ubuntu we need to do stuff in main04:47
lifelesspoolie: 'bazaar' is another possible venue; and the food there is divine :)06:01
=== pooli1 is now known as poolie
lifeless17:01 < lifeless> poolie: 'bazaar' is another possible venue; and the food there is divine :)06:29
lifelesswheee done06:59
lifelesspoolie: it propogated just fine.07:00
ubotuNew bug: #193893 in bzr-loom "branching over bzr+ssh does not propogate loom threads" [High,Triaged] https://launchpad.net/bugs/19389307:01
AfCWhat's a loom thread?07:11
mwhudson_AfC: install the plugin and 'bzr help loom' is one approach07:16
mwhudson_it's a way of maintaining separate threads of development in one branch07:17
mwhudson_(roughly speaking)07:17
AfCNot a fancy new threading system :)07:17
=== doko_ is now known as doko
=== mwhudson__ is now known as mwhudson
g0ph3rhi folks, i'll have a quick question: i'm using bzr + bzrtools on ubuntu but noticed yesterday that upgrading bzr forced bzrtools to get removed. i'm using the bzr PPA packages for ubuntu gutsy. is this an already known issue? does anybody have any idea if/when this is going to get fixed? thanks a lot in advance!07:42
g0ph3rmy entry in sources.list is (according to the PPA launchpad info): deb http://ppa.launchpad.net/bzr/ubuntu gutsy main07:48
g0ph3rnow when i try to reinstall bzrtools (version 1.2.0-1) i get the following complaint: "Depends: bzr (<1.2~) but 1.2-1~bazaar2~gutsy1 is to be installed"07:49
awmcclainAnyone alive and familiar with bzr-svn?07:49
jkakarlifeless: Congratulations on announcing looms!07:50
deepjoyI still cant find any reference to bazaar loom short of installing the plugin08:05
deepjoyis there a website?08:05
pooliedeepjoy, just https://edge.launchpad.net/bzr-loom08:06
abentleylifeless: I'm looking at test_combine_last_two_threads in the loom plugin, and I don't understand why it ever passed.08:07
TFKylehmm, wonder how reasonable it'd be to push a statically built web ui whenever you push a branch instead of having dynamic ones, it'd probably use quite a bit of space for branches with lots of history or large branches though09:11
abentleyTFKyle: it would reduce the flexability too-- many web UIs let you compare any revision to any other revision.09:24
TankEnMateWhy does bzr use so much RAM?09:28
visit0rpython produces some overhead09:28
TankEnMateI'm doing an initial check out of the ubuntu desktop course, and bzr is using about 400M and hasn't written anything to disk..09:28
TankEnMateIt's enough to turn people off altogether..09:29
TankEnMateIf I didn't have to check this stuff out I would have given up long ago..09:29
TankEnMateIsn't there a way to clone a repo just by using rsync?09:29
TankEnMateAt last!! After reaching 500+M it has decided to write out..09:32
TankEnMatewhat a disk storm...09:32
TankEnMateis there a way with bzr to clone a repo using rsync?09:35
TankEnMateguess not...09:36
lifelessabentley: I don't understand why the movement of the fetch is needed, the other stuff is obviously correct09:39
lifelessjkakar: thanks!09:39
lifelesspoolie: I need to add loom to the bzr plugins page too09:39
johnnyhow do folks manage plugins across a group of collaborating developers?09:40
fredphi, what would be the easiest way to know if there are uncommited changes ?  I am currenty using if [ $(bzr status | grep modified) ]; then ...09:55
fredpbut there may be a better way.09:55
awilkinsYou don't count new files as uncomitted changes?09:56
fredpthis is just to prevent an automatic commit to apply unexpected changes; and I considered people using bzr add would not forget to bzr commit.09:58
fredpbut better safe than sorry, I'll also check for ^added09:59
awilkinsAnd unknown09:59
fredpyou're right, and removed, and I'll be set.10:03
fredpdo you know by chance if it is possible to pipe the commit message to bzr commit ?10:04
fredpecho whatever | bzr commit --file=- doesn't work10:05
TFKylefredp: and renamed :)10:07
awilkinsThat was weird, I tried piping it in POwershell and I got trapped in an instance of Vim that was pretending to be a shell.....10:07
TFKyle(hmm, and kind changed if bzr st shows that)10:11
fredpit would probably be wiser for me to match ^[a-z]+:$ to get everything10:13
tseliothi all, I'm having a problem with my bzr branch on launchpad10:38
tseliotwhenever I try to push the code to my branch I get this error:10:38
tseliotany ideas?10:39
luksyou can use "bzr break-lock" if you are sure the lock is wrong (for example caused by a network failure on push)10:51
sabdflhey folks, what's the recommended way to convert baz to bzr?10:59
sabdfli found an ooold baz archive and I think it has revisions that never got properly converted10:59
jrydberg_who's maintaing trac-bzr these days?11:02
tseliotluks: thanks, I'll try it11:04
timparkinHi, I'm trying to use bzr and subversion but am having problems in that bzr-svn needs bzr 1.1 which I can't get hold of (1.2 seems to be the only one available)11:14
tseliotluks: it worked. Thanks again :-)11:14
timparkinIs there a 1.2 bzr-svn ? or should I try to find a bzr 1.111:14
jelmertimparkin: there is no 1.2 bzr-svn yet11:24
timparkinHi Jelmer - I guessed at the tarball name and path by changing 1.2 to 1.1 which worked fine... It may be useful to add this path to the bzr download page11:38
timparkinand thanks for the response ;-)11:39
awilkinstimparkin: As far as I can tell bzr-svn 0.47 works fine with 1.2 (better, in fact, due to 1.2 improvements) - you can ignore the version warning, or edit the code that checks it.11:53
awilkinsBut jelmer has the final say, of course :-)11:53
lifelesssabdfl: bzr baz-import12:18
sabdfllifeless: how do i re-use history?12:18
=== cprov-out is now known as cprov
g0ph3rhi folks, the currently available bzrtools package on PPA for ubuntu gutsy is incompatible with bzr. are there any plans to upgrade bzrtools to a compatible version or to fix the package?13:00
ubotuNew bug: #193980 in bzr "revert after add destroy my working tree" [Undecided,New] https://launchpad.net/bugs/19398013:10
=== mrevell is now known as mrevell-lunch
abentleylifeless: bzrlib/test/branch_implementations/test_pull specifically tests that fetch is done before raising DivergedBranches.13:15
* awilkins has just exclaimed out loud that bzr is "freaking awesome"13:25
awilkinsJust merged two unrelated (but smae content, essentially) trees for the first tim13:26
=== deepjo1 is now known as re1
=== re1 is now known as deepjoy
jelmerawilkins, :-)13:31
=== mrevell-lunch is now known as mrevell
=== maw is now known as mw-
deckoGuys, there's any place to download bzr documentation and tutorials???15:16
jelmerigc: hi15:31
No`hi all15:34
No`dunno if it's possible in bzr, but I'd need somthing like the "externals" in subversion15:34
LeoNerdPerhaps explain what those are?15:35
No`i.e. a branch inside a branch, that I could sync/pull15:35
LeoNerdI imagine most of us here aren't that familiar with SVN15:35
johnnyit's a branch that links to another branch15:35
johnnyNo`, afaik it is not possible yet15:35
awilkins"Nested Trees"15:35
awilkinsSort of15:35
johnnynested could exist without on repository, but what is the other trees are outside of your control?15:35
johnnyerr with one*15:36
No`johnny: ah. too bad. If a project shares "libraries" with others, we could have to manually update them together15:36
awilkinsTrue... wasn't there some sort of branch manager thingy hanging around?>15:36
johnnymy related question, is how do you folks handle plugins within a group of devs on a project?15:36
johnnythat should be a simple question..15:36
No`well it's not "out of my control", but I'd like to automagically have a mirror of a library that could belong to a given rep15:36
johnnyhmm.. i know monotone had a mirror hook15:37
No`anyway. if it's not possible, then it's not possible15:37
johnnybzr can prolly do the same thing15:37
tolbrinoHey guys. I am new to bazaar and wanted to checkout a existing subversion branch with bazaar. I have successfully installed the bzr-svn plugin. But everytime I try to co from svn I receive a "Not a branch" error message. Is that not a supported use case?15:43
awilkinstolbrino: Which protocol are you using to access svn?15:51
VSpikeI'm looking for a bit of best practice advice.  I've been using bzr on a single machine and getting on pretty well with it.15:51
tolbrinoawilkins: I'm using http15:51
VSpikeI'd like to create a main branch on a different machine to enable "Team Collaberation, Distributed Style" as shown in the user guide15:52
awilkinsTry bzr branch svn+http://my/repo my-local-branch15:52
tolbrinoawilkins: all right, I check that15:52
VSpikeOn that machine, would I normally create a dir or symlink under root to simplify the sftp URLs?15:53
tolbrinoawilkins: Now I receive a "Unsupported protocol for url..." error15:53
VSpikeAnd then create a user account for everyone that wants to access it, probably under a bzr group?15:53
VSpikesftp://something.some.net/home/bzr/main is OK I guess15:54
VSpikeJust wondering how people normally do it15:54
datosomething like that, yes15:54
VSpikeIs there any need to create a separate unix account for each user if bzr has its own concept of who people are?15:55
datoVSpike: you normally would call the group "projectname" instead of "bzr", and put "main" under /home/bzr/projectname, eg.15:55
datoVSpike: well. sharing a single account by everybody would work too, if you want that. that's just server administration realm, nothing to do with bzr :)15:56
VSpikeoh yeah, understood :)15:56
tolbrinoawilkins: The subversion repository I want to access does only support http and https15:56
VSpikewhen you identify yourself to bzr where is that info stored?15:57
lukstolbrino: is the svn plugin listed in `bzr plugins`?15:57
VSpikein the branch you're working on?15:57
tolbrinoluks: yes it is15:57
datoVSpike: depends15:57
VSpikeor at a user level on your current system?15:57
datoVSpike: you can set it by hand in an env. var, or if you use `bzr whoami John <john@foo.com>`, it'll be stored in a configuration file under ~/.bazaar15:58
VSpikebut the account/identity that I use to sftp into the repo is irrelevant as far as bzr is concerned?15:59
VSpikeits only a transport level concern15:59
VSpikeGreat.  Well a single user would work fine for me then I think16:00
* dato has to leave now.16:00
VSpikeIf I want to move to a gatekeeper model, i can do that with file permissions, can't i?16:00
VSpikedato: thanks for the help16:00
VSpikesimple make the main trunk read only for regular user(s)16:01
VSpikebut allow them to create/edit branches16:01
datoVSpike: you could change the permissions to not allow writing for the shared account16:01
datoyes, what you say too16:01
VSpikedato: if I did that, by what means would they submit changes?  just tar the whole lot and email it, for example?16:02
VSpikedato: if I did that ^ thing you said16:02
datoVSpike: there is bzr send16:02
VSpikeright .. will read up on it.  thanks again16:03
datothat generates a patch + metadata that you can pull/merge from16:03
tolbrinoluks: Rechecked the plugins. Seems like cygwin(yes I am running windows) did not load it properly.16:03
datoleaving nor for real16:03
=== kiko is now known as kiko-fud
tolbrinoluks: The plugin is working now. But bazaar shows another error even when I just type "bzr version".16:16
tolbrinoI guess that is caused by the version bzr which cygwin uses. Version: 1.0.016:16
tolbrinoFurther upgrading to version 1.2.0 did not help. The error is : "AttributeError: 'module' object has no attribute 'svn_swig_py_cancel_func' in client.py16:29
tolbrinoAny help?16:29
luksare these the patched svn bindings?16:29
luksI'd try native bzr and the binaries linked on the website16:30
tolbrinook, I double check that16:30
tolbrinoYes, I have installed the patched subversion bindings16:31
jelmertolbrino: that error suggests the python-subversion installation is corrupt16:33
tolbrinojelmer: well, maybe the source I have used for cygwin do not fit. I used the ones provided on http://d5190871.u44.websitesource.net/bzr/16:35
jelmertolbrino: I don't think those are meant for use with cygwin, but with the native build of bzr for windows16:35
tolbrinook, are the patched subversion bindings provided somewhere?16:42
jelmerthe patches are listed on the page you just mentioned16:45
jelmerI don't think there are binaries for cygwin available16:46
mtaylorbzr: ERROR: The branch format bzr loom format 6 (based on bzr branch format 6)17:30
mtaylor is not supported by loomify.17:30
mtaylorfog: how do you get this to show in your user: n=fog@debian/developer/fog ?17:33
fogmtaylor: it is a cloak.17:35
fogmtaylor: you can ask for a cloack if you found the irc netowork or are part of some kind of org17:36
mtaylorfog: cool. thanks17:37
* mtaylor learns new things17:37
mtayloranybody on with loom zen?17:40
tbyeCould an OS X 10.5.x user help me to uninstall the .dmg?  I need features in 1.2 and will be installing from the src tar.gz.17:40
tbyeIs there an uninstall procedure for the OS X dmg's?17:47
abentleymtaylor: It looks like your branch is already loomified.17:52
johnnytbye, not that i know about17:53
mtaylorabentley: so I loomified a branch (trunk) , then branched that branch to a new branch (new-trunk)17:53
tbyeI'm noticing on the wiki that "a one-touch uninstall" is listed as a missing feature. :-(  I'm looking through the package content to uninstall manually.17:53
mtaylorabentley: the new-trunk branch didn't show anything in show-loom17:54
abentleymtaylor: branching usually preserves the source format.17:54
mtaylorabentley: ok, so did I not get the loom as well because I hadn't done bzr record in the trunk branch?17:54
abentleyWell, I know about as much about looms as you do.17:55
abentleyBut I would assume branch only copies the traditional branch data, not the thread info.17:56
=== kiko-fud is now known as kiko
jelmerabentley: So is loom like git-style branching?18:01
abentleyjelmer: A bit.  The main thing is that it's an ordered list of branches.18:02
abentley(each called a thread)18:03
abentleyBut like git, the threads are all associated with a single repository and working tree.18:03
YasumotoHey guys. I'm trying to install bzr (and bzrtools) but am having some issues with the python2.5 bzrlib. "Please check bzrlib is on your PYTHONPATH."18:08
YasumotoI've been searching on google and trying to figure out how to fix my pythonpath, but I'm not having much luck18:08
jelmerabentley: Ah, thanks18:09
awilkinsHmmph, I'm getting a "Not enough space" error on some long line diffs18:27
mtaylorabentley: so do you know if there's a way to merge/pull or push all of the threads associated with a branch? because merge, etc. each seem to operate on the active thread (other than the first push to create a new branch)18:29
abentleymtaylor: No, I don't know that.18:29
* mtaylor is trying to figure out when to use loom and when to use different branches and stuff18:30
abentleymtaylor: I think for publishing purposes, looms aren't too hot right now.  Because you can't really ask people to pull or merge from a particular thread.18:49
mtaylorabentley: ok... so for now they're mainly good for work on my personal computer18:49
fullermdLooms are stored in the branch, so I could branch a loom'd branch [in the same repo] and blow away all the threads except the base?18:51
jdongI think there's some confusion looming about... urgh forget it too early in the morning to pun18:52
abentleyIt's always too early in the morning somewhere :-)18:52
Yasumotojdong: brutal, haha18:53
abentleyfullermd: I think that's not quite right.18:53
abentleyI think the last_revision for a loomified branch is set according to the *current* thread, not the *base* thread.18:53
mtaylorthat's what record does, right? set's last_revision?18:54
mtaylorso what exactly does that mean... does that set the revision up-to-which to branch if I branch from that branch?18:55
mtaylorbranch branch branch18:55
fullermdWell, what I was thinking (from glancing at the docs) is, the stack of threads is a single stack, so if I want to make a new one on top of the base unrelated to the others, I'd have to make a new branch of the base, and create on top of that, right?18:57
abentleymtaylor: No, IIUC, up-thread and down-thread set last_revision, not record.18:58
mtaylorso what does record do?18:58
mtaylorfullermd: that's how I understand it18:59
fullermdIt sounded to me like 'record' was sorta a 'meta-tag' on the state of all the threads at the given time.18:59
mtayloryeah - but since I can't actually sync the state of all threads at a given time to somewhere else, I'm confused19:00
* mtaylor hopes he doesn't sound too negative - he likes the overall concept, just is trying to figure out how to use it19:01
abentleymtaylor: I may be wrong that push/merge don't work, since the docs say they do.19:01
fullermdI think push/pull are supposed to, though lifeless did file a bug about bzr+ssh not doing so.19:02
fullermd(presumably, bzr and bzr+http as well)19:02
mtaylorahh.... so push and pull do the full loom, but merge is the thing that's just getting the currently active thread19:02
mtaylorlet me try that...19:02
mtaylorpush pushes the current thread into the current thread of the other branch19:05
mtaylorso I guess there's just a semantic issue of not being able to specify "I'd like to merge the thing this working tree is associated with to/from this other specific thing" and "I'd like to sync this loom to this other loom"19:07
abentleyfullermd: going back to your "unrelated threads" thing, uncommit and pull --overwrite provide ways to change a branch/thread into something completely unrelated.19:09
abentleyBut having unrelated threads defeats the point of looms.19:09
abentleyThe point being that this is an ordered set of branches, each building on the last.19:10
fullermdYeah, but I don't want to change, I want to have something else.  branch (AIUI) will branch the whole loom, not one thread out of it.19:10
fullermdSo I'd have to blow away all the threads other than the base in the new copy, if I want to make a new unrelated thread on top of the base.19:10
abentleyIf you have something, and you want something else, how can that happen unless you change something.19:10
fullermdI was verifying that all the loom info is located in the branch, so if I do that in a shared repo, it's not going to do anything to my original loom (which I still want to go on with for whatever it's currently doing)19:11
fullermdI don't want something else _instead_, I want something else _in addition_.19:11
abentleyRight, so you create a new thread, and then you change it into what you want.19:11
fullermdYeah, but I want that new thread in a different loom, because it's intended to be a new layer off the base, not depending on other threads in the current loom, nor having any of them depending on it.19:12
lifelessfullermd: hi19:12
abentleyfullermd: huh?19:12
abentleyIf you want the new thread to be in a different loom, you create it in the different loom.19:13
lifelessfullermd: the idea is that a loom is a single think working towards a feature X. Do you want this thread to be part of feature X?19:13
* fullermd doesn't think we're connecting...19:13
fullermdThe loom is in the branch entirely, right?  Nothing at all to do with the repository?19:13
abentleyfullermd: yes.19:13
lifelessfullermd: the loom is versioned, to allow collaboration19:13
lifelessfullermd: the versioning gets stored in the repo, but if you don't record it, then nothing goes into the repo19:14
fullermdWhen I "branch" a loom, I get a new loom that's a copy of the original?  Or do I get one with just the active thread?19:14
abentleyOh, I thought the versioned stuff was in the branch, too.19:14
james_whi lifeless, thanks for the loom plugin. I'll try and look at it this weekend.19:15
lifelessabentley: well, I didn't want to reinvent the wheel, it just uses a specific file id.19:15
lifelessabentley: rather like inventory does.19:15
lifelessjames_w: hi, cool.19:15
BasicOSXAnyone able to get loom working with1.3.0.dev.0? I submitted a bug on it, but thought I'd ask here19:21
abentleylifeless: Come over to the Storage dark side.  We have namespaces for you. :-)19:22
lifelessBasicOSX: its working for me :), whats happening for you19:23
lifelessabentley: yeah well :>19:23
lifelessabentley: what I've done as a new namespace would be wrong fwiw.19:24
BasicOSXlifeless:  needs to be in plugins/loom19:24
BasicOSXI did plugins/bzr_loom19:24
lifelessBasicOSX: thats right :)19:24
abentleylifeless: I don't know if you saw my response, but moving fetch is required to pass the bzr test suite, which expects fetch to be done before DivergedBranches is raised.19:26
lifelessfullermd: when you branch a loom, you get the last recorded loom19:26
lifelessabentley: ah!. So, I did merge your patch; but I think we should fix that in the bzr test suite, as its arguably wrong.19:26
abentleyI make no judgement about whether that expectation is sane.19:26
abentleyBut it even had a comment saying that was intentional.19:27
lifelessI can imagine why, I think we were smoking toenails.19:28
fullermdlifeless: So if I branch a loom, blow away all but one of its threads, then create a new thread in it, that will have no ties to the original loom that will affect it?19:29
lifelessfullermd: if the loom has been recorded, they will have a common ancestor19:30
lifelessand once my aroundtuit of hooking in 3-way logic is done, doing a pull back to the other branch will remove its threads.19:31
lifelessfullermd: lets step away from the machinery for a second, and have you tell me what you want to _achieve_19:31
abentleylifeless: You are doing source.repository.get_ancestry.  Am I reading this wrong, or is that a network operation?19:31
fullermdlifeless: OK.  I have a loom, say based on an upstream thread.  There's a thread on top of that with a change intended to go upstream 'sometime', and a thread on top of that with some local change I want depending on them.19:31
lifelessabentley: it is; theres a lot of room for improving looms to use our newer better apis.19:31
abentleylifeless: So I'm reasonably sure the test was based on the premise that such checks should be done on the local repository always.19:32
fullermdlifeless: I want to make some other change to send upstream, based on the upstream, but TOTALLY unrelated to any of that.  How do I make a new loom based on that upstream thread, with no relation to or effect upon the loom I have (which I intend to keep and keep working on by itself)?19:32
lifelessabentley: I think the assertion was about performance and not copying data twice; otoh I thinkmerging $private code to $public branch by mistake should error and -not- have inserted the data.19:33
fullermdThe obvious way to me is to branch the upstream thread, or failing that, branch the loom and whack those other threads in the new copy.19:33
lifelessfullermd: so two things here.19:33
lifelessfullermd: I don't expect 'trunk' to be a loom ever.19:33
lifelessfullermd: looms are a tool for folk preparing things for merging to trunk.19:34
lifelessfullermd: so if you have a loom from someone else, its because they are working on a feature X to go in trunk, and which you want to either use that feature, or collaborate on its development.19:34
fullermdI'm assuming that the upstream thread in this loom I'm working on is the only copy of the upstream I have handy.19:35
lifelessfullermd: now, if you want to do two things at once: develop a feature Y, not depending on X, and, use a version of the code that combines both X and Y.19:35
lifelessfullermd: have I got your use case approximately right ?19:36
fullermdHalf; I don't want the latter at all, just the former.19:36
fullermdDoing it now, I'd have branches A and B based on trunk, and C based on A.19:37
lifelessfullermd: so the use case is 'I have a loom containing trunk and feature X of a project; I want to develop a feature Y not related to feature X.' How do I do that ?19:37
lifelessfullermd: I'm not sure where C comes in, if my pithy version is right.19:37
lifelessanyhow, heres what I'd do:19:38
lifelessbzr init X; bzr nick trunk; bzr loomify; pull -r thread:trunk ../Y; bzr create-thread X; hack hack hack19:38
lifelessfullermd: if you map every branch to a thread, looms work best when there is a linear path rather than a graph, because the workflow is a compromise between infinite flexability, and pragmatic use.19:39
lifelessfullermd: that means if you have two branches you would not merge, you would keep them in separate looms19:40
lifelessfullermd: if you have a branch you'd merge into every feature branch, you'd slot it into every feature loom19:40
lifelessfullermd: one thing to think about is that better cherrypicking will make looms much more powerful.19:40
ubotuNew bug: #194099 in bzr "Unable to load plugin 'bzrloom' " [Undecided,New] https://launchpad.net/bugs/19409919:41
lifelessjames_w: when you say 'look at', do you mean package? :)19:41
fullermdHm.  Could "branch -rthread:trunk" work?19:43
lifelessfullermd: both branch -r thread: and pull -r thread: need some ui care19:44
lifelessfullermd: branch -r thread: should indeed give you a regular branch19:44
lifelessfullermd: and pull -r thread between two looms should pull a single thread not the entire loom.19:44
lifelessI think both of these are in TODO19:45
fullermdReasonable enough.  Thanks.19:46
lifelessfullermd: what do you think of looms so far ?19:47
lifelessmtaylor: merge is one of the things that is not fully implemented in looms19:50
lifelessmtaylor: if you wanted to do the work on it it should be fairly straight forward.19:50
lifelessmtaylor: and I'd be delighted to mentor19:50
lifelessmtaylor: what merge should do is add the loom being merged to the loom parents, which gives you essentially a merged working tree, for every loom in the stack.19:51
mtaylorlifeless: yes... that's the behavior I expected...19:52
lifelessmtaylor: then from the bottom up, if a fast-forward is possible on a single thread, do it, otherwise stop on that thread for the user to merge and commit, then go up to the next thread, etc19:52
lifelessmtaylor: and going up naturally merges as well, so some ui care is needed (or perhaps getting 3-parent trees is appropriate here).19:52
lifelessthe loom on disk has all the needed slots to handle this, so no formatting or serialisation stuff is needed.19:53
lifelessjelmer: you can use loom to do git style branching - ignore the record and up-thread/down-thread commands. Then just use 'bzr switch' and 'bzr merge -r thread:threadname'19:55
lifelessjelmer: but git-style branches are not versioned structures that can be merged and annotated; looms are. I see this as an ok, but natural tension.19:56
mtaylorlifeless: what if the merge just did the merge in each thread like you mentioned...19:56
mtaylorlifeless: oh, nevermind...19:56
mtaylorfingers went faster than head19:56
lifelessmtaylor: you are merging two things - the shape of the loom, and the content of each thread :)19:56
lifelessfredp: bzr st || echo 'changes' perhaps ?19:57
jelmerlifeless: Not sure I understand what you mean19:58
jelmerlifeless: Can't be merged and annotated?19:58
lifelesssabdfl: sorry, I was on the way to bed when I answered you; baz-import will create ghost-links appropriately.19:58
lifelesssabdfl: if you are within a shared repository, that will reuse history for you19:58
lifelessjelmer: the existence of a thread has history19:59
lifelessjelmer: so that I can branch you loom for (say) kerberos AD support; remove a thread, record, and when you merge me the removed thread gets removed.19:59
lifelessjelmer: but if you revert that thread back and record, subsequent merges from me will not remove the thread.20:00
jelmerthanks for the explanation20:00
jelmerit's still not entirely clear to me but I guess I should just try it20:00
lifelessjelmer: or in packaging, if debian and ubuntu both use a loom to package FOO, there will be an ubuntu thread debian don't want. so when debian merge ubuntu they discard that thread, and when ubuntu merge debian the first time after they revert to keep it.20:01
lifelessjelmer: uhm. git's list of branches is static. To combine them is a two-way operation. Looms is versioned, combining is three-way. Is that a better explanation ?20:01
jelmerlifeless: ahh20:01
jelmeryeah, makes more sense now20:02
lifelessso the goal of loom is to build upon this versioned history the ability to collaborate on the list of branches20:02
lifelesswhich only really makes sense if you have some particular thing you are collaborating on - e.g. packaging something, or a feature20:03
lifelessI often present loom as 'versioned queues'20:03
fullermdlifeless: Oh, my interest and questions are purely academic.  I don't really see anywhere they'd fit my uses.20:05
jelmerlifeless: So it's a bit like that mercurial feature people keep asking about?20:05
jelmermq or something?20:05
lifelessyes, loom is a superset of mq20:05
lifelessand of stacked git20:06
lifelessand quilt20:06
awmcclainIf I have a bzr branch at /foo, and I want add a level to the root directory (to make the branch look like /baz/foo), how would I do that?20:06
lifelessawmcclain: mkdir /tmp; mv /foo /tmp/foo; mv /tmp /baz ?20:06
awmcclainand then commit that back to the repo?20:07
lifelessoh, sorry, if this is al versioned files then:20:07
jelmerlifeless: nice20:07
awmcclainI want to do this all in the repo20:07
lifelessmkdir baz; bzr add baz; bzr mv <list of root paths here> baz; bzr commit20:08
awmcclaina ha!@20:08
lifelessawmcclain: I'm worried that you are conflating 'repo' and 'tree'.20:08
fullermdIs there some rich-root way of moving the actual rich root?  So potential merges could DTRT?20:08
awmcclainlifeless: I'm sure I am, I'm quite new. :)20:08
lifelessawmcclain: repositories do not version the list of branches or the shape of the repo.20:08
awmcclainPorting from SVN20:08
fullermdSomething like mtn pivot_root, I guess.20:08
lifelessawmcclain: ok, a major difference for you then is that branches are not versioned by the repo. branches record versions of trees.20:09
beunotheoretical question: I've got about 200 branches of different size and shapes. About 20 users branching them to their home folders (all on the same server). Would it make sense to have a shared repo on the top level?  Will it decrease performance?  Will file permissions collide among users?20:09
mtaylorlifeless: I'm about to go get on a plane, but I'll ping you next week about merges20:09
lifelessmtaylor: cool20:09
lifelessbeuno: I would let different users have their own repo; but it would probably work20:10
lifelessgot to run for a bit, I will be back in a couple hours20:10
awmcclainlifeless: Ah. So I should have said, "I want to change the structure of the tree within my branch"20:10
beunolifeless, that's the current setup. I was just wondering if it was worth having shared repos to save space.  Thanks.20:10
lifelessawmcclain: yes; that parsing unambiguously.20:11
lifelessgrammar bad mine :)20:11
* lifeless goes20:11
awmcclainOk, so I'm importing my SVN directory "panda" into my shared bzr repo as a new branch. I want the tree to look like panda_src/panda/, though. Do I branch the panda directory into the repo, then check it out, bzr add panda_src; bzr mv panda into panda_src, then bzr commit?20:26
olyhi, is there a way to check all my local files with remote ones and repull any that do not match20:58
olyboth versions say there the same, but some of my files are slightly different20:58
beunooly, bzr pull --overwrite20:58
thatcholy: bzr revert?20:58
olyokay, will give them a go and see where i end up, cheers :)20:59
lifelessawmcclain: two questions; have you considered just pull with bzr-svn ?21:19
awmcclainlifeless: That's what I was about to do... you mean pull rather than branch?21:20
lifelessawmcclain: secondly, when you say you want the tree to look like that, you realise that means that anyone making a new branch will have 'panda_src/panda' in the branch ?21:20
awmcclainlifeless: I guess I'm really confused about the notion of branches and trees then. Right now, my SVN directory structure looks like blah/blah/panda_src/panda blah/blah/panda_src/other_stuff ...  My thought was to split up my projects into branches in my shared repo.21:22
lifelessso you want a branch where the tree starts from the path 'blah/blah/panda_src/panda21:23
awmcclainHowever, I want my developers to be able to branch "panda_src" becuase the dev environment requires a directory above it.21:23
lifelessawmcclain: with respect, I suggest that you ignore that :)21:24
awmcclainSo: I could either "import" (using bzr-svn) panda_src and lop off the unneeded subdirectoriees21:24
awmcclainOr import panda and add a directory21:24
lifelessawmcclain: your current repository is structured so that either you have everything under panda_src versioned as one tree, or you have everything under panda_src/panda as one tree21:24
rysiek|plhi all21:25
lifelessawmcclain: so I'd worry about getting your history migrated cleanly. having to have a directory above seems like something very easily documented :)21:26
rysiek|plguys, I am having a serious problem here21:26
rysiek|plhere's the crashdum21:26
rysiek|plgenerally it's about "end of file reading from server."21:27
rysiek|plwhile the server is AOK (it's a bzr+ssh server and worked fine just a minute ago)21:27
awmcclainlifeless: So maybe it'd be better to just pull panda_src from svn, then trim off the unneeded branches in bzr?21:27
rysiek|plI need to get this up-and-running ASAP, any ideas what might be the cause?21:28
lifelessawmcclain: if you do that you will be carting around the unused directories in your history forever.21:31
awmcclainlifeless: exactly. :(21:31
lifelessawmcclain: which is why I wouldn't; I would just documented that you need to mkdir foo; bzr branch $URL foo/panda21:32
lifelessawmcclain: and file a severe bug that this has to be done and shouldn't.:)21:32
lifelessrysiek|pl: check your permissions21:33
lifelessrysiek|pl: mkdir is failing21:33
rysiek|plperms sez you21:33
awmcclainlifeless: Unfortunately that doesn't help me, since makes another step every time I branch... and the whole reason I'm switching is to encourage everyone to branch.21:33
awmcclainlifeless: I'm not worried about losing history on this so much21:33
lifelessrysiek|pl: also, consider upgrading to bzr 1.2 ;)\21:33
lifelessawmcclain: well you can add the directory inside the tree after you've got everything converted21:34
rysiek|plyeah yeah, as soon as it gets into Debian and Ubuntu repos ;)21:34
lifelessawmcclain: as previously documented21:34
lifelessrysiek|pl: for ubuntu there is a ppa we maintain21:34
awmcclainlifeless: Ok, that's what I thought originally. :)21:34
awmcclainlifeless: Thank you so much for the help.21:34
lifelessno probs21:35
awmcclainAny suggestions for the standard distributed workflow? When do you decide to backup your local feature branch?21:36
rysiek|pllifeless: hummm... any hints which file/dir should I check?21:37
lifelessawmcclain: I don't back up branches; I publish them ;)21:37
lifelessrysiek|pl: .bzr/branch/lock and .bzr/repository/lock21:37
rysiek|pllifeless: I have a script that sets-up proper perms, and I run it everytime I do a bzr ci21:37
rysiek|plok, checking, thanks21:38
rysiek|pllifeless: on server-side, right?21:38
awmcclainlifeless: When do you decide to publish your local feature branches to a central, backed-up location?21:38
lifelessawmcclain: For many things I use launchpad; generally I push early push often21:39
awmcclainOk. Great! Again, thank you so much. It really helps new users when there's a good community. It's one of the reasons I chose bzr over hg.21:42
rysiek|pllifeless: humm... it's rwxrwxrwx now... and still same thing21:46
rysiek|plthe lockdirs exist21:48
rysiek|plshould I delete them?21:48
lifelessrysiek|pl: it may be trying the wrong path21:48
lifelessrysiek|pl: no21:48
lifelessrysiek|pl: you shouldn't need to be chmodding or touching the inside of .bzr at all21:48
lifelessrysiek|pl: perhaps the path you are using is wrong21:48
rysiek|plthat would be most strange, as - as I said - few minutes before it worked21:48
lifelessrysiek|pl: what url are you pushing to21:48
rysiek|plit got saved in the bzr settings somewhere, so you need to tell me how to check it21:49
lifeless'bzr push' will show it21:49
rysiek|plbut won't it push my rev to the server?21:49
lifelesswhat operation is failing21:50
rysiek|plbzr ci21:50
lifelesswhatever operation is failing is doing it on a url21:50
lifelessok; bzr info then21:50
lifelesswill say where it is a checkout of21:50
lifelesshow did you get the checkout - did you do 'bzr checkout' ?21:51
rysiek|plbzr ci the_path21:51
lifelessand what was the_path21:51
rysiek|plthere you are21:51
rysiek|pl"serwek" is one of the machines on ma LAN21:52
rysiek|pland there is a corresponding entry in /etc/hosts21:52
lifelessand the branc is in /var/bzr ?21:52
rysiek|plI did a bzr up *minutes* before trying to do a ci that failes21:53
rysiek|pllifeless: ^^^21:54
rysiek|pllifeless: and it went AOK21:54
lifelessrysiek|pl: thats because its write permission that is failing21:54
rysiek|plah, right21:55
lifelesscan you do bzr info -v bzr+ssh://server/var/bzt/ypdf21:55
rysiek|plloading, please wait ;)21:57
rysiek|pllifeless: http://www.wklej.org/id/08520be45821:58
rysiek|pllifeless: and made by root@serwek: http://www.wklej.org/id/8ec066476922:00
rysiek|pllifeless: any pointers?22:09
rysiek|pllifeless: and how do you know it's related to mkdir? I can't seem to find it in the dump22:09
lifelessrysiek|pl: File "/usr/lib/python2.5/site-packages/bzrlib/transport/remote.py", line 213, in mkdir22:15
lifelesstry doing 'ssh serwek mkdir /var/bzr/ypdf/.bzr/branch/lock/test'22:16
lifelessalso ssh serwek cat $$HOME/.bzr.log22:17
lifelessmay give more diagnostics22:17
rysiek|plworked AOK22:18
lifelesswhat filesystem is /var/bzr/pdf on ?22:18
rysiek|pllifeless: wouldn't cat ~/.bzr.log be shorter? ;)22:18
lifelessrysiek|pl: you need to expand it on the remote server22:18
lifelessrysiek|pl: as the user the bzr serve process is invoked as22:19
rysiek|plyou're right22:19
rysiek|pllifeless: .bzr.log22:20
lifelessthats got no record of commands running22:21
lifelessare you sure its the entire thing?22:22
lifelessI have to go for a bit; back in < 3022:22
rysiek|plyeah, it's the whole thing22:22
rysiek|plin the mean time I'll try to update bzr on the server22:23
Le-Chuck_ITAHi all22:27
Le-Chuck_ITAhow do I revert a bazaar branch to a given version?22:27
rysiek|plman bzr? :)22:29
rysiek|plbzr revert -r NUMBER22:29
Le-Chuck_ITAthis is not the right time to work :)22:29
luksrevert as in change files as they were in that revision, or make a branch of that revision?22:29
Le-Chuck_ITAsorry for dumb question22:29
Le-Chuck_ITArevert takes an argument, oh yes ::()22:29
Le-Chuck_ITAI just want to get back to rev n xxx22:30
Le-Chuck_ITAand I was obviously missing the -r switch22:30
Le-Chuck_ITAI am too tired22:30
luksthen you probably want uncommit22:30
luksor bzr branch -r X22:30
rysiek|plLe-Chuck_ITA: no prob22:30
luksrevert will change your working files22:30
luksand then you can commit those changes22:30
Le-Chuck_ITAyes but I just copied them so I won't care - I need to test if a previous release really did what I remember22:31
luksI'd make a new temporary branch then22:31
Le-Chuck_ITAyes I did tha22:31
igcmorning all22:32
igchi jelmer22:32
Le-Chuck_ITAigc: where are you ?22:32
igcBrisbane, Australia22:32
jelmerigc: I was just curious whether the fast-import stuff is faster than bzr-svn's svn-import and if so, how?22:32
Le-Chuck_ITAso good morning igc22:33
igcmorning Le-Chuck_ITA22:33
lifelessjelmer: I doubt it will have the right ids ;))22:33
igcjelmer: I'm yet to compare to be honest22:34
jelmerlifeless: well, I'm mainly interested in stealing ideas from it22:34
lifelessigc: whats the interface fast-import exposes? does it capture renames?22:34
jelmerigc: Ah, so the bzr side of it doesn't have any specific optimizations?22:34
igcjelmer: yes, the bzr side is optimised to my current ability :-)22:34
igcI know lifeless and others could go further of course ...22:35
igcbut there's enough 'tricks' in there already22:35
igcjelmer: the code that might be of interest is called revisionloader.py22:36
igcthat's where most of the time is saved over vanilla bzr importers22:36
lifelessigc: what does it do that is different, and is it _correct_ ?22:37
=== kiko is now known as kiko-afk
igclifeless: the fast-import stream spec does include renames22:37
lifelessigc: and empty directories? symlinks? file copies?22:37
igcit caches serialised inventories & skips a check for existence mainly22:38
lifelessigc: you've found a new toy; I want to find its edges :))22:38
igcoh - there *are* edges22:38
igcright now though, my immediate focus is solving the OOo into Bazaar dilemma22:39
igcI'm down to 100 commits in around 2 minutes but ...22:39
lifelesswow, registering a registered branch is fugly22:39
lifelesspage long traceback22:39
igcthat still implies a 12 days conversion22:39
lifelessigc: you using packs ?22:40
igcof course22:40
lifelessigc: some things22:40
lifelesshold a write lock the entire time22:40
igcinventory.copy takes 20%22:40
lifelessif you can, do a single write group for say 100 commits22:41
igcI'm pretty sure I'm holding one write lock as suggested22:41
igcby default, it's one write lock for 10000 commits :-)22:41
lifelessif you're using commit builder that won't be possible at the moment22:41
lifelessone write lock for the entire operation, don't drop it at any point.22:41
igcthere's a command line param to tune that though22:41
lifelessinventory.copy - yeah. use my journalled inventory format (kidding!)22:42
igcI'm really looking forward to it after these last 2 weeks on this project22:43
igci.e. the migration project22:43
igclifeless: all the work you did on commit has been essential for making import faster of course22:44
igcI'm not quite gaim to skip some of the checks though for data from a foreign source22:44
igcs/gaim/game/ :-)22:44
lifelessigc: thanks22:48
=== cprov is now known as cprov-out
ja3igc: just to be clear, a write group is different than a write lock23:01
=== ja3 is now known as jam
jamyou would hold a write lock for the whole time23:02
igcjam: doing that23:02
ubotuNew bug: #194161 in bzr-loom "up-thread, down-thread and switch are slow" [High,Triaged] https://launchpad.net/bugs/19416123:06
rysiek|pllifeless: update to bzr 1.1 on the server solved the problem23:47
rysiek|pllifeless: I must have gotten some update of bzr on the desktop lately, and that broke desktop<->server communication23:48
rysiek|pllifeless: thanks for your help :)23:48
eric_programmerI'm trying to understand the support for nested trees. Some docs on the websites says it is still in development while other docs say it was included in release 0.15rc1.23:53
eric_programmerI have an existing branch. I want to import another project as a directory in this existing project.23:54
eric_programmerI tried "bzr branch http://other/project other_project"  This worked but it says other_project is unknown when I do bzr status and I cannot add it to make it known. Am I misunderstanding something?23:55
lifelesseric_programmer: the disk format is supported; but the ui for it is unpolished23:57

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