/srv/irclogs.ubuntu.com/2012/08/17/#bzr.txt

quotemstrSay I have a loom. What's the best way of merging the loom into the parent branch while erasing all the history, making each thread in the loom a single commit?07:51
quotemstrI could just generate patches and apply them manually.07:51
mgzmorning08:06
quotemstrWhy would anyone want to use loom instead of pipeline?08:08
thumperlooms came first...08:08
quotemstrNeither allows you to associate a thread/pipe/patch with a message, though.08:10
quotemstrIs it possible to convert a branch to an init-repo branch without cloning all over again?08:15
mgzquotemstr: depending on what you mean by that, yes, see `bzr help reconfigure`08:17
* thumper wants a command to turn a stand-alone branch into a shared repo and move the branch to a named directory08:20
thumperdon't suppose that exists yet?08:20
quotemstrAh, I see.08:20
quotemstrWhat's the difference between bzr branch in a shared repository, then, and bzr checkout?08:21
mgzread http://doc.bazaar.canonical.com/latest/en/user-guide/core_concepts.html08:22
mgzthumper: it's not hard to do that, just in a couple of steps08:22
mgz`mv branch name; bzr init-repo branch; mv name branch/name; bzr reconfigure --use-shared branch/name`08:23
thumpermgz: similar to what I do now :)08:26
thumpermgz: I was hoping for one command :)08:26
mgzfeel free to submit one for merging :)08:31
mgzyou'd need to be a bit careful over checking that the location really is just a plain branch, moving repos around is one of the easier ways to lost revision history08:33
quotemstrOkay, so I had two branches in a shared repo, trunk and test.09:08
jmlany lp:udd devs around?09:08
=== mrevell_ is now known as mrevell
quotemstrI deleted test with rm -rf, and now most bzr operations complain that the directory that used to contain test is no longer a branch.09:08
quotemstrBut test was a branch of trunk. Why should trunk know about test or care that test's been deleted?09:09
quotemstrHuh. trunk is now a checkout of test? When did that happen?09:11
mgzjml: who are those mysterious creatures?09:16
mgzquotemstr: check back through your .bzr.log to see if you like09:16
jmlmgz: anyone who can tell me how to land https://code.launchpad.net/~james-w/udd/binary-scanning-series/+merge/11924809:17
mgzjml: it's changed recently, poke vila09:17
mgz(if by merge you also mean deploy, otherwise it's just push to the branch, no?)09:18
quotemstrmgz: Ah, I didn't know about that file. Thanks.09:18
jmlmgz: so there's no gatekeeper ala pqm?09:19
mgzjml: nope, just merge locally, run tests (hah) and push09:20
mgzreally needs to be deployed at the same time though, otherwise the skew from what's actually being used vs trunk becomes painful09:21
mgzand because the test aren't great, so breaking sooner while people still remember the mp is best.09:21
mgzquotemstr: you know how to change trunk back to a normal branch, right?09:22
jmlmgz: I'm sorry, but I don't think I can take responsibility for that.09:23
mgzjml: I see vila did update README_DEPLOYMENT after doing the quantal chroot stuff09:23
mgzjml: well, I'm not really sure who should. I can do it, but if things blow up you and james will still be the ones we coming crying to.09:25
jmlmgz: that's fine by me.09:27
mgzokay. want me to merge and push to, or have you done that?09:28
quotemstrmgz: Too late. I just puled again.09:28
quotemstrmgz: pulled, even.09:29
quotemstrIs it possible to tell bzr to use hard links _by default_? Some commands that branch internally don't provide a top-level hardlink option.09:29
mgzquotemstr: that works fine too, shared repo so apart from constructing tree again doesn't really hurt09:29
mgzhardlinks aren't a win when using a shared repo.09:30
jmlmgz: I'm still trying to figure out how to run the tests.09:30
jmlmgz: lot of dependencies, no obvious list of them or means of acquiring them.09:30
quotemstrmgz:For me they are. A branch with hard links takes 4.4 seconds. A branch without hard links in a shared repo takes 10.4 seconds.09:32
mgzjml: that is a good point09:32
jmlmgz: 'ImportError: cannot import name LAUNCHPAD_API_URLS'09:32
jml    from bzrlib.plugins.launchpad.lp_api import LAUNCHPAD_API_URLS09:32
jmlmystery meat bzr.09:33
mgzheh, that's a recent change on trunk, aaron updated the launchpad plugin to expect a newer launchpadlib version09:34
mgzand apparently udd is getting vars from launchpadlib via the bzr plugin...09:35
jml\o/09:36
mgzah, it does have a comment so is for (semi) sensible reasons (launchpadlib had the api stability of a not very stable thing), wants updating though09:38
jmlmgz: cool. you right to do that?09:39
mgzyeah, I'll take that one.09:39
jmlmgz: thank you09:42
mgz...is there any reason to support any older launchpadlib anyway? we control the versions...09:47
vilajml: apart from lp, james_w introduced other tests dependencies which I don't remember from the top of my head and that are not installed (nor easy to install on jubany), caveat emptor09:47
vilajml: i.e. test cannot be run on jubany09:47
jmlvila: what makes them hard to install on jubany?09:48
mgzhave 1.9.12 on jubany, will making 1.6 the minimum break anything for you jml?09:48
jmlmgz: pretty sure not.09:48
* jml checks09:48
jmllaunchpadlib = 1.10.209:48
jmlwe're laughing.09:49
vilajml: usual china wall09:50
jmlvila: oh. hmm.09:50
jmlvila: what are your thoughts on buildout?09:50
vilajml: no first hand experience, almost only bad reports though :-/09:51
jmlvila: heh.09:51
jmlvila: my thesis is that Python packaging is terrible in pretty much every way.09:51
jmlvila: so it's simply a matter of choosing your means of execution.09:52
jelmerjml: debian packaging of python stuff, or the wide range of packging available for python?09:52
vilajml: oh, also, I'm now part of jfunk's team (since monday)09:52
jmljelmer: deploying Python services with dependencies09:52
vilajml: regarding test deps, the consensus was that the bzr-package-importer package should add them as build deps09:53
jelmerjml: ah, ack on that09:53
jmljelmer: so, every available option, including Debian packaging09:53
jmlwhich is great until you want to have more than one service on a machine, or want to be able to update a dependency without a week-long lead time.09:54
jmlvila: is lp:udd deployed as a package on jubany?09:55
vilanope, as a branch09:55
jmlvila: what's the bzr-package-importer package used for?09:55
vilatrack the other dependencies :)09:55
vilalp:udd is not packaged to the best of my knowledge09:56
vilaI needed *something* to keep track of the deps and install test setups09:56
jmlvila: so b-p-i is installed on jubany?09:56
jmlvila: or is it just for dev envs?09:56
vilajml: installed in the quantal chroot, I don't think it's installed on jubany (precise) itself09:57
jmlvila: and the actual service runs from the chroot?09:57
vilajml: all jobs running in the chroot are started from the crontab (see lp:udd), that lefts the apache web server running on precise09:58
vilaand the tmp reapers09:58
jmlvila: thanks09:58
jmlvila: so, will you no longer be maintaining lp:udd once you move to jfunk's team?09:59
vilaand that's not that bad to be able to say that in 3 IRC msgs ;) Far from an automated deployment, but...09:59
vilajml: yes, I moved last Monday09:59
jmlvila: yeah, definite improvement in deployment :)10:00
jmlvila: I asked that question with a negative, so your answer confused me :)10:00
* jml tries the positive construction10:00
vilaargh :)10:00
jmlvila: Are you still maintaining lp:udd?10:00
vilajml: no10:01
jmlcheck.10:01
jmlvila: who is?10:01
vilajml: lp  maintenance team10:01
jmlvila: thanks.10:02
* vila wonders if he should have answered 'no' to the negative...10:02
vilaDo you still beat your wife ?10:02
mgzyes!10:02
vilaha ! Said the single ! :)10:02
jmlvila: at chess? quite comprehensively10:02
vilahehe10:03
jml"Have you stopped beating your wife?" is the traditional formulation.10:03
vilaha right10:04
jmlHmm. I guess lifeless is the person to talk to re longer term udd maintenance plans then.10:04
vilajml: jam has a kanban card about moving jubany to wepobs10:05
jmlvila: ah cool. I might approach him, since we have quite a lot of friction with our udd deployment that's currently maintained by them.10:06
vilajml: hopefully I addressed a lot of the pre-requisites, apart may be pushing my b-i-p branch but the history there is pretty boring anyway ;)10:07
jmlvila: yeah. the main issues are that packages are a really error-prone way of managing dependencies. (there's a long lag with updates, it's difficult to get the exact versions used on prod, upgrades bypass the regular automated testing process, if your machine is shared then things can randomly break because someone else upgraded a version, etc.)10:09
jmlvila: and that lp:udd (well, our deployment especially), doesn't give a whole heap of visibility as to what it's doing through the web10:10
jmlwhich doesn't matter so much when you've got shell access10:12
vila"really error-prone way", not sure, in the lp:udd case, the only strictly required branch is lp:udd, everything else can use the quantal packages (see my last mail in the udd ML)10:12
jmltoday10:12
vilajml: on jubany, installing from sources wasn't an option for xz-utils for example as this isn't a dev machines and the dev packages are not installed...10:13
vilajml: but yeah, lack of visibility is an issue as is the need to issue commands on jubany10:14
vilato fix imports10:14
viladeploying new versions is another story10:14
jmlvila: we still use packages for non-Python dependencies.10:15
vilafor lp:udd ?10:16
jmlno, for pkgme-service, txpkgme and libdep-service10:16
vilaha10:16
jmlwe're in the middle of migrating to buildout.10:17
vilaoh10:17
vilawhy not juju ?10:17
jmlwe don't like it very much, but we like everything else less10:17
jmlvila: why juju?10:18
vilaway of the future ? Allows a single story for dev/test/prod ?10:19
jmlvila: That would only solve the 'many services, one machine' issue if IS were willing to have one archive per service. It would still mean that developers would have to use different packages to the ones in production, since people aren't given general access to the 'cat' archives.10:19
vilajml: I found a way: chroot with a dedicated PPA ;)10:20
jmlvila: and it wouldn't address the multi-day -- sometimes multi-week -- lag that we get when updating package dependencies.10:20
jmlvila: not allowed to deploy from PPAs in production.10:20
vilajml: allowed in the jubany chroot10:20
vilajml: don't get me wrong, I'm not arguing *against* you,10:20
vilabut either juju is the preferred way and each service runs in its own isolated machine where a PPA is allowed or it's far less interesting10:21
jmlvila: I still see juju as very interesting, even when using something like buildout or virtualenv for dependency management10:21
vilaright, my point is more about: if it's isolated devs should be able to deploy specific packages10:22
vilaand get rid of the delays10:22
vilait's a bit ironic to run end-to-end tests and then wait for deployment...10:23
vilamay be ironic is not the right word...10:23
jmlvila: quite possibly.10:24
jmlvila: "silly"? "pointless"? :P10:25
vilaand having isolated machines (1 service by machine) addresses the issues of package compatibility10:25
mgzokay, stopped fiddling and did that udd/launchpadlib change: <https://code.launchpad.net/~gz/udd/require_launchpadlib_1.9.0/+merge/120132>10:25
jmlmgz: LGTM10:26
vilaof course devs are supposed to submit their patches upstream or to ubuntu and converge as fast as possible to the standard packages (which is what I had in mind with the pristine-tar issue)10:26
jmlvila: I always find such patches more convincing when they have been deployed and been known to work :)10:27
vilajml: isn't it ?10:27
vilaThat's one more reason to allow devs to deploy them to demonstrate their patch is working no ?10:27
jmlyes.10:27
* vila feels better :)10:28
vilalunch break10:28
jml:)10:28
javehello10:43
javeI have a bzr project where files mysteriously seems to have vanished10:43
javehow can I figure out what happened?10:43
javeheres the project: http://bzr.savannah.gnu.org/lh/emacs/xwidget/files/head:/leim/quail/10:43
javeand a missing file is latin-post.el10:43
mgzjave: looks like it exists in the branch <http://bzr.savannah.gnu.org/lh/emacs/xwidget/annotate/head:/leim/quail/latin-post.el>10:49
mgzdo you mean your local branch doesn't have the file?10:49
mgztry looking in your .bzr.log (see `bzr version` for the location) for 'latin-post.el' to see what's happened to it recently10:50
javemgz: yes, it doesnt exist in my local copy10:51
mgzso, `bzr status` should tell you the current state vs the last committed revision, but the .bzr.log output may be more useful (if it was bzr that touched the file rather than say, a mistake in the make clean or something)10:53
javeI get:10:53
jave[11406] 2012-08-17 00:01:14.716 INFO: missing leim/quail/latin-post.el10:53
jave[11406] 2012-08-17 00:01:14.717 INFO: deleted leim/quail/latin-post.el10:53
jave 10:53
mgzand that's under a 'commit' command?10:54
jave[11406] 2012-08-17 00:01:14.607 INFO: Committing to: /home/joakim/current/build_myprojs/emacsnew/allbranch/my-working-copy/xwidget-bigmerge2/10:54
jave0.182  Selecting files for commit with filter None10:54
jave 10:54
javeIf I understand the log format at all10:54
mgzright10:54
mgzso, something (not bzr) removed the file, then you committed the change without noticing10:55
javeokay10:55
javehmm10:55
javehow can I get out of this mess?10:55
mgzcan fix by bringing the file back and committing10:56
javeshould I just checkout again from my upstream?10:56
mgzor if it's a change you haven't pushed anywhere and don't care about, just uncommitting10:56
javerecently ive only merged from upstream trunk10:57
javeanh probably not pushed to the public branch10:57
javethe files arent touched by build command afaics, so something more serious must have happened like a disk failure during copy or something. so, ill probably just checkout from the savannah branch and discard this broken branch10:59
javeanyway, thanks.10:59
mgzjave: so, the simple fix is `bzr revert -rbranch::parent leim/quail/latin-post.el && bzr commit -m "Restore accidentially deleted latin-post.el file"`11:01
mgzwhich is always safe11:01
mgzbut if you're not sure whether you might have other broken changes, and don't have any important changes you've not pushed back yet, then just restoring the branch to the trunk state is fine too11:02
javemgz: theres a large number of files mising11:04
javeso I would like to revert to a known sane state11:05
mgzright, that does sound like the best option11:05
javeand just hand pick any relevant local changes11:05
mgzyou can cherrypick merge from your broken branch to a fresh one11:05
javeyes11:06
mgzhm... qt4-x11 was the last thing out of the queue and it's in again... thought the issues over pending packages were fixed12:26
=== deryck is now known as deryck[lunch]
=== deryck[lunch] is now known as deryck

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