/srv/irclogs.ubuntu.com/2008/05/19/#bzr.txt

spivPeng: you can use branches to do the same thing as looms, but it's a lot more convenient with looms.00:03
PengOkay.00:03
spivigc: https://bugs.edge.launchpad.net/bzr/+bug/23055000:05
ubottuLaunchpad bug 230550 in bzr "bzr+http repeatedly queries the wrong location for BzrDir.find_repositoryV2" [Critical,Confirmed]00:05
igcbbiab01:04
* igc lunch03:11
lifelesshey guyes04:17
lifelessspiv: ah good, you found the bug report :)04:18
igchi lifeless04:22
spivlifeless: yep :)04:33
lifelessspiv:  -> food, but happy to discuss later if you need to chat about it05:34
* igc pick up kids - bbian05:40
lifelessspiv: back; so how is that bug going ?06:13
spivlifeless: _SmartClient._base is getting out of sync with _SmartClient._medium's URL06:15
spivlifeless: so it appears that the client/medium sharing logic in RemoteBzrDir isn't quite right.06:15
lifelessspiv: excelennt; that was my suspicion :)06:15
vilalifeless: http://paste.ubuntu.com/13090/08:01
vilaNote that the http benchmark spend 212 seconds waiting for a 502 Bad gateway. So subtract that.08:01
vilaAfter the substraction I can't see huge differences so I'm wondering about wether there is such a discrepancy between sftp and http.08:02
uniscripthow do I bzr ignore .svn directories?08:03
vilaIn other words, either the kenisson (sp?) experiment was flawed or I need better info on how to reproduce it.08:03
bob2_"bzr ignore .svn" doesn't cut it?08:03
uniscriptI get errors with the bzr-svn plugin08:04
uniscriptwith bzr add .08:04
uniscripttries to do a PROPFIND08:04
uniscript bzr add --dry-run -v .08:05
uniscriptbzr: ERROR: libsvn._core.SubversionException: ("PROPFIND request failed on '/svn/repos/keith/DocCharConvert/trunk/DocCharConvert'", 175002)08:05
spivvila: you mean Kinnison?08:05
vilaspiv: yeah! Thanks. Thanks for your review and invalidating my bug report too ;-)08:06
vilaKinnison: apologies for the typo, I need another coffee :)08:06
spivvila: You're welcome :)08:08
spivvila: that's the easy part compared to actually fixing a bug :)08:08
spivvila: I had a quick look at it when it was reported and couldn't see what was needed, but you made the solution look pretty easy.08:09
vilaspiv: yeah, I had a wtf moment when realizing that _post wasn't calling _raise_curl_http_error and then another when I realized that _post wasn't using accepted_errors, that made the bug quite subtle08:11
vilabut overall, I'm gulty of not working more on the hpss ;-)08:11
spivIf _post isn't reusing stuff that it should, then it would be great to fix that :)08:13
pooliei'm going to do a couple of reviews of ian's work then call it a day08:14
vilaspiv: now that I can write tests, I may as well refactor _post, I think we shouldn't annex _post just for the smart server when we already have send_http_smart_request...08:16
spivvila: that sounds good.08:16
vila... even if that means having two send_http_smart_request implementations ;-)08:16
spivvila: although I'd be tempted to land a short-term fix first, before embarking on a bigger change08:17
spivDepends on how quickly you can do the proper fix :)08:17
gouris anyone using fish shell? (there is no tab-completion for bzr :-(08:19
lifelessvila: is your http cached perhaps ?08:21
lifelessvila: kinnison is usually quite good ;P08:21
vilalifeless: no cache here, never, pipe is big enough (which explains why I'm so bad at undersanding squid issues and high latencies problems ;)08:22
gourhmm, it looks that bash-completion is also not up to date :-/08:23
vilalifeless: I don't doubt Kinnison, it's just that I can't reproduce ;-)08:24
vilaKinnison: when you come back, let's discuss a bit, I'd be interested in some stats via the transportstats plugin08:25
visik7I'm new to vcs, I would using it to fork my project to have 2 version: one for experimental purpose the other for production08:25
visik7but before this I've some questions:08:27
visik71st: I've a so called "projects" folder08:27
visik7is more logical to put the dir under a unique bzr branch or to create a bzr branch for each project ?08:28
PengThe latter.08:28
visik72nd: how can I fork my project ? should I use the switch command ?08:30
poolievisik7: use 'bzr branch production experimental'08:32
pooliewell08:32
pooliefirst put your code in a directory called eg 'production'08:32
pooliethen that will create another copy of it called experimental08:32
visik7and when I need to merge some or all the code from experimantal to production ?08:33
jameshvisik7: the workflow I usually use is to develop features on their own branches08:35
jameshthis makes it easy to merge them on their own08:35
visik7jamesh: so no split the code into 2 dirs ? becouse I would to continue to develop on devel and production as well08:38
visik7maybe I've not understand your workflow08:38
visik7:(08:39
bob2_merging only part of one branch into another is a bit problematic (in bzr at the moment)08:43
=== emgent is now known as emgent`UDS
Kinnisonvila: hi, bug me when you're around and we can discuss08:57
igcnight all09:00
vilaKinnison: installing stuff on a windows machine in parallel, let's discuss09:00
Kinnisonokies09:01
KinnisonSo what are you after me for?09:01
vilalifeless told me you were observing different behaviors between sftp and http regarding bandwidth usage. I can reproduce it. Can you tell me more about your experiment ?09:02
vilagrr, s/can reproduce/can't reproduce/09:02
spivvila: I make that typo lots too.09:03
vilabroadcast: read my mind while I'm using windows09:04
Kinnisonvila: sure, let me prep, I've reinstalled my PC since then.09:08
vilaok09:09
KinnisonOkay, so here's the deal, when I did the test, I was branching bzr.dev over my 'net connection which is a 10Mbit cable service from my Colo box which has plenty of bandwidth and reasonable enough CPU etc.09:09
KinnisonNow, this is plain http (I.E. not smart) and it seemed to take around twice (wallclock) that of sftp09:11
KinnisonI have an http_proxy set, which is on my local network to my seriously overpowered core server which runs a reasonably well configured squid09:12
KinnisonNow when it's fetching the packs, the HTTP fill the 1.2MB/s09:12
=== emgent`UDS is now known as emgent
KinnisonBut once it's on to the smaller files, it slows down dramatically09:13
KinnisonAs though it's not pipelining or something09:14
spivKinnison: (btw, I've seen the opposite effect: a bug in the way some versions of squid handle "Range: 0-..." request causing fetching of data from packs to be extremely slow)09:14
KinnisonThis is an initial branch09:14
Kinnisonso presumably it fetches the whole pack, no?09:15
spivDepends on the pack.09:15
Kinnisonoh09:15
spive.g. if it's shared repo09:15
Kinnisonstandalone branch09:15
spivThere will almost certainly be revisions in there you don't need, so bzr won't fetch the whole pack.09:15
* Kinnison runs the branch again to re-time09:16
visik7bob2_: are other vcs less problematic with this kind of usage ?09:16
Kinnisonsince last one got moosed by presence of updatedb09:16
vilaKinnison: Wait ! Can you do that with the transportstats plugin installed and prefix your urls with 'stats+' ?09:17
Kinnisonwhere do I get that plugin?09:17
vilaas I did in http://paste.ubuntu.com/13090/09:17
vilabzr branch lp:~vila/bzr/transportstats09:18
bob2_visik7: I'm not sure.  jamesh was suggesting that you develop each feature in different branch, then you can choose which whole branch to merge into production or experimental09:20
visik7bob2_: I think that will drive me crazy 'couse I would use this as a one man developer tool09:21
visik7:)09:21
Kinnisonvila: running the http branch now09:21
vilaKinnison: You said "seemed to take around twice (wallclock)", so we may not be dealing with bandwidth problems here...09:23
vilaRegarding  the transportstats plugin, it creates a '.transport_stats_for_bzr' file cumulating the operations measured, so let's try to be clean about how we use it, i.e. run your operations in different directories as much as possible09:25
vila.. or alternatively and surely easier for you rename the file between each operation when necessary09:29
Kinnisonokay, how do I get the stats for this op?09:29
visik7ops09:30
poolienight09:34
vilaKinnison: bzr ts-display09:38
sabdflvisik7: it's actually nice to work on features separately09:39
sabdflyou can merge them if two features become interdependent09:39
visik7sabdfl: someone point me to hg queues09:42
=== bob2_ is now known as bob2
Kinnisonvila: http://rafb.net/p/D4vKEA23.html09:42
Kinnisonvila: woah, that's huge latency09:43
* Kinnison tries the same op again, without the http proxy09:43
KinnisonFor reference, that took 4:29.06 wallclock to branch bzr.dev09:43
sabdflvisik7: i think you'll find independent branches better, it's easier to keep track of the thread of development of each feature09:43
sabdflbut, try everything09:43
vilaKinnison: Beware! It's not your usual latency, that's the "real" latency as measured between when we send a request and when we receive the response, not to be confused with ping09:44
visik7sabdfl: and on #git they told me that "you can cherry-pick every commit you want from one branch to another"09:44
Kinnisonvila: indeed, hence it seems huge09:44
Kinnisonconsidering my average ping time is 15ms09:44
vilaouch, yes, that's huge09:44
* Kinnison tries without squid now09:45
visik7sabdfl: I wouldn't to start with a vcs to realize that don't do what I look for09:45
vilayou can try 'bzr ts-display -v' but be prepared to receive a huge output09:45
sabdflvisik7: i'm sure every tool has a way to achieve your goal09:47
vilaKinnison: do you know if you use the pycurl or the urllib based implementation  ?09:47
sabdflmy recommendation would be to setup a share repo, with branches in directories under that09:47
KinnisonI haven't a clue, this is a fresh hardy install, with bzr.dev09:47
sabdflhave a trunk branch, then branches for each of the features you are working on09:47
sabdflyou can merge the features into trunk when they are ready09:47
sabdflworks really well for me09:47
vilatry 'import pycurl', if it's there it's used09:47
Kinnisonvila: right, without squid in the way, it takes 2:24 wallclock with an average latency of 420ms09:47
visik7sabdfl: thanks for the advice09:48
sabdflsure09:48
Kinnisonvila: not present09:49
vilahmmm, squid playing tricks again :-/ Yet 420 seems still huge, let me check from here (you branched from lp:bzr ?)09:49
KinnisonNo, from my server09:49
vilaKinnison: good, so you're using the urllib based one09:49
Kinnisonsince I can monitor that and be sure it's not overloaded when I do the trials09:49
Kinnison:-)09:49
vilaKinnison: apache ?09:49
KinnisonZeus09:50
Kinnison(very high performance web server)09:50
vilaKinnison: I don't know that one :-/09:50
KinnisonSFTP is 1:53.21 wallclock with 107ms average latency09:51
vilalet start again then, let's forget stats, there is chances that Zeus does not handle range requests as we want, try 'bzr branch -Dhttp' and mail me the relevant .log09:51
Kinnisonwhere does the .log end up?09:52
vilasftp/ 1.53, http/2.24, that's more reasonable09:52
vilabzr version will tell you, but on linux it's ~/.bzr.log09:52
KinnisonI'll clear that down first then09:52
vilayou can delete it before09:52
vilaz:)09:52
vilaKinnison: perfect09:52
Kinnisonbranching -Dhttp now09:53
vilagreat09:53
uniscriptI dimly remember there is a way to disable plugins for a bzr command?09:56
vilauniscript: bzr --no-plugins09:57
uniscriptta09:57
Kinnisonvila: http://www.digital-scurf.org/files/http-proxied-debug.log10:00
Kinnisonvila: http://www.digital-scurf.org/files/http-direct-debug.log10:00
Kinnisonvila: of use?10:02
vilaKinnison: just downloaded, let me look :)10:02
Kinnisonfor reference, that http-direct took 1:54.8 and the http proxied took 4:06.6710:02
vilathe proxied one seems to choke on some very big range requests, triggering a retry that is accepted10:08
vilathe timings appears in the log, I need more time for a more precise analysis, I'll kept you informed10:09
KinnisonOkay, be sure to prefix with my name, I'll go off to do other things and i'll come back if this window goes red :-)10:09
vilaKinnison: ok, it may not be today though, tonight at best (i.e. in ~10 hours)10:10
=== pmatulis_ is now known as pmatulis
KinnisonHeh, okay, I'll try and spot in scrollback10:10
vilaKinnison: But one important thing already: Zeus seems to happily handle our range requests, so comparing sftp with zeus-not-proxied should be relevant in terms of relative performances *today*10:12
visik7sabdfl: I realized that maybe multibranch is a little bit complicated for the task that I want to acheeve: I have a project, I want to "fork" it and develop 2 different version, but only one feature is in the new branch, I would keep the 2 branch synced is it possible ?10:14
visik7sabdfl: sorry if I bother you10:14
jmlhi10:20
jmlstatik: sorry about the plugin name thing.10:20
mwhudsonjml: hello!10:27
mwhudsonjml: how is europe?10:27
jmlmwhudson: europe is wonderful and european.10:31
jmlmwhudson: I wish I could spend more time here10:31
mwhudsonjml: are you going to get out of the city at all?10:32
jmlmwhudson: unlikely.10:33
jmlmwhudson: it'll take a fair bit of effort to make sure I see the city, in fact.10:33
mwhudsonjml: :/10:34
mwhudsonat least prague is worth seeing10:34
jmlmwhudson: *nod*10:34
mwhudson(i hear, not been there myself)10:34
jmlmwhudson: it is.10:34
jmlmwhudson: also, I think that the pubs here rival and perhaps best English pubs10:34
mwhudsonheh10:34
jmlmwhudson: oh btw, I read _Rob Roy_ on the flight over.10:35
jmlI want to go to Scotland now.10:35
mwhudsoni've seen his grave, i think10:35
mwhudsonrob roy is wallace?10:35
mwhudsoner, scott10:36
jmlyes.10:36
lifelesspoolie: hi; I may have come across badly in my latest email10:36
lifelesspoolie: please forgive :)10:37
mwhudsonjml: scotland is well worth seeing10:38
ToyKeepervisik7: You might want http://bazaar-vcs.org/Rebase10:38
mwhudsonthe valley containing the church where rob roy's grave is is beautiful10:38
mwhudsonjml: http://www.lochsidecottages.co.uk/Image8.jpg for example10:39
jmlmwhudson: yeah. indeed.10:42
lifelessvisik7: all you need to do is merge from one brancht o the other on a regular bssis10:42
lifelessvisik7: this sort of synchronisation is the reason bzr exists :) - its core functionality10:42
ToyKeepervisik7: bzr rebase and git-rebase and hg patch queues are all very similar...  but it's better not to use them if you don't really need to.10:46
ToyKeepervisik7: Er, the rebase features basically help you work around certain problems...  but why work around a problem when you can avoid it entirely?10:58
visik7ToyKeeper: how ?10:58
ToyKeeperIf you have write access to the main branch, there is probably no need to maintain a stack of patches separate from the trunk.10:59
ToyKeeperBut if upstream is read-only, and you have extensive local changes which upstream won't accept, 'rebase' features can help you keep your local patches up to date.11:01
visik7follow my reasoning: I've a project up and running, I would develop new features on a parallel brench keep syncing with the "trunk" and I need to develop new features also on trunk11:02
visik7so rebasing or merging seems the right solution isn't it?11:03
ToyKeeperIn that case, regular merging should be fine.  That's what bzr is best at.11:03
visik7so I've not understood the difference between merge and rebase11:03
ToyKeeperMerging is the normal process in bzr.  You can push/pull/branch/merge freely.11:04
ToyKeeperRebase is for pretty specific types of use.11:05
ToyKeeperFor example, you get foo-1.3.tar.gz, unpack it, and make changes...  then foo-1.4.tar.gz is released.11:05
ToyKeeper'foo' is not in bzr, but your patches are.11:05
ToyKeeperRebase makes it easier to take your foo-1.3 patches and make them work on foo-1.4.11:06
=== AnMaster_ is now known as AnMaster
visik7I got it11:07
spivvisik7: rebase writes a new history for a branch11:10
spivvisik7: which is detrimental to regular merging11:10
visik7thank you guys for all those infos, time to dive into bzr11:14
visik7see you soon11:14
brilliantnutspiv: I see that you have a fix for bug 230550 ... does this means it goes into 1.6?11:34
ubottuLaunchpad bug 230550 in bzr "bzr+http repeatedly queries the wrong location for BzrDir.find_repositoryV2" [Critical,In progress] https://launchpad.net/bugs/23055011:34
spivbrilliantnut: yes11:34
brilliantnuthmm, and is there a chance that I can try it out before?11:36
brilliantnutI have a branch off bzr.dev, if it makes a difference...11:36
spivbrilliantnut: it's a work in progress, but I just registered the branch in LP and linked it to that bug11:40
spivbrilliantnut: http://people.ubuntu.com/~andrew/bzr/bug-230550 is the URL11:40
=== weigon_ is now known as weigon
PengWhat would cause .bzr/repository/lock/foo.tmp/info to be left behind from months ago, but not be causing problems when trying to push?13:01
lifelessPeng: that is a tmp file used when obtaining/releasing a lock, not an actual lock13:17
statikjml, no apologies needed for the plugin name, thanks for writing a useful plugin!13:19
denndaHi. I have settings.py under version control but want to ignore it from now on, without removing it (it's values change from machine to machine.) How do I do that?14:08
thekorndennda, bzr remove --keep <yourfile>14:12
thekornbzr ignore <yourefile>14:12
thekornthat's at least what I would do in such a case14:13
denndathekorn: thanks :)14:18
=== pmatulis_ is now known as pmatulis
=== wildfire` is now known as wildfire
siretartjelmer: hi. would you please commit your latest bzr_1.5-1 upload to debian to bzr.debian.org? TIA!16:21
datosiretart: are you going to upload bzr to backports?16:30
siretartdato: I have just merged bzrtools, and wanted to prepare an bzr upload, so yes16:36
siretartpreparing in the sense of building and publishing it on gluck, and having it ready to be uploaded as soon as stuff transitions to testing16:37
datoah; I've been asked a backport of 1.3.1, that's why I asked16:37
demodhi16:48
=== weigon_ is now known as weigon
lifelessjam: ping17:46
lifelessjam: unping, have test passing remoind me sometime to discuss write_revision_to_string with you17:51
vila1.5 has been released ? Or is it still in rc ?18:02
vilalp doesn't have 1.5 series defined (hence the question)18:02
vilalp doesn't have 1.6 series defined (hence the question)18:02
vilagrr18:02
beunovila, it's been released, yes18:02
vila1.6 serie or 1.6 milestone, I'm unclear about the vocabulary, but I need the later for marking a bug as released18:03
vilabeuno: thks18:04
pickscrapeWould I be right in thinking that 1.6 is going to be quite an exciting release?18:05
jamvila: if we don't have 1.6 marked, I'll go do it18:05
jamwe certainly should have a milestone for it18:06
jamand possibly a release series18:06
vilajam: thanks18:06
jamvila: we now have both a release series and a milestone for 1.618:07
vilajam: faster than light ;-)18:07
jamIn the past, a lot of milestones were based on 'trunk' rather than a specific release series, but the last few have been on the series18:07
jamso I kept it that way18:07
jamvila: it isn't too hard when you've done it several times :) It is a bit tricky when you don't know where to look18:08
jam(like that milestones aren't against the project, they are against 1 release series, etc)18:08
jamman I hate that 'series' has no plural form, and that its singular form *looks* plural18:09
jamstupid English18:09
pickscrapesheep18:09
jamvila: is it any better in French?18:09
vilais that described in the how-do-I-make-a-new-release doc ? I'm under the impression that starting the new release is always a bit ... delayed18:09
jampickscrape: sure, but at least sheep and moose don't look plural, goose geese is always bad18:10
vilajam: no, in french serie is singular, series is pluaral18:10
vilaplural even18:10
vilabut we have temps (time) which is both singular and plural18:10
vilaand surely a few others, my gf is far better than me in french grammar, I specialized early in computer languages grammars and forget about the rest :)18:11
jamvila: time as in 'occurrence' or time as in "clock" ?18:11
vilatime as in clock and weather and music18:12
vila:)18:12
jamvila:  I always wondered about time as in weather, as spanish has the same thing (Tiempo)18:13
jamHace tiempo hay (or something like that) is how is the weather18:13
jamQue tiempo hace ?18:14
jamman my spanish is bad18:14
beunojam, que tiempo hace is pretty good  :)18:14
vilamy daughterS also suggest: nez (nose), souris (mouse), vers (rhyme)18:16
vilatapis (carpet) and generally all words ending with 's' :)18:16
vilagee, the things they learn at school today....18:17
vilajam: funny, time passing express both the clockl and the weather for me...18:18
jamvila: sure, as an English person they seem very different, but I think most Latin languages mix them18:18
jamJust that "what time is it" is very different to me than "how is the weather"18:20
jamIn arabic, they actually ask "Which hour is it"18:21
jamvila: to your earlier question, the "mark a new series" may be in the release documents, but they are also rather long18:21
jamThere are quite a few steps, and it is pretty easy to miss some18:21
jamI think we have to register the release in about 4+ different places (freshmeat, pypi, Bazaar home page, bazaar-announce@, etc)18:22
jamAlso, if it isn't there I just create one18:23
jamNEWS bothers me more18:23
=== NfNitLoo` is now known as NfNitLoop
jambecause you have to wait for it to merge to mainline, and then merge it back into your simple bugfix branch18:23
jamor run into merge conflicts because 2 people created the new NEWS section18:24
vilayeah, we have less conflicts in NEWS since we sort it inside each section, but still...18:25
jamvila: right, especially after a release when all the sections are empty18:27
vila"what time is it" and "how is the weather" *are* also different in french, yet, in a movie, I often saw clouds moving faster than normal used to represent some time passing, that's the image I was referring to18:27
vilajam: exactly :) Got bitten recently :)18:28
jamvila: that is very common in movies, but I only view it as time sped up, you can do it with people walking fast, clock hands spinning quickly, etc18:28
jamactually, I think one of the downsides is that we are slightly more likely to merge something into an "old" release18:29
jamwhen it used to conflict all the time, you would fix it and put it in the right location18:29
jamnow older patches can quietly claim to fix old releases18:29
vilajam: Yeah, I'm always afraid of that when working in long lived branches :-/18:30
vilaand I'm quite surprised I never made a mistake there (or may be I did and nobody noticed :-( )18:31
jamvila: I *try* to be careful when I merge. And certainly for a release we should do "bzr diff -r branch:../last-release"18:31
jamOne thing I actually snuck in on this release were tags for '1.5rc1' and '1.5' final18:32
jamthough they didn't seem to propogate to bzr.dev for some reason18:32
jampropagate18:32
lifelesswoo18:33
lifeless.revisions and .signatures in use, no more _revision_store18:33
lifelessall tests passing18:33
lifelessjam: quirk for you18:33
jamlifeless: what was your 'write_revision_string' comment?18:33
lifelessjam: in repository.get_revision_xml18:33
vilago go... go  lifeless go go :)18:33
lifelessjam: if you change it from using a stringIO to do _serializer.write_revision_to_string(), the non_ascii tests fail18:34
jamlifeless: I *think* that is a bug in cElementTree.tostring versus ElementTree.write(f, 'utf-8')18:35
jamlifeless: not sure, though18:35
jamlifeless: you have to pass 'encoding=XXX' to tostring()18:36
jamso I think you need18:37
jam=== modified file 'bzrlib/xml_serializer.py'18:37
jam--- bzrlib/xml_serializer.py    2008-03-28 02:10:23 +000018:37
jam+++ bzrlib/xml_serializer.py    2008-05-19 17:36:50 +000018:37
jam@@ -87,7 +87,7 @@18:37
jam         self._write_element(self._pack_revision(rev), f)18:37
jam     def write_revision_to_string(self, rev):18:37
jam-        return tostring(self._pack_revision(rev)) + '\n'18:37
jam+        return tostring(self._pack_revision(rev), encoding='utf-8') + '\n'18:37
jam     def read_revision(self, f):18:37
jam         return self._unpack_revision(self._read_element(f))18:37
jamlifeless: that is my guess, at least18:37
jamlifeless: is get_revision_xml() used in anger anywhere? I think it used to be the basis for get_revision() but now it is defined in terms of get_revision18:39
gourwhere can one see what do you cook for 1.6?18:39
gourto, at least, smell it a bit18:39
lifelessbzr.dev18:39
gourlifeless: i did not mean to 'cook', just to smell ;)18:41
lifelessyes,I understand18:42
LeoNerdbzr tags --help     suggests a --sort=ARG  argument, but doesn't give a hint on what ARG can be18:51
lifelessLeoNerd: ugh, indeed18:53
jamlifeless: this is the bug with option formatting18:53
jamwhere someone wanted a flag to always be true18:53
jambut that allows "--foo" isntead of just "--sort=foo"18:53
jamAnd the person who wrote the first patch didn't step up to fix the help formatter18:53
jamso that you can get the sub-info when the setup is False18:54
jamI don't remember the specific variables18:54
datothe person that wrote the first patch provided an initial patch to fix the help formatter which went uncommented :P18:55
datobut at this point I guess it may be time to do what somebody proposed on the list a bit ago: use value_switch=True everywhere...18:56
jamdato: but that allows '--foo' which isn't what we want18:57
jambzr tags --date18:57
jamrather than 'bzr tags --sort=date'18:57
datoparticularly, isn't what *I* wanted. I couldn't stand the idea of tags --date, so that's why I used value_switch=False, knowing the options would be undocumented...18:58
jamanyway /away lunch18:59
=== mw is now known as mw|food
TheSheepHello. I want to a vcs for storing versioned data in my python app. Would it be easy to import some part of bazaar and use it internally? Does bazaar require a working tree to really exist on the disk?19:22
TheSheeps/a vcs/use a vcs19:23
jelmerTheSheep: you should be able to use the VersionedFile API19:23
jelmerTheSheep: If you use the Knit implementation it would just create two files on disk (one for the index, one for the actual data)19:23
TheSheepjelmer: the thing is, I want to make the commits from different users in the app look like commits from different branches, without having to physically create a copy of the repository19:25
lifelessjelmer: there is no VersionedFile api once my branch lands :P19:29
lifelessTheSheep: yes you can do that19:29
jelmerTheSheep: ah, ok. I misunderstood then19:29
lifelessTheSheep: we do it ourselves in the test suite using MemoryTree's19:29
TheSheepgreat19:30
TheSheepthank you19:30
=== rockstar_ is now known as rockstar
TheSheephmm... so memorytree.get_file will create a StringIO object, or will it actually create a file somewhere in the filesystem?19:55
=== mw|food is now known as mw
Pilkyif I create a project on launchpad, does that automatically create a bazaar repo that I then just have to push my initial branch to?20:29
beunoPilky, you just have to push20:30
beunoit creates it when you push20:30
Pilkycool, thanks20:30
=== mtaylor_ is now known as mtaylor
beunohttp://kubasik.net/blog/2008/05/19/bazaar-and-its-rockage/20:38
beuno:)20:38
Pilkybeuno: I think one of the biggest benefits of bazaar is that it isn't built upon the idea that there is "one true way"™ of doing things20:53
LeoNerdbazaar is the mechanism, not the policy20:53
beunoPilky, yes, they really got that right...20:53
Pilkythe fact that you can get all the benefits of centralised and all the benefits of distributed as and when you need them is pretty damn useful20:53
Pilkythough to be honest, having a disk image installer for OS X with a really nice background is what got me most ;)20:55
PilkyI'm a sucker for the little things20:55
beunohahah20:55
beunothat's the benefits of a great community  :)20:56
gourcan one use some of launchpad features by not sharing the code? we would like to work on something before opening it to the public...you know that: "premature forking is the root of all evil " :-)20:56
beunogour, well, can can *not* upload the code20:57
beunoI don't know how that works along the lines of policy, but it's certainly possible20:57
gourok, then we might wait a bit before using launchpad by using our own roundup tracker20:58
beunogour, if it's going to be open source, I don't see a problem with it at all20:59
Pilkyhmm, ok, I think I might be a little confused by --no-trees... my branch doesn't seem to want to let me do anything21:00
gourbeuno: it will be, of course, open-source, most probably GPL21:01
Pilkywhat exactly is the benefit of --no-trees, besides being able to put branches in branches?21:01
beunogour, than I'd say go for it21:01
gourPilky: i read in the user-reference about using --no-trees and then switching checkouts around21:01
gourbeuno: cool. thanks21:01
Pilkyah, I think I understand it now, --no-trees is for when you're not working on something, just when you're hosting it and don't need the extra editing related stuff21:06
=== pickscrap1 is now known as pickscrape
sabdflPilky: yes, exactly21:12
sabdflon my laptop, i have a directory ~/foo/ which is a repository of branches of foo21:12
sabdflso ~/foo/trunk and ~/foo/feature1 and ~/foo/feature221:12
sabdfland each of those branches has all the files in it21:13
sabdflso i can just cd into the branch, and work / hack / merge / commit21:13
sabdflon a server, i have a repo ~/foo-storage/21:13
sabdfland i have setup my ~/.bazaar/locations.conf so that i can automatically push a branch to the server21:14
sabdfljust cd ~/foo/feature1; bzr push21:14
sabdfland it automatically goes to the server ~/foo-storage/feature121:14
sabdfland creates that branch on the server if it does not yet exist21:14
sabdflbut on the server i don't need the "working directory"21:14
sabdfljust the revision history21:14
sabdflso that's a --no-trees repo21:14
sabdflmake sense?21:14
Pilkyyeah21:15
sabdflit's really easy to setup21:15
Pilkywas just a little confused by a bit of the documentation that says that Bazaar recommends using --no-trees, but looking at it now I see that it relates to shared repositories21:15
sabdflin ~/.bazaar.conf:21:15
sabdfl[/home/mark/foo]21:16
visik7good evening21:16
sabdflpublic_branch = bzr+ssh://server.my.com/home/mark/foo-storage21:16
visik7I can't figure out the difference between init and init-repo21:16
sabdflpush_location = bzr+ssh://server.my.com/home/mark/foo-storage21:17
visik7I've a project without any vcs21:17
sabdflpush_location:policy = appendpath21:17
sabdfland voila21:17
Pilkysabdfl: cool, thanks21:17
sabdflnp21:17
Pilkyvisik7: I had that problem yesterday, let's see if I can explain it21:17
sabdflvisik7: init-repo gives you a shared repo21:17
sabdflgo ahead Pilky :-)21:17
gourPilky: see this "Another possible use for a checkout is to use it with a treeless repository containing your branches, where you maintain only one working tree by switching the master branch that the checkout points to when you want to work on a different branch."21:17
visik7Pilky: you have my attention21:18
Pilkyvisik7: if you use init-repo it creates a shared repository for all revision info21:18
Pilkythen you use init to create a branch21:18
Pilkyand essentially all that is stored in that branch are the revision numbers21:18
Pilkywhich reduces disk space and improve performance21:19
visik7Pilky: so if I need to devel my proj splitting and merging a repo is better than a branch21:19
Pilkywell, no, you're developing in a branch, the repo is just a sort of efficient container for many branches21:20
sabdflif you will have lots of branches of the same code, then use a shared repo21:20
sabdflmake a directory structure like this:21:20
sabdfl - repodir21:20
visik7but if I've already started a branch how can I import it into a repo ?21:20
sabdfl    - branch 121:20
sabdfl    - branch 221:20
sabdfl    - branch 321:21
Pilkyvisik7: branch it off into the repo21:21
sabdflthat's each21:21
sabdflmkdir ~/my-repo21:21
sabdflcd ~/my-repo21:21
sabdflbzr init-repo21:21
sabdflthen bzr branch ~/path/to/branch branch21:21
sabdflyou will then have:21:21
sabdfl ~/my-repo21:21
sabdfl   [this is where the revisions are all stored, shared, in .bzr]21:22
sabdfl ~/my-repo/branch21:22
sabdfl   [this is where the working files for this branch are]21:22
sabdfland you can make a second branch by going:21:22
sabdflcd ~/my-repo21:22
sabdflbzr branch branch new-branch21:22
visik7'couse I've already branched by project than rebranch and devel new features but outside of a repo21:22
visik7now I need to branch both inside the repo ?21:23
sabdfl(eek, calling that first branch "branch" was bad)21:23
sabdflthe first time you branch "into" a repo, it copies all the revisions into the repo store21:23
sabdflfrom then on, each new branch just re-uses the previous revisions for everything that's common21:23
sabdflwhich is most of history, usually21:23
sabdflsay you have a project with 1000 commits21:23
sabdfland you make a new branch, with 10 extra commits21:23
sabdflthat's only 1% "new"21:24
sabdflso it makes sense to share history21:24
visik7yes yes I got it21:24
visik7but the problem now is that I've 2 branches of a project outside of a repo21:25
visik7:(21:25
Pilkyvisik7: I don't see any problems with branching both into the repo21:25
Pilkyyou just need to change the default merge location for when you merge back together21:26
Pilkyso that you're merging back to the copy in the repo, not the one outside of it21:26
visik7ops21:32
visik7how can I undo a merge ?21:32
beunovisik7, bzr revert21:32
pickscrapeAs long as you haven't committed yet...21:33
beunoactually, bzr revert --forget-merges21:33
visik7fiu21:33
radix--forget-merges is only if you don't want to revert the changes to the files that the merge made21:33
beunoyes, if you already committed, then you'll have to specify to which revision to revert  (bzr revert -r -1 would be the last revision)21:33
beunoradix, oh?  that *doesn't* revert the changes made?21:34
radixbeuno: right. the point of --forget-merges is that it *only* forgets the metadata about the merge, while keeping the changes to the files.21:34
beunoradix, hrm, I wonder if that's the best name for it...21:35
visik7I'm really really new to vcs concepts, I was expect some question when I run a merge, instead it do all the work but what really a merge do ?21:35
visik7a part from coping files ?21:35
Pilkyvisik7: well, if there are no conflicts then it should perform the merge for you21:37
Pilkywhich merges directories, but also the files themself21:37
Pilkysay you edited line 5 of a.txt in one branch and then line 20 of a.txt in another branch21:37
Pilkywhen you merge them it will try to put the new stuff in line 5 and line 20 into a.txt21:38
radixvisik7: it does more than just copying. It "merges" in all the changes made in another branch, without overwriting other changes that have been made otherwise.21:38
Pilkyof course, if you were to edit line 5 in both branches and try to merge, you'd get a conflict as there are two new bits of data and the VCS doesn't know which to choose21:39
visik7anyway it's request to manually check if everythings works as expected right ? 'couse it can't be aware of what my code relies  on21:39
Pilkyin this case you'll have to choose yourself and then resolve it21:39
radixvisik7: This is why bzr doesn't automatically *commit* the changes when you merge --21:40
radixvisik7: you have a chance to review the changes with "bzr diff" before running "bzr commit".21:40
visik7good, clear21:40
mtaylorbzr: ERROR: Invalid revision number 44721:45
mtaylorwhen pushing a just-merged branch back to launchpad21:45
mtaylorwhat does that mean?21:45
mtaylornm - I think it was a local hook21:49
mwhudson__mtaylor: interesting, we've had a few branches with that problem21:50
=== mwhudson__ is now known as mwhudson
mtaylormwhudson: oh, ok. then it _wasn't_ my fault :)21:51
mwhudsonmtaylor: can you check 'bzr revno' vs 'bzr revision-history | wc -l' ?21:51
mwhudsonthey should give the same number21:51
mwhudsonmtaylor: well, maybe it was :)21:51
mtaylormwhudson: they equal21:51
mwhudsonmtaylor: oh good21:51
mtaylorthen it was my fault21:51
mwhudsonit's possible21:52
mwhudsonmtaylor: which branch?21:52
mtaylormwhudson: lp:ndb-connectors21:52
mtaylorgah21:52
mtaylorlp:ndb-bindings21:52
mwhudsonhm, branch on lp seems ok too21:53
mwhudsonso i don't know what you did, but it doesn't seem to be related to our mystery branch problem21:54
mwhudsongood news for you :)21:54
mtayloryay!21:54
schmichaeljust upgraded to 1.5 and a commit seems to be frozen on pre_commit hooks (stage 3/5)21:58
schmichaelafaik i have no pre_commit hooks21:58
schmichaelanybody know where i should start looking to fix this?21:59
schmichaeli hit ctrl-c, and it seems to have committed just fine22:04
schmichaelnow bzr push appears frozen (ssh+bzr protocol, bzr 1.5 on the server as well)22:05
schmichaeli had also run bzr upgrade on both branches... perhaps thats the problem?22:08
LaserJockjelmer: around?22:12
jelmerLaserJock: hi22:13
LaserJockjelmer: I'd like to upgrade my bzr/bzrtools version to the bzr PPA22:13
LaserJockbut bzr-svn doesn't seem to be ready22:13
LaserJockcan I get bzr-svn from a bzr branch instead?22:13
schmichaelargh!  i'm trying to commit with the old copy of my repo, and it still doesn't work22:15
schmichaelwhat have i done to break bzr 1.5? :(22:15
jelmerLaserJock: yes, just use the 0.4 branch22:15
schmichaelhm, i have bzr-svn and bzr 1.5 installed... could that be the problem?22:16
jelmerschmichael: that shouldn't matter22:16
jelmerdo you have any other plugins installed?22:17
schmichaelany package that starts with bzr- in debian sid22:17
schmichaeldbus, email, gtk, pqm, rebase, svn, tools22:18
schmichaeli probably only use gtk, svn, and tools though22:18
schmichaelhuh, it appears my push did succeed22:22
schmichaelwell, i guess everything is working well enough22:25
schmichaeli just have to hit ctrl-c to kill commits at the pre_commit hook stage22:25
schmichaelfor pushing, i guess just count to ten and hit ctrl-c22:25
schmichaeli'd love to file a bug but i don't have any clue where to even start diagnosing this22:25
beunoschmichael, you downloaded the bzr 1.5 tarball?22:30
schmichaelbeuno: using debian sid packages on my desktop and easy_installed 1.5 tar ball on my etch server22:30
schmichaelbzr push on my desktop shows 'Using saved location ...', the doesn't-update-working-copy warning, then '/ (0,0)' displays briefly22:31
schmichaelthat disappears and it just hangs22:31
schmichaelthe push has already completed (its on the server), so i just hit ctrl-c to exit22:32
beunoschmichael, can you take a look at the ~/.bzr.log?22:33
beunothere might be some information there22:33
schmichaelbeuno: thanks for the tip, this looks revealing: http://pastebin.com/m310f07c622:36
schmichaelseems the dbus plugin is to blame?22:36
LaserJockhmm, can you use bzr-svn to separate svn branches into separate bzr branches in a shared repo?22:37
beunoschmichael, yes it is  :)22:37
schmichaelbeuno: removing bzr-dbus fixed it!  thanks!22:38
jelmerLaserJock: yes22:39
jelmerschmichael: please file a bug22:39
schmichaeljelmer: with debian?22:39
* schmichael hates debian's bts22:39
beunoschmichael, you're welcome  :)22:40
beunojelmer, is a bug in order?  he's not using bzr from the debian repo22:40
LaserJockjelmer: I'm trying  bzr svn-import --all --trees <svn repo>, would that work?22:40
schmichaelbeuno: i am actually22:40
schmichaellocally its from debian sid22:40
LarstiQschmichael: the easy_installed one?22:40
schmichaelLarstiQ: nope, that one works fine (no dbus plugin installed on the server)22:40
schmichaelsorry for the confusion22:41
schmichaelits only on my debian sid desktop using debian's bzr 1.5 packages22:41
jelmerLaserJock: yes22:42
LaserJockjelmer: how do I then update my branches? bzr pull ?22:43
LaserJockI'm a little confused as to the relationship between svn-import and just using bzr branch <svn repo>22:44
jelmerLaserJock: yes22:45
jelmerLaserJock: think of "bzr svn-import" as a series of "bzr branch" commands22:45
LaserJockahhh22:45
LaserJockjelmer: wow, that's pretty sweet22:49
LaserJockjelmer: is there a way to update the whole shared repo?22:50
jelmerLaserJock: only the existing branches in the repo22:50
jelmer"bzr multi-pull"22:50
jelmeralthough "bzr svn-import" should work incrementally as well22:51
LaserJockyeah, ok I think this is perfect22:51
LaserJockI won't be pull'ing tags and usually only one branch at a time anyway, but multi-pull is just what I was looking for22:52
pooliegood morning23:02
jammorning poolie23:03
beunomornin' poolie23:04
pooliejam, hi, we were going to talk now iirc23:04
pooliehello beuno23:04
jampoolie: I'm sure you're right, I should get this on my schedule :)23:05
jampoolie: I have skype, and I'm ready when you are23:07
visik7morning ?23:07
pooliemorning visik723:07
visik7where are u ?23:08
pooliesydney23:08
visik7cool I was there last summer23:09
visik7but too much one way only roads for my liking23:11
TheSheepdoes bzr allow me to save metainformation on files? like, for example, a comment?23:36
mwhudsonTheSheep: no23:38
TheSheepmwhudson: thanks23:40
beunoTheSheep, of course, there is some potention for a plugin there...23:40
beunoyou might want to mail the list and see if someone catches on with it  ;)23:40
TheSheepbeuno: nah, it's not that important23:41
TheSheepbeuno: besides, my use case is far from common23:41
beunowell, bzr is all about uncommon use cases, but, I won't insist23:43
PengGooglebot is having lots of fun downloading all of my knits. :)23:44
beunomueheheh23:44
beunoshould be interesting to see what they do with that23:44
PengIt already indexes some bundle files, and occasionally people search for weird things and find them.23:54
LaserJockdang, bzr multi-pull is so sweet23:55
igcmorning23:56
LaserJockI was just going to write shell scripts to go through and update all my VCS checkouts23:56
LaserJockfor bzr all I have to do is cd bzr/ && bzr multi-pull23:56
jammorning igc23:56
beunoheya igc23:57

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