/srv/irclogs.ubuntu.com/2010/04/01/#bzr.txt

TresEquisDebbieWork: branch /proj/brA -> /proj/brAdev, hack on brAdev, comit (lather, rinse, repeat);  then "push" brAdev->brA when ready00:01
spivGood morning00:01
TresEquisfor extra bonus points, brA can be "bound" to a remote branch, so when you push brAdev -> brA, it also pushes to the remote branch00:02
DebbieWorkTresEquis: Ok, that sounds the most straightforward.  And do heavyweight chekouts @ remote locations?00:04
poolieGaryvdM: no, just delayed for silly reasons, should be out today00:06
GaryvdMpoolie: Ok - understand.00:07
TresEquisDebbieWork: the "bound" branch (/proj/brA) can be a checkout of the remote branch00:10
TresEquismaking it "heavyweight", and inside a share repo, makes it possible to unbind if needed (e.g., while disconnected)00:12
DebbieWorkTresEquis: Sure thing.  But @ my local box, that's remote to the source repo's origin, I'd *checkout* to my local machine, typically, right?00:14
DebbieWorkThis sentence: Let's start by saying there is nothing you can do with a Checkout that you can't do with plain Branches. A Checkout just enables different defaults and workflow helpers.00:14
DebbieWorkhas me trying to figure out the which/when bits ...00:14
TresEquischeckouts work by default like SVN / CVS00:14
TresEquisyour commits get pushed to the remote server, and you have to be up-to-date to commit00:15
TresEquisyou might check out the workflows doc:  http://doc.bazaar.canonical.com/bzr.2.1/en/user-guide/bazaar_workflows.html00:15
DebbieWorkTresEquis: Yah, saw that.  I can image using any/all of them :-/  I'm hoping to use what's typical in CivicSpace/Drupal land, so I can chat with them about stuff.  Hoping emmajane will be able to share a comment/recommendation or two.00:17
igcmorning00:18
DebbieWorkTresEquis: @ #drupal I just learned that Drupal.org is "moving to git", but for my purposes, I don't think that matters at all.00:18
igcTresEquis: it's not easy to run 'make html' in a given directory inside Explorer yet00:20
DebbieWorkTresEquis: Given your example, "then "push" brAdev->brA when ready"  What would you typcally do, e.g., when it's time to publish to the web?  publish brA directly? Or 'branch brA brAprod' and publish brAprod?00:20
TresEquisigc:  I was looking to hack on the tools / commands stuff to make it easy.  I just want to know where to start looking, rather than having to read the whole BE codebased00:21
igcTresEquis: you can configure "local application" tools though so one option is to try writing a script that changes directory there before running 'make html' say00:22
igcTresEquis: ah - ok00:23
TresEquisDebbieWork: remote server as the "canonical" / published branch and working dir;  locally, I make a "heavyweight checkout" if it in my shared repo, then branch from the checkout for development00:24
igcTresEquis: lib/extensions/tools.py is the core of the tool support00:24
TresEquisI can commit to the dev branch without touching the published side00:25
igcTresEquis: see https://code.edge.launchpad.net/~simon-kersey/bzr-explorer/add-bzrexec-tool/+merge/22522 for a nice patch to improve things00:25
TresEquiswhen I "push" inside my dev branch, it updates the heavyweight checkout, which in turn pushes to the remote server00:25
TresEquisigc: thanks -- I didn't see code there to interpret command line, tc.00:25
igcTresEquis: I'll hopefully review that patch today00:25
igcTresEquis: hmm - why are you expecting to interpret the command line?00:27
DebbieWorkTresEquis: Bingo! That makes sense, and does what I think I want!  And I didn't even have to make sens asking for it ;-)00:27
pooliehi igc00:28
TresEquisigc:  I want to figure out how the %(foo)s expansions are done00:28
TresEquise.g., to add new names if need be00:28
TresEquisfor instance %(pool)s resolves to a file:///.... URL, which can't be passed to commands like 'cd'00:29
igcTresEquis: see lib/app_suite.py00:30
igchi poolie00:30
TresEquisigc:  thanks00:30
DebbieWorkDinner-time!  Thanks everybody! Helped a lot :-)00:31
* GaryvdM -> bed. Bye all.00:32
TresEquisnight all00:33
bendjAfter commiting changes in a checkout, what't the right way to delete the checked-out directory, if I don't want it around anymore?  Just 'rm -rf' the dir? Do I need to do a 'bzr remove' or 'bzr remove-tree'?01:03
spivbendj: just rm -rf01:04
bendjspiv No need to tell it's parent repo (if I've checked out into a shared repo for example ...) about the removal?01:05
bendjOops, its.01:05
spivbendj: nope01:05
bendjGreat, thanks.  Confusing keeping track of what's keeping track of what!01:05
pooliehello spiv01:07
pooliei'm going to start cutting 2.2b101:07
spivpoolie: yay01:12
poolieactually i really am01:12
pooliebut it will help me concentrate if you can clear the new bugs01:12
spivOk01:12
pooliethanks01:13
bendjI've got a shared bzr repo containing multiple branches & checkouts.  If I want to update to all the latest sources, I can certainly enter each branch/checkout and pull/update/whatever.  Is there a *single* command that can update everything to the most current?01:18
fullermdThere's a multi-pull command in bzrtools.  It's basically the moral equivalent of `find . -is-a-branch | xargs bzr pull`01:23
ctrlsoftfullermd: the /moral/ equivalent?01:25
fullermdWell, immoral equivalent, maybe.01:25
bendjfullermd Got it.  Took me a minute to figure out its an addition plugin ...  Is that typically the approach used for "assembling" a project for final-publication ( a book, a website, whatever) from numerous, disparate sources?01:33
bendjAgh! it's01:34
bendj(always bass-ackwards!)01:34
pooliewow launchpadbugs (used by check-newsbugs) is strange01:36
pooliewhich is https://bugs.edge.launchpad.net/bzr/+bug/35498501:43
ubottuUbuntu bug 354985 in bzr "check-newsbugs.py LaunchpadLoginError" [Low,Confirmed]01:43
ctrlsoftpoolie: strange in what sense ? :-)01:47
ctrlsoftcheck-newsbugs should probably be ported over to launchpadlib now, it's more widely available01:47
poolieyes, it should be01:48
pooliejust the object proxy abstraction in eg /usr/share/pyshared/launchpadbugs01:49
pooliefor a moment i expected this had been ported to use the api01:49
wgrantpython-launchpad-bugs predates the API by quite a while.01:49
pooliemm01:49
wgrantAny remaining users of it are wrong.01:49
poolieand was probably very useful before it existed01:50
poolieright, that bug says we should move away from it01:50
wgrantRight.01:50
pooliei wonder if its ubuntu package description should be updated01:50
wgrantIt should probably be removed from Lucid.01:50
wgrantOnly two packages depend upon it, and they both also use launchpadlib.01:50
wgrantAnd fixing that for five years isn't going to be fun.01:51
pooliek01:51
pooliebum de dum "please wait"01:51
pooliewgrant: but it would need upstream changes to detangle those packages?01:54
wgrantpoolie: Well, upstream for both is Ubuntu, but yes.01:54
pooliewell, https://bugs.edge.launchpad.net/ubuntu/+source/python-launchpad-bugs/+bug/552953 if you want to say your piece01:55
ubottuUbuntu bug 552953 in python-launchpad-bugs "launchpadbugs should be deprecated or removed from launchpad" [Undecided,New]01:55
poolietitle corrected01:55
wgrantubuntu-qa-tools should be easy to port -- it already mostly uses launchpadlib. bughelper will be harder, since it doesn't yet. But that might indicate that it's mostly abandoned.01:56
pooliejelmer, lifeless, it would be interesting, maybe next week, maybe in belgium, to look at making looms fit with jelmer's named branch work02:10
ctrlsoftpoolie: yeah02:17
TresEquisigc: I was able to get my new command type added02:28
TresEquisjust pushed the branch to LP and proposed a merge02:28
igcTresEquis: cool. I'll take a look later today02:29
TresEquisthanks for the pointer02:29
TresEquisBTW, I couldn't figure out how to run the tests02:29
igcTresEquis: no problem02:29
eydaimonhow can I see the current revision number?02:29
Methsbzr revno02:29
eydaimonbzr log | head? is there an easier way?02:29
eydaimonok, thanks02:30
TresEquisit might be good to have a HACKING file which tells how02:30
igcTresEquis: Explorer don't really have any tests currently02:30
TresEquisok, then I don't feel guilty for not adding any ;)02:30
igcTresEquis: the current HACKING page is http://doc.bazaar.canonical.com/explorer/en/development.html02:31
fullermdHeck, you added tons of 'em.  At least doubled the previous total.  Maybe tripled  ;p02:31
TresEquisthat page needs a "Running the Tests" link, once it is relevant ;)02:31
igcyes :-)02:32
* igc back in a few hours02:45
poolielifeless, where does the python-testtools in the pqm chroot come from? the testtools ppa?02:50
lifelessthe sysadmin archive02:57
poolieoh of coursne03:00
pooliebut as a custom backport from lucid or karmic?03:00
lifelessno idea sorry03:09
DebbieWorkping emmajane04:12
emmajaneDebbieWork, what's up?04:13
DebbieWorkemmajane: Hiya!  Folks in here said I shoud ask you :-)  Have a question about using bzr with CivicSpace/Drupal layout ...  Can bzr do this:04:14
DebbieWork(sec, typing ...)04:14
emmajaneDebbieWork, errr I'm not sure how useful I'll be. It's pretty late here. :)04:14
DebbieWorkcan it, or should it?04:17
DebbieWorkemmajane: bzr init-repo ./TOP_DIR; cd ./TOP_DIR; brz branch DRUPAL_BZR_REPO ./myDrupal; cd ./myDrupal; bzr branch MY_FILES ./sites/mySite04:17
DebbieWorkWhat I'm trying to do , of course, is put together my drupal site tree from multiple branches, and manage it as one.04:17
DebbieWorkemmajane: Just looked up!  Sorry, if it's late -- np!  Another time.04:18
emmajaneI keep all sites as completely unique branches.04:18
emmajaneyou mean the /sites folder, right?04:18
DebbieWorkemmajane: Yah, the /sites folder.  How do you include them in the Drupal install tree, then?  symlink?04:19
emmajanei.e. I'm not sure what the advantage would be of merging www.example.com with www.foo.com.04:19
emmajanejust a sec04:19
DebbieWorkemmajane: Nah, I'm only talking about one site (for now).  Just trying to understand how best to separate the branch pulls of drupal source and my files ...  Seems like it should be two separate branches.04:20
DebbieWorkDon't know how to embed one branch UNDER another, since the /sites folder needs to be UNDER the drupa site install 'top'04:21
emmajaneDebbieWork, this is how I do it: http://www.flickr.com/photos/emmajane/4480852752/04:21
emmajaneI remove /sites from the drupal folder and then symlink that back in04:22
emmajaneI don't version drupal core.04:22
emmajaneI let CVS take care of that for me.04:22
emmajanewhen I'm hacking on core then I hvae that in a totally separate place from my live sites and I put core (but not sites) under version control.04:22
emmajanehttp://horncologne.com/content/nice_server_setup_helps_streamline_upgrades that's sort of what I do.04:23
emmajane(as far as the directory structure goes)04:23
emmajaneeven sites I don't really put under version control though. Just themes.04:23
emmajane(but I'm not a module developer)04:24
emmajanei.e. I *only* version the stuff I will be editing.04:24
DebbieWorkemmaja Cool!  Thanks for the reference, too!  So when you CVS up your core, you've an ignore set for the symlink?04:25
emmajaneCVS ignores symlinks by default IIRC04:25
emmajaneCVS is stupid. :)04:25
pooliehello emmajane04:25
poolierebooting, biab04:25
emmajaneDebbieWork, I also don't CVS up core.04:25
emmajaneI download a new version and adjust the symlink.04:26
emmajanethat's why there's drupal5.22 and random other older versions kicking around.04:26
emmajane(also: yes, i ought to be shot for not upgrading my D6 installation)04:26
DebbieWorkemmajane: Hehe!  Actually, I'm debating CivicSpace, or going with Pressflow (Just found that! Neat!) and rolling my own.  Pressflow maintains in/with bzr, Iiuc.  Same principle applies, I guess.04:27
DebbieWorkAlthough I'd like to follow the Pressflow repo.  Thinking of some variation of  http://xdeb.org/node/124904:27
emmajaneI don't have the capacity to follow links. :)04:28
emmajanesorry. too tired.04:28
DebbieWorkemmajane: Np!  You've been a help already :-)  That link is ""Bazaar workflow for developing Drupal based web sites".  Talks about multiple branching levels of Pressflow source, source+modules, source+modules+customizations etc.04:30
emmajaneif you're just deploying drupal you probably don't need to worry at that level.04:30
emmajanepoolie, hey :)04:32
DebbieWorkemmajane: I'm w worrier! :-)  Lots of grey hair, doncha kno ;-)  Anyway, I just got lost in all the options bzr presents.  Really helpful to get your take on it.  Seems that there are countless discussions about how to stage Drupal/CivicSpace/etc, but few best-practice recommendations.  That I've found anyway.04:32
DebbieWorkemmajane: Hoping your book (which will arrive tomorrow, I hope :-D) will help with same on the themeing end of things!04:33
emmajaneDo you know the term "bike shedding"? ;)04:33
emmajaneI say: put the stuff you edit under version control and get on with life. :)04:34
* emmajane is a minimalist though.04:34
DebbieWorkemmajane: "Bike shedding".  Ha!  My brother in law has a big one.  Chock full of old motorcycles.  But I get your point :-)04:36
SamB_XPthe point is arguing about what color to paint it ;-)04:36
SamB_XPyou can even do that after you already made a bikeshed, IRL ;-P04:36
emmajane:)04:37
fullermdWhat's to argue?  Turquois, obviously.04:37
DebbieWorkHm, since 'stupid' CVS nicely ignores symlinks, I'll presume that 'smarter' bzr doesn't.  Does it follow symlinks and version-control the file under them, or simply version control the link itself?04:39
emmajanebed time for me.04:39
fullermdThe link itself.04:39
emmajaneDebbieWork, g'luck with everything. :)04:39
DebbieWorkThanks :-)04:40
DebbieWorkemmajane Nighty nite!04:40
DebbieWorkfullermd: Is there an option to follow the link?  I've found requests in '08 for that capability, but haven't found a resolution yet.04:40
fullermdNot AFAIK, no.  That would get into all sorts of icky questions about what to do when it points outside of the branch, frex.04:41
poolieok so i'm going to pull a bit more on lazy command loading04:42
fullermdWhat a coincidence.  I was going to go be lazy a bit more on pull command loading.04:42
pooliesince that is paged in04:42
DebbieWorkfullermd: K, good point I suppose.  Anyway, good to know. Thanks.04:42
* Tak agree @ turquoise04:47
SamB_XPwait a minute, someone just mentioned bikeshedding in a #haskell-unaffiliated channel?05:13
* SamB_XP didn't realize that before ;-)05:13
lifelessSamB_XP: http://haskell.bikeshed.com/05:14
Takbikeshedding predates haskell05:15
poolielifeless: istm .testrepository should be ignored?05:38
lifelesspoolie: yep05:39
igcback06:09
pooliehey igc06:20
igcpoolie: it might be good to announce 2.1.1 and 2.0.5 today06:28
poolieigc, yes, i think so06:28
pooliei think in general it would be good to announce the whole bundle of releases together06:29
igcpoolie: also, I'd like to find out why the website build script is failing06:29
pooliebut in this case there is too much of a gap between them06:29
igcI just tested it here and it worked fine for me06:29
pooliemaybe it's a python2.4 thing06:29
igcmaybe06:29
igcI guess we can guard against that field not being here and continue working06:30
lifelesspoolie: so, as discussed yesterday, a call now ?06:31
pooliegive me a couple of minutes to file this rt06:32
lifelesssure06:33
poolieigc: works06:41
igcthanks06:42
pooliewell, "doesn't crash" :)06:42
igc:-)06:42
igcpoolie: hmm, the developer blog isn't rendering at all06:43
igcpoolie: so maybe it's a firewall thing accessing that location?06:43
lifelesspoolie: ring when you're ready06:45
pooliesomeone else called; ok06:46
lifelessheh06:47
poolieigc, it says "fetching data from bazaarvcs....."06:49
igcpoolie: it's weird06:52
vilahi all !07:16
igchi vila!07:37
lifelesswow http://xkcd.com/ today08:09
nlisgowhats your preferred comparison tool for the mac? I just discovered FIleMerge08:11
vilalifeless: history navigation ftw ! (up and down arrows work :)08:18
jszakmeisteranyone here familiar with the bzr-email plugin?08:33
vilajszakmeister: better ask your question anyway, familiar depends on the area your question is related to...08:40
pooliehello vila08:40
vilahey poolie !08:40
bialixhi poolie08:40
jszakmeisterI'm just trying to understand some of the documentation for bzr-email.  In one section it says:08:41
jszakmeisterThe URL of the branch is determined from the following checks (in order):08:41
jszakmeister - If the configuration value 'post_commit_url' is set, it is used.08:41
jszakmeister - If the configuration value 'public_branch' is set, it is used.08:41
jszakmeister - The URL of the branch itself.08:41
jszakmeisterHow does it determine the URL of the branch itself?08:41
jszakmeisterAnd I'm curious about why no emails get sent for push by default?08:43
jszakmeister(I think I want to enable them, but I'd like to understand the philosophy behind it more before making that decision). :-)08:44
jszakmeisterAnd, I have one more: in the docs it says "if not supplied defaults to the email address reported08:45
jszakmeisterby ``bzr whoami``" but is that of the person doing the commit?  Or is that the ``bzr whoami`` of the hosting provider?08:45
jszakmeister(In my case, Apache)08:46
poolieon the last one, it would be whereever the plugin is actually running08:48
poolieisn't bzr-email normally client-side?08:48
jszakmeisterI dunno. :-)  This is the first time I've ever looked at it. :-)08:49
jszakmeisterHow do you ensure that an email always gets sent with a commit to a public branch then?08:50
pooliehttp://doc.bazaar.canonical.com/bzr.dev/en/admin-guide/hooks-plugins.html08:52
jszakmeisterHeh.  Wonder how I missed that?  I'll take a look at one of the other alternatives. :-)08:53
lifelesspoolie: jszakmeister bzr-email can be client or server side08:55
jszakmeisterI was just looking at that again, and getting ready to ask that question. :-)08:56
lifelessno emails on push by default because if installed client side that results in emails on commit and then on push08:56
jszakmeisterAh.08:56
jszakmeisterMakes sense.08:56
lifelesson a server side install you want it set to send on push08:56
jszakmeisterHow is this typically configured server-side?08:58
jszakmeisterVia the branch.conf or through locations.conf?08:58
lifelessyes08:59
jszakmeister?09:00
jszakmeisterIs one preferred over the other?09:00
lifelessnot really09:00
lifelessup to you09:00
lifelessif one was preferred,t he docs would say so :)09:00
jszakmeisterDoes the branch.conf follow the branch when cloned?09:01
lifelessno09:01
jszakmeister(or at least some of it's settings).09:01
jszakmeisterOkay.  So I don't need to worry about things propagating unexpectedly. :-)09:01
igcpoolie: what branch did 2.2b1 come from? lp:bzr/2.2 is 6 weeks old09:04
jszakmeisterI think I need to look at that a little more.  I'd like to avoid having an admin go and configure a branch every time a new one shows up (which kind of points to using locations.conf), but...09:04
poolieigc i'm confused why there would be a 2.2 branch09:05
poolieigc, also, my merge to 2.2 bounced because of a python2.4 issue, i think09:05
jszakmeisterthen I don't want to have to edit the locations.conf by hand every time either.  Screams for a script to help me.09:05
igcpoolie: not sure. I recall jam asking for one09:05
igcpoolie: also wrt the website, I think we should just revert index.html for now09:07
igcand disable the build.py script from running09:07
igcpoolie: we an sort out the feed issue after you get back from leave09:07
igcs/an/can/09:07
poolieok i'll do that now09:08
lifelessjszakmeister: you could do locations.conf, though we don't supoprt bzr:// soft chroots all that well in there09:15
lifelessjohnf posted something about this a while back, I think09:15
lifelesscheckt he bzr-email bugs perhaps?09:15
jszakmeisterI'll take a look...09:17
jszakmeisterBTW, what does "soft chroots" mean?09:17
lifelessinside bzr serve09:17
lifelesswe don't use the disk url for branches09:17
lifelesswe use a chroot:// url, which normal path traversal can't break out of09:18
lifelessonly code that explicitly unwraps it can - so it enforces configuration of writable/accessible roots09:18
lifelessbbiab09:18
jszakmeisterAnd that's a problem because it may affect how the branch is looked up in locations.conf?09:23
lifelessyes09:23
lifelessI don't remember what johnf did to deal with this09:23
jszakmeisterOkay.  I'll search around a bit... the initial searches haven't turned up anything though.09:24
* igc dinner09:46
lelithi all, does bzr allow giving access only to particular subtree of a repository, ala svn? I'm going to do a complete switch from svn to bzr, and I'm currently looking for the best fit10:26
bialixno10:26
lelitok, thanks10:26
bialixyou have to put every subtree into separate branch10:26
awilkinsOr put up with it and arrange your build system to cope with it10:27
awilkinsThere are still advantages to atomically versioning co-dependant packages10:27
bialixboth scmproj and bzr-externals has support of snapshots for achieving this goal10:28
lelitawilkins: not sure I understand... what I need is to give only a subset of my "whole thing" to some other developer10:28
bialixlelit: split your whole thing into components10:29
awilkinslelit, Then that needs to be in a separate branch10:29
lelitthen of course my "build system" (and deploy) take the whole thing into consideration10:29
lelitok10:29
bialixand then assemble the whole thing in similar fashion as with svn:externals10:29
lelitah10:29
bialixlelit: you may find bzr-externals plugin very useful for this10:30
lelitdidn't know about bzr-externals (this will be my first serious use of bzr...)10:30
bialixthere is also scmproj10:30
bialixbut it seems people like bzr-externals more10:30
lelitok, thank you10:30
bialixlelit: if you don't like to use command-line, then bzr-externals will be the best choice10:31
lelitanother simple doubt: I'm a darcs guy, and am wondering about its interactive "commit" feature; I know about the shelves, but is there some kind of wrapper/plugin that simplify its usage?10:33
lelitbialix: that's not a problem for me10:33
bialixlelit: check interactive plugin10:33
lelitgreat10:33
bialixshelve has support of using external editor to edit hunks10:34
bialixI find this very cool10:34
=== mrevell is now known as mrevell-lunch
=== mrevell-lunch is now known as mrevell
=== nlisgo_ is now known as nlisgo
jmlcan I set submit branch for a branch on the command line?16:06
IslandUsurperjml, `bzr merge --remember`16:07
IslandUsurperor maybe push --remember16:07
IslandUsurperno, push branch is different from submit branch16:08
=== Mantrid1 is now known as Mantrid
gustavonareaHello, I'm trying to migrate a couple of HG branches to Bazaar, but I'm getting the following error: http://pastebin.com/A6CaLXfM16:26
gustavonareaThis is how I got there: http://pastebin.com/V5YAV4Yb16:28
gustavonarea"cleanup" is a clone of "trunk", and it has ~100 revisions which haven't been merged into trunk16:29
=== IslandUsurper is now known as IslandUsurperAFK
bialixdo you have shared repository there?16:30
gustavonareabialix: no, I set them up with "bzr init bzr-trunk" and "bzr init bzr-cleanup"16:30
bialixthen execute following in the parent dir of bzr-trunk: bzr init-repo .16:31
bialixthen: cd bzr-trunk; bzr reconfigure --use-shared16:31
bialixdelete bzr-cleanup; bzr init bzr-cleanup16:31
bialixthen try again last fast-import16:32
gustavonareabialix: will try that16:32
bialixbzr fast-import --import-marks=initial-trunk-raw-frontend.marks cleanup.fi bzr-cleanup/16:32
gustavonareabialix: http://pastebin.com/7UTA5WtS16:37
gustavonareamaybe i should start it all from scratch, using a shared repo?16:37
bialixmmm, you can16:37
bialixbut it seems there is bug16:37
gustavonareayes16:38
bialixgustavonarea: can you try again with fresh shared repo, and don't create bzr-trunk / bzr-cleanup branches manually16:38
bialixjam: can you suggest something about this traceback?16:38
jambialix, gustavonarea: other than knowing that there is an open bug on bzr-fastexport wrt "_find_ancestors" I don't really have an answer16:39
bialixoops16:40
gustavonareabialix: you mean some thing like "bzr init-repo bzrrepos; cd bzrrepos; bzr init trunk; bzr init cleanup" ?16:40
bialixgustavonarea: without last two `bzr init xxx`16:42
bialixbut as jam said there is open bug16:43
gustavonareabialix: ok, i'll try that16:43
bialixmaybe you need to downgrade fastimport plugin16:44
gustavonareabialix: that wouldn't be a problem -- what version/revision should I use?16:46
bialixthe one as in the Karmic16:46
gustavonareaok, i'll downgrade it16:48
bialixgustavonarea: ask in the bzr ML as well about fast-import issues. Author of fastimport is igc, he's in the AU timezone16:54
gustavonareabialix: good idea; thanks :)16:54
* bialix disappears16:59
maxbgustavonarea: Have you considered using bzr-hg instead of bzr-fastimport?16:59
maxbAlso, I know there's a bug in bzr-fastimport concerning marks export/import. I mean to try to fix it at some point.17:00
gustavonareamaxb: not really, although there's no special reason, it's just that fast-import seems like the recommended method. I just want to convert all our Mercurial branches to Bazaar once and get rid of Mercurial. Is bzr-hg suitable for this?17:01
maxbI believe it is, though, I think it currently lacks support for importing mercurial tags properly. However, this should be trivially fixable afterwards even with a 10 line shell script, as the Bazaar revision-ids assigned are based on the hg hashes with a static prefix17:03
maxbSo basically you'd just turn the .hgtags file into a series of 'bzr tag' commands using trivial text manipulation17:04
=== salgado is now known as salgado-lunch
maxbOne bonus with bzr-hg is that there's no need to manipulate marks files, nor reprocess the common history for every branch17:07
gustavonareai wouldn't mind doing that if everything else works. Do you know of any pointers to start with? I couldn't find documentation in the branch, and http://wiki.bazaar.canonical.com/BzrForeignBranches/Mercurial and http://doc.bazaar.canonical.com/migration/en/foreign/bzr-on-hg-projects.html don't offer much information17:07
maxbAnd if you discover an extra hg branch later that was left behind, it will be easy to import17:07
hazmatanyone know how to work around a pycurl cert error with bzr-svn .. ala http://gist.github.com/35199617:07
gustavonareamaxb: it seems like I can simply do "bzr branch my-hg-branch bzr-branch" -- am I right?17:08
maxbYes, it really should be that simple :-)17:09
gustavonareamaxb: whoa, I'll definitely give that a try then! Thank you17:09
maxbThe tags should be fixable post-import with:  cat .hgtags | while read sha tag; do bzr tag -r revid:hg-v1:$sha $tag; done17:15
maxbAnyone: Is 'bzr qlog' totally broken on Lucid at the moment?17:17
=== deryck is now known as deryck[lunch]
=== salgado-lunch is now known as salgado
MvGInvestigating qbzr issue from bug #544928 with current bzr.dev, I find BZR_PLUGINS_AT doesn't work for me: within the plugin dir, running ``BZR_PLUGINS_AT="qbzr@$PWD" ../bzr.dev/bzr help'' prints usage instructions and "error: invalid command 'help'". Same for any other command. Did I miss something, or is this a bug in this great new feature?18:04
ubottuLaunchpad bug 544928 in qbzr "qlog fails with a special combination of PyQt4 and Qt" [Critical,Confirmed] https://launchpad.net/bugs/54492818:04
MvGIs there any other way to override a per-site qbzr setup?18:06
=== IslandUsurperAFK is now known as IslandUsurper
ctrlsoftjam: hi18:15
ctrlsofthazmat: hi18:15
hazmathi ctrlsoft18:15
maxbBZR_PLUGINS_AT?18:16
hazmathi jam, i was curious if you could send your loggerhead cache plans out to the bzr list18:16
ctrlsofthazmat: can you work around that error by using svn+https://18:16
ctrlsofthazmat: pycurl doesn't support self-signed certificates afaik18:16
jammorning18:17
MvGmaxb: Yes, as documented in NEWS, from bug 82693.18:17
ubottuLaunchpad bug 82693 in bzr "want to run tests in a particular plugin without installing it" [Wishlist,Fix released] https://launchpad.net/bugs/8269318:17
=== deryck[lunch] is now known as deryck
jamhazmat: I can. I was hoping that *somebody* would give feedback before I send it to the primary list18:19
hazmatctrlsoft, cool, thanks that did the trick18:21
ctrlsoftjam: it looks like the inventory is the most significant slowdown in imports18:39
ctrlsoftjam: InventoryDirectory.children in particular18:39
ctrlsoftjam: is there anything I should/should not do?18:39
jamctrlsoft: 'most significant slowdown in imports'. Meaning when doing a conversion, the time spent seems to be in ID.children gathering18:41
jammy guess...18:41
jamany directory with > 200 children is going to page in all of the CHK pages18:41
jamto get whatever subset it has18:42
jam(one of the side effects of using 255-way hash mapping is that all children end up on random pages.)18:42
jamAnyway, what are you doing with ID.children?18:42
jampath2id checks?18:42
jamid2path checks?18:42
ctrlsoftjam: comparing the children between the base inventory and the contents of a new tree in git18:42
jamctrlsoft: you don't get a delta from git?18:43
ctrlsoftjam: no, though I'm working on making dulwich produce a delta18:43
ctrlsoftby comparing the base tree and new tree in git rather than comparing the base inventory from bazaar and the new tree from git18:43
ctrlsoftthat seems to have a *significant* impact18:44
jamID.children is known to be pretty bad in chk18:47
jamas mentioned above18:48
jamessentially, ID.children for a moderately sized directory will load the whole inventory18:48
ctrlsoftjam: right, which is pretty bad in this case :-)18:48
ctrlsoftI just changed the algorithm in bzr-git and now I can import 3k kernel revisions in 700 seconds18:49
jamso, for bzr, the data is sorted by file_id18:49
jamso you can generate the delta by file_id much faster than by directory18:50
jamIf you need to do it by dir, then it is going to probably be slow18:50
jamInventory.iter_changes(other_inv) should be pretty fast for CHK18:50
ctrlsoftexcept I don't yet have other_inv, that's what I'm trying to create :-)18:51
jamctrlsoft: you just have a tree?18:51
jamyeah, so the data layout in git is by path, the data layout in bzr is by file_id18:51
ctrlsoftanyway, I'll try to eliminate more uses of ID.children - thanks for the hints18:52
jamcomparing the two is generally going to be O(tree)18:52
jamso doing deltas in the same format whenever possible is a good idea :)18:52
ctrlsoftyeah, looks like it :-)18:53
=== radoe_ is now known as radoe
ctrlsoftjam: so it's faster to do path2id(path) than parent.children.get(name) ?19:24
jamshould be19:25
jambut I'm not positive if we've actually improved it19:25
jamit also depends19:25
jamif we've already loaded children, then obviously the latter is faster19:25
ctrlsoftjam: but if I can avoid ID.children otherwise?19:26
ctrlsoftjam: then path2id will be faster?19:27
jamSo we can answer path2id without having to load the actual inventory objects19:42
jamI don't know if we actually *do* yet19:42
jambut we have a index specifically on path => id19:43
bendjThe examples @ 'bzr ignore --help' provide two different options (http://pastebin.com/Taqi035Z) for the same goal ("Ignore .o files under the lib directory").20:40
bendjDo those two _really_ do the same thing?20:41
maxbOne is a glob, the other a regular expression. I would imagine that is what the examples are demonstrating20:43
TresEquisPython turns the glob into a regex under the covers for you20:50
bendjmaxb: ANy hints as to where the use of "RE:" is actually documented?  I'm searching the latest/en/user-reference/... docs, and have yet to find it.20:59
bendjah, nm ... under "Patterns" ...21:00
ctrlsoftjam: thanks21:35
ctrlsoftjam: removing all ID.children references sped up the imports a lot21:35
ctrlsoftjam: the main bottleneck now is add_inventory_by_delta()21:35
jamctrlsoft: my main guess is the inefficiency is that we have do deserialize the old stuff repeatedly, since we get new CHKInventory objects that don't know about the old ones21:36
=== ubuntujenkins__ is now known as ubuntujenkins
ctrlsoftjam: well, I'm quite happy with the improvements so far21:42
ctrlsoftjam: combined with some cache fixes this should bring down the kernel import time from > 4 months to ~5 hours :-)21:43
jam that is fairly significant :)21:43
idnarheh21:47
=== salgado is now known as salgado-afk
jardernAnyone have experience with TortoiseBZR on WinXP64?22:42

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