/srv/irclogs.ubuntu.com/2011/02/18/#bzr.txt

pooliehi spiv04:30
spivHi poolie.04:30
pooliehi vila!06:55
vilapoolie: hey ! (Almost there ;)06:55
vilapoolie: I will submit a first config interpolation today (limited to the same file to start with), I just need to polish the docs06:56
vilasame file means you can't have {xxx} defined in a file and interpolated in another06:57
vilabut that will be enough for the package-importer for example06:57
lifelesswhat do you mean by interpolation here?07:13
poolievila, http://people.canonical.com/~mbp/kanban/vila-kanban.html07:18
poolielifeless, i think he means variable expansion07:18
lifelessah07:18
lifelessit might be better to refer to that, and document it as that07:19
lifelessjust a thought07:19
vila'that' ?07:19
vilaoh variable expansion ?07:19
vilahmm, we aren't consistent about 'variable' vs 'option' when referring to configs, I think we should commit to 'option' and update the docs (most of the code if not all use 'option' already)07:20
vilapoolie: so, it's better than I thought, what is missing is some bugs related to the docs (brz-website and/or bzr-all-docs)07:22
vilano big deal but those are ones I07:22
vilad like to get rid of today07:22
vilathen there are the pending bugs still assigned to me07:23
poolievila, do you have an example of one of those bugs07:23
pooliei'd like to work out why they're missing07:23
vilabug #716450 and the answer is: it's not assigned to me ;D07:24
ubot5Launchpad bug 716450 in bzr-website "doc.bazaar.canonical.com updates are not automatic" [High,Confirmed] https://launchpad.net/bugs/71645007:24
vilaand filed against the wrong project on top of that ;) It should be bzr-all-docs IIRC07:25
poolie:)07:25
vilathere is also bug #716123, already landed but you asked for some more tweaks there07:27
ubot5Launchpad bug 716123 in Ubuntu Distributed Development "web page should tell where to get the source" [High,Fix released] https://launchpad.net/bugs/71612307:27
vilaand then there is 'repair-repo' which should be a wip somewhere07:27
poolievila, i doubt i'm going to get to it today (and maintain familial happiness)07:27
vilathis one may overlap with Eric's mp I should check that too07:28
poolieso could you perhaps help jelmer unblock his two pending mps?07:28
vilaget to what ?07:28
vilaand please maintain familial happiness, fundamental underlying assumption that should never be violated ;)07:28
vilapoolie: the hook ones ? Didn't I already approved them ?07:29
vilajelmer: just ask ;D07:29
vilalifeless: what's wrong with interpolation ? I thought it was a pretty standard term for replacing a reference by its value, how do you call it otherwise ? (my query is about english not technic)07:31
lifelessvila: do you mean taking something like 'lp:$USER/foo/bar' and replacing the $USER with the value of the option USER ?07:32
vilayup07:36
vilaexcept it will be lp:{USER}/foo/bar07:37
poolieif we're going to this, let's be sure to use that style consistently everywhere07:37
poolieeven beyond configs07:37
vilayup07:37
lifelessvila: so, thats generally referred to as variable expansion, or macro expansion07:38
vilait's already used by bugtracker and mergetools, difftool needs to be fixed07:38
lifelessor substition rather than expansion07:38
vilaha right I like substitution better, but what does interpolation refer to then ?07:39
lifelessI've never (until now) seen it referred to as interpolation - interpolation (to me) is a mathematics technique07:39
lifelessyou can generate a curve for some data points by interpolation07:39
pooliei have seen it called interpolation07:39
poolieyou're inserting the contents of the variable into the string07:39
lifelessextrapolation is when you try to go beyond the edges of the data set07:39
vilaso, in my mp I introduce a config.interpolate(string), using substitute there... sounds.. weird07:40
pooliehowever i agree that is an uncommon word for it07:40
vilaconfig.expand sound better 8-/07:41
lifelesshuh07:42
lifelesshttp://en.wikipedia.org/wiki/Variable_(programming)#Interpolation07:42
lifelesshowever, the page has no references :) !cite07:42
vilaha ! Right, I got it from perl (99% sure)07:43
vilasingle quotes don't interpolate, double ones do07:43
pooliei think 'variable substitution' is a pretty clear unambiguous name07:44
vilapoolie: config.substitute isn't clear though07:44
vilaexpand_refs ?07:44
vilastill, 2,840,000 hits from google for 'variable interpolation' is a sign that it's not that unusual...07:45
vilaand s/variable/option/ anyway07:46
vila. o O (Or should I just use variable and get a new empty name space for free ;-)07:47
vilaconfig.get_variable ftw ?07:47
vilano more compatibility problems :D07:47
lifeless7M for variable expansion07:48
vila7M ?07:48
lifelesssale for variable substituion07:48
lifelessvila: count of google hits07:48
vilaha !07:48
lifeless700000007:49
vilaso config.expand, and 'option', deal ?07:49
poolieexpand_variables or something07:52
poolieis there a bug for this?07:52
vilaHmm, I don't remember07:52
vilaIt's one item in the config doc in devnotes, it became the most urgent one for me in the package importer context07:53
poolieoh i see07:54
pooliehow?07:54
vila1) testing locally requires a couple of additional tweaks, 2) mthaddon filed a bug asking for the log files to be in a configurable dir07:55
vila3) abentley proposed  a mp adding cruft around config POLICY_ which I want to get rid of07:55
poolieand you want to use one variable to set the importer base, and then to have others relative to that?07:55
vilaexactly07:56
vilaand probably using a p-i specific config file07:57
poolieok07:59
vila4) implement {nick} handling so I can use 'bzr push' in looms with a 'push_location=lp:~{launchpad_username}/{project}/feature-{nick}' or something07:59
poolieit's good to add07:59
poolieit doesn't seem really on the most direct route, but hopefully it's pretty cheap07:59
vilapoolie: ?08:01
pooliewell, it's not strictly needed for getting udd going08:03
pooliehowever, it should be a small change, and i can see it being useful elsewhere08:03
pooliedo you see what i mean?08:05
vilagiven that I'm testing on a lucid-based setup before deploying to an hardy-based setup and that I want to make *ultra* sure I don't push to lp by mistake, having a single point to check and guarantee that makes testing bearable again (and I don't even mention being ready to get rid of ssh access...)08:05
vilas/that makes/that, makes/08:06
pooliehm08:07
pooliei guess we should separate the configuration out of the tree?08:07
vilayes, and make sure we don't need to create lp_creds.txt in every test branch too08:10
vilaand so on08:10
vilathere *are* easier short terms fixes but I'd rather implement long term ones before we migrate08:11
vilababune switched to jenkins http://babune.ladeuil.net:24842/ \o/09:58
pfarrellI love how bzr diff can use meld .. it's really sexy. I have a quick question: is it possible to get bzr to open all the diffs in meld at once (meld can diff trees of files), rather than open up meld once for each changed file?10:33
=== Meths_ is now known as Meths
jelmerhttp://asset.soup.io/asset/1171/4343_1de6_400.jpeg14:35
=== deryck is now known as deryck[lunch]
vilajelmer: :-D16:20
vilajelmer: by the way, do you need help with your hook mps ?16:34
jelmervila: Yeah, that'd be great. I'm not entirely sure what needs to change, and it'd be great to finish that work.16:43
vilajelmer: AIUI, the pt1 is ok to go, introducing a central registry can be done as a further submission16:46
vilajelmer: the other one just need some doc and that should go in doc/en/user-guide/hooks16:47
jelmervila: Thanks, I'll land the first and update the second!16:59
vilago go go ! LD16:59
* jelmer also *finally* has coffee. There shouldn't be any more dodgy MPs today17:00
Takcoffee? you're well into beer time!17:00
jelmerheh, depends on where you are I guess :)17:01
=== deryck[lunch] is now known as deryck
jelmervila: oh, I see jam beat me to your config-expand-options branch17:22
vilajelmer: the more the meyer (mayor ?) ;)17:22
jelmermerrier?17:23
fullermdmeilleur?   :p17:23
vilafullermd: yeah meilleur but you don't say that in english17:26
fullermdWell, I don't say it in French either.  Not so's you could understand anyway...17:26
* vila bangs head, vbox is randomly killing vms , 3 times in a raw it killed the one I was working on while also killing a babune one it was supposed to properly shut down :-(17:32
=== abentley_ is now known as abentley
knighthawkAm I the only one finding the Eclipse plugin extremely buggy? Like I can't even do an update.18:52
maxbWhich eclipse plugin? bzr-eclipse or qbzr-eclipse ?18:56
knighthawkhuh I *think* bzr-eclipse which is the lease buggy?19:04
knighthawkleast19:05
knighthawklest19:05
knighthawkyeah least19:05
maxbAh. In my experience bzr-eclipse is just nowhere near finished to an acceptable level of polish19:09
maxbqbzr-eclipse is much nicer, but doesn't integrate tightly with eclipse for most things - instead it's some minimal eclipse integratation to make it easy to call out to qbzr to do stuff19:10
knighthawkthanks maxb, I'll give qbzr a try. bzr-eclipse isn't working at all really.19:11
maxbIt's a shame. MercurialEclipse is incredibly good - except for the bit that then I'd have to use Mercurial :-)19:12
lifeless:)19:14
knighthawklol - @ maxb - yeah I *just* moved our shop over to bazaar and if I can't figure out an eclipse solution I afraid we may be moving over to mercurial or worst (IMHO) git.19:19
knighthawknot that git is bad, just I don't want to have to work with it.19:19
lifelessso the qbzr developer is pretty active19:19
lifelessqbzr-eclipse its intended to be lightweight and mostly just driving qbzr19:20
maxbqbzr-eclipse is currently the best Eclipse/Bazaar solution that I am aware of. It's kind of the only one.19:20
lifelessthere can be only one19:20
lifelesswait, wrong movie.19:20
knighthawklol19:20
knighthawkI'll give it a try today. but what i need is a tool that will work more or less like the bzr-svn plugins so developers that won't bother to learn the difference can still checkin / update19:21
knighthawkmy core team has been learning bzr and working fine with bzr-explorer on all three platforms (Linux, McOS, Win)  but we have developers outside of my team that need access to the repos. my other options is some kind of bzr-svn bridge but that scares me.19:23
maxbknighthawk: You mean "like the Eclipse svn plugins" ?19:24
knighthawkmaxb, right. sorry19:27
maxbRegrettably I don't think there is any true Eclipse Team plugin for Bazaar that's actually worth using. bzr-eclipse is an idea not carried through to completion, whilst qbzr-eclipse is good, but a different way of working19:28
knighthawkwe all use Eclipse (or some sort of Eclipse derivative like Zend Studio or Demandware Studio)19:28
lifelessfirst thing is to try qbzr19:29
lifelessfirst thing is to try qbzr-eclipse19:29
lifelesssee if its capable of doing what you need19:29
lifelessfailing that talk to guilermo19:29
knighthawkyeah my fear is that is going to push us to hg (now that I've convinced them that we need a DSVC)19:29
knighthawkso far my team likes qbzr-eclipse *way* better (I haven't had a chance to look yet) but they aren't really the audience I need to accept it.19:33
axeldI'm relatively new to bzr, and have a problem with pending merges - does anyone have a little time to help?21:29
axeldI'm using bzr with a SVN backend, after I pulled the latest changes (via "up"), my local commits were converted to pending merges21:30
axeldso far so good21:30
axeldBut my local files are now changed again, and neither push, nor dpush find anything to push21:31
axeldIs there anything I can do besides trying to redo the local commits again?21:31
maxbaxeld: You can't push your local commits whilst they are *pending* merges - you need to commit them first21:34
axeldmaxb: but how? If I do a "bzr commit", it seems to want to commit all changes at once21:34
maxbYes21:35
maxbThe change history remains there, in the merged commits21:35
axeldHow does that work with the SVN backend?21:35
maxbAlthough, hmm, if you want it directly visible on the svn mainline, that won't quite do what you want21:36
axeldThat was what I was aiming for21:36
maxbI'm a little confused, because you said you pulled with "up", yet you ended up with pending merges.... are you working in a local branch or a checkout? Perhaps paste 'bzr info' ?21:37
axeldIt's on another machine -- anything particular you're interested in?21:38
maxbwell, whether it's a checkout or a branch, mainly21:38
axeldIt shows the same address for "checkout of branch", "push branch", and "parent branch"21:39
axeldLocation: checkout root: .21:39
maxbAh, when you make a local commit, you do 'bzr commit --local' ?21:39
axeldExactly21:39
axeldHas this changed recently, or did I setup the repository differently this time?21:40
maxbI don't think anything has changed recently21:40
maxbRight, so if you want your local commits linearized, you need to use rebase, not update21:41
axeldCan I setup bzr always to do local commits, and only push manually?21:42
axeldAnd how do I rebase?21:42
axeld(after an update, that is)21:42
maxbTo always commit locally, change your checkout into a branch with 'bzr unbind'21:42
maxbHaving unbound, 'update' will no longer attempt to fetch new changes from the remote. You would use 'pull' for that21:43
axeldgreat, thanks!21:43
maxbpull will error if the remote has diverged from your local branch21:44
axeldAny idea on how I could fix my problem, too? :-)21:44
axeldDiverged in what way?21:44
axeldThe workflow is that there is a central SVN repository with development going on, and I use bzr in order to be able to commit independently from that, and push my changes from time to time21:45
maxbDiverged in the sense of the revision graph - i.e. remote has new commits and so do you locally21:45
axeldAnd how would I resolve the issue then?21:46
maxbI think 'bzr rebase --pending-merges' might possibly be what you want in your current branch21:46
axeldHow do I get the rebase extension?21:47
maxbWhat is your OS?21:47
axeldIt doesn't seem to be part of the base install21:47
maxbhmm, have you not been using it before now?21:47
axeldUbuntu 10.1021:47
axeldI've never rebased21:47
axeldIn my old setup, I always used push/pull21:47
axeld(with an older release)21:48
axeldNow, I used "up", maybe accidently, but since it worked, I didn't question it21:48
maxbWhat did you previously do when there were changes in svn to the branch you were working on locally?21:48
axeldAFAIR (it's been some time), I just couldn't push my changes if there were changes on the server, and I had to pull first21:49
Odd_BlokeHello all.  I'm trying to use bzr-builddeb on a Debian sid box but I'm getting API mismatches (bzr 2.3, builddeb wants 2.2).21:49
Odd_Blokejames_w: ^21:49
maxbaxeld: But, you would not be able to pull new changes from the server if you had local commits21:50
axeldmaxb: my memory might very well fail me, but that's how I remember it21:50
axeldmaxb: is it possible that rebase is now called rewrite?21:51
maxbYes, the plugin has been renamed (but the command has not)21:51
axeldinstalling it21:51
axeldmaxb: it says: "no revisions to rebase"21:52
maxbWhat exactly did you run?21:52
axeldmaxb: "bzr rebase --pending-merges"21:53
maxbhmm21:53
maxbAnd what does 'bzr st' say?21:53
axeldIt shows the files of my local commits as modified, and lists "pending merge tips"21:53
axeldokay, just the pending merges when I use -v21:54
maxbHmm. I've never used rebase --pending-merges before. It sounds like it is not doing what it claims21:54
axeldHow would I look at those with log?21:54
maxblook at the pending merges?21:55
axeldyes21:55
axeldIn order to recreate them again manually :/21:55
maxbWe've not reached the point of that being necessary21:55
axeldI hope so21:56
axeldBut I am clueless21:56
maxbFirst, can you confirm that you have no *uncommitted* changes besides the modifications originating from the merged local commits?21:56
axeldBTW on the other topic: how would I resolve the case in an unbound repository if I have local commits and new changes in the server?21:56
maxbNormally one would simply merge.21:57
maxbYour situation is more complicated because you want to linearize the changes for the sake of how they appear in svn21:57
axeldmaxb: I'm not 100% sure, but pretty much - at least the changed files do contain the changes I already committed locally21:57
axeldAnd I don't think I made any other changes afterwards21:57
axeldexactly21:57
axeldI would need to rebase the pending merges, the question is just how21:58
maxbOK, well, if you're in doubt, run a 'bzr diff' and save the output somewhere, because I'm about to ask you to do stuff that throws away the existing modifications in this tree21:58
axeldalright, I'm ready when you are :-)21:59
maxbok, now we're doing to do something slightly messy because bzr doesn't provide a command to get the revision-id of pending merge tips22:01
maxbsed -n 4p .bzr/checkout/dirstate | xargs -0n1 echo22:02
maxbwill print you the revision ids of the current base of the working tree, plus the pending merge tips22:02
maxbI'm assuming there's only one pending merge tip, right? (So you got a count of 2, followed by 2 revids?)22:03
maxbYou've already run 'bzr unbind' by now, right?22:04
maxbIf so, 'bzr pull --overwrite -r revid:the-revid-of-the-former-pending-merge-tip . && bzr revert' will put you back to where you were before the 'bzr up'22:05
axeldI haven't unbound yet, wasn't sure if it was a good idea yet22:06
axeldAnd yes, I see a "2", and then two lines, which don't really look like revision IDs, but what do I know22:07
maxbemail@address.tld-stuff is a revid22:07
maxbSo is svn-v4:stuff22:07
axeldthat are the two ids indeed22:08
maxbThe first being a svn-v4 one and the second an email one, right?22:09
axeldJust wondered why they look so differently - but I guess one is from me, and the other one from SVN trunk22:09
axeldmaxb: exactly22:09
maxbIt's because one is a commit made in svn and translated into bzr, whereas the other is a commit made directly in bzr22:09
axeldthanks22:09
maxbOK, so, unbind, pull --overwrite, revert, ....22:09
axeldwhich revid is the one I need to pass to pull?22:10
axeldthe svn one?22:10
maxbthe second one, the email22:11
axeldok22:11
maxbThe point is, we are resetting your working branch to the state based on your local commits22:11
axeldah, okay22:11
axeldso that's done now, I have no modified files or pending merges anylonger22:11
maxbright. Now, I don't know why 'rebase --pending-merges' was being awkward, but from where we are now, we should be able to use plain old 'bzr rebase' with no options, to rebase your local commits on top of the new commits found in the parent branch22:12
maxbSo, give that a try :-)22:12
axeldIt says: no revisions to rebase22:13
maxbthis makes no sense22:13
axeldso that's consistent, at least 8-)22:13
maxbWhat does 'bzr missing' say/22:13
maxb?22:13
axeldYou have 3 extra revisions22:14
axeldThose are my local commits22:14
maxbby definition you have something to rebase, then :-/22:14
axeldGreat; looks like the rebase module doesn't like my setup22:15
maxbum. so. 'bzr rebase :parent' possibly?22:16
axeldstill says the same22:16
maxbwell, gah, 'bzr rebase' behaves just as I expect for me locally :-/22:18
axeldIn any case, you seem to know a lot about bzr, thanks for trying to help!22:18
maxbI'm rather perplexed :-/22:19
maxbUnfortunately I can't think of what to ask, and I'm guessing this project is private?22:20
axeldyes, unfortunately22:20
axeldWhat would happen if I pull or push now?22:21
maxbwait.... you said 'bzr missing' said "You have 3 extra revisions" ... nothing about extra revisions in the remote?22:25
maxbgah22:25
maxball this talk of rebasing has blinded me to the utterly obvious22:25
maxbYou can just 'bzr push'22:25
maxbBut, if that's so, I still don't understand how 'bzr update' got you to the state of having your local commits as a pending merge :-/22:26
axeldIf I bzr up again, will that bind my repository again?22:27
maxbNo22:27
maxb'bzr bind', for that22:27
axeldokay22:28
axeldwell, great, it's done! Thanks a lot!22:28
maxbI still don't understand how your revisions got to be a pending merge, but at least they're where they need to be now22:28
* maxb --> afk22:29

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