/srv/irclogs.ubuntu.com/2008/06/01/#bzr.txt

nDuffI was just talking to a git user who indicated he was turned off by bzr's branches-as-directories model. I'm curious -- has an alternate approach been introduced since I was last current, or is that still the only branching model from a UI perspective?00:07
Kamping_Kaiseri think its the same00:07
=== thumper_laptop is now known as thumper
=== rockstar` is now known as rockstar
=== rockstar` is now known as rockstar
sabdflnDuff: you can work differently, if you prefer07:03
sabdflyou can have a shared repo which has all the revisions for all of your branches07:03
sabdfland "treeless" branches inside that. those are subdirectories, but just include the branch info, so they are basically invisible07:04
sabdflthen, you can have a single checkout of one of the branches somewhere, which is where you work07:04
sabdfland you can "switch" that checkout from branch to branch07:04
sabdflwhen you switch, the working directory gets changed to reflect the tip of the branch you just switched to07:04
sabdfland then when you commit, the new revision goes into the shared repository, and metadata for it is added to the branch you are working on07:05
sabdfldoes that make sense? shout if i have not explained it well07:05
sabdflbut this is one of the beauties of bzr - the pieces are orthogonal, so you can have a workflow that suits you07:06
sabdflmuch more easily than any of the other dvcs'07:06
cammoblammoUmm, sabdfl, nDuff posted that abut eight hours ago. It's a pretty good explanation though, and I found it quite useful!07:06
sabdflcammoblammo: thank you! he's still logged in as nDuff so perhaps he'll spot the response later07:07
cammoblammo;-)07:07
timelyhello world08:31
timelycan someone help me get lost in bzr documentation?08:32
timelyalternatively, can i edit the bzr wiki w/o some magical bits?08:34
sabdfltimely: you can easily do both, i think08:37
sabdflare you wanting to contribute to the docs or the wiki?08:37
timelyi don't really want to do either. but there are grammatical errors on http://bazaar-vcs.org/Integrating_with_Bazaar so i figure if it doesn't require lots of effort, i'm willing to make a wiki account to make some changes08:39
timelyi'm trying to write some perl based integration to 'dead bzr trees'08:39
timelyi.e. a file system copy of a bzr repository (where there may or may not be a valid or useful instance of bzr installed)08:39
timelymostly, i need to be able to figure out how to generate links to what i guess is bzr web08:40
timelyalthough i have no idea what its formal name is08:40
timelyprobably loggerhead actually, i guess08:41
timelynice (503) http://www.lag.net/branches/loggerhead/loggerhead_dev/08:43
timely(empty) http://www.lag.net/robey/code/loggerhead/08:43
* timely sighs08:43
TFKyletimely: might want to look at the branches on launchpad08:43
timelyi08:45
timely'm there08:45
timelyi'm quite lost08:45
timelyall i want to know is08:45
timelygiven (.bzr/*, path/filename) how to calculate a url for a "log view" pinned to path/filename for the version controlled by .bzr/* and an annotation view for the same08:46
timelyi do not intend to read 1000 branches of a project just to figure out there's no useful documentation :)08:46
timelyhttps://bugs.edge.launchpad.net/launchpad-bazaar/+bug/98826 seems to be what i want08:49
timelyalthough i can't figure out if the loggerhead i have available supports it08:49
timelycertainly the one i'm talking to is generating the other url format... which is amazingly unhelpful :(08:51
timelyanyway... do i need to do more than simply create a wiki account to edit that first url?08:52
timelyif not, i'll create an account and change it. otherwise, i'll stop considering08:53
timelyhttps://code.launchpad.net/loggerhead it says You can _browse the source code _for ...08:53
timelyis that part of loggerhead's content or is that launchpad itself being clever?08:54
jmltimely: the link from code.launchpad.net is generated by Launchpad.08:56
jmltimely: but maybe I'm misunderstanding the question?08:56
timelythe space after 'code' is underlined as part of the link08:57
timelyone doesn't typically do that. it's an error in the html08:57
jmltimely: right. that's a bug.08:57
timelyeither because someone left a space in raw html, an input field, or in the generator08:58
timelybut i need to know which  :)08:58
jmltimely: I'm not sure why you need to know.08:58
timelyi only want to send one report to the right team :), but i will report it :)08:58
jmltimely: oh I can file the bug.08:59
timelyok :)08:59
jmltimely: I'm on the relevant team :)08:59
jmltimely: https://bugs.launchpad.net/launchpad-bazaar/+bug/23645209:00
timely:)09:01
timelyok, so http://bazaar-vcs.org/Integrating_with_Bazaar Committing Changes09:02
timelyTo commit only certain files, we need to provide a list of filenames which we want committing, eg:09:02
timelyshould be  "we want committed" or "we want to commit"09:03
timelyfwiw, "e.g." should be spelled w/ <period>s (always)09:04
jmltimely: you should just be able to edit the wiki page.09:04
jmltimely: and yes I agree with both of your points.09:04
* timely tries to create an account09:05
timelygah09:05
timelyoh brother09:07
timelyif i error in changing the wiki page, it clears all my changes and says "please specify a password"09:07
timelyhow helpful...09:07
* timely tries to figure out what to make of "spread over itself"09:12
timelyit sounds like a harlot09:12
timelydistributed between itself (?)09:12
timelyRemoving Files09:15
timelyYou can remove multiple files at once.09:16
timelywhat does "at once" mean?09:16
timelydoes it mean "together" or "immediately"?09:16
jmltogether.09:16
timelyoriginally i assumed the latter, but.. thanks09:16
jml"at the same time"09:16
timelyshould i take a lock on this url so that i don't collide with anyone else? :)09:16
jmlkeep hitting preview.09:16
timelyi'm using TextEdit.app because my browser sucks :)09:17
jml"This gives us a WorkingTree object, which has various methods spread over itself, and its parent classes MutableTree and Tree" could be rephrased to:09:17
timelynote that there's an instance of "its" that should be "it's" somewhere nearby (already fixed locally)09:17
timely(this page clearly wasn't written by someone who cares about English :)09:18
jml"This gives us a WorkingTree object, which has methods provided by itself and by its parent classes: MutableTree and Tree."09:18
timelysold09:18
timelyYou can rename one file to a different name09:19
timely... can i rename one file to the same name ? :~(09:20
jml"You can change the name of a single file"09:20
timelythanks09:20
timelysorry, it's a lot easier for me to spot bugs than come up w/ proper fixes :(09:20
jmltimely: btw, looking at the changelog for the page, lots of changes are made by people who don't speak English as their first language.09:21
timelyfwiw, the document isn't sure if it's speaking in second or first person plural09:21
timely(you can, we)09:21
timelyif you have a preference ...09:21
jmltimely: I'd default to "you", but just pick whatever you think is best.09:22
timelyyou sounds fine, i'll do that later09:22
timelyactive voice i presume?09:22
timelyactually,09:22
* timely goes back and start attacking we's09:23
jmltimely: standardizing on voice doesn't bother me so much. who cares as long as it sounds good.09:23
jmlbut sure, active works.09:23
timelygah.. note to self, watch out for misuse of a(n)09:24
timelywill preview tell me if i hit a conflict? :)09:33
timelyIMPORTANT: This should be avoided wherever possible, as it scales with the09:33
timelylength of history::09:33
timely"scales" ... alternative suggestion? typically people think of "scales" as a positive thing09:34
timelyhttp://bazaar-vcs.org/Integrating_with_Bazaar?action=diff&rev2=34&rev1=3309:38
timelyi hope that's not too bad09:38
timelysadly it doesn't really help me w/ my original problem... but :)09:38
timelyeww, loggerhead actually requires its own webserver?09:40
jmltimely: re 'scales': there's not enough info to suggest a replacement.09:43
jmltimely: "the time/memory/bandwidth this takes increases proportionally to the length of history."09:44
jmltimely: I don't know which one.09:44
jmltimely: re loggerhead: it runs it's own webserver but you don't have to present it to the wold09:44
jmlworld, rather.09:44
jmlyou can use Apache's ProxyPass features.09:44
timelycontext was the performance behavior of "branch.revision_history()"09:45
timelycan it actually be bandwidth? i.e. could i be talking to a remote bzr?09:46
timelyincreases proportionally is indeed better09:46
jmltimely: you definitely could be talking to a remote repository.09:47
jmltimely: branch = Branch.open('http://example.com/some/branch') works just fine.09:47
timelyso i guess i should copy your entire string... ok, when i'm done figuring out which bzrs i actually have locally, i'll worry about that09:49
jmltimely: oh that reminds me.09:49
jmltimely: using Python to interact with Bazaar will be faster, easier and more flexible than using Perl.09:50
timelythat's nice09:50
timelysadly, this is just support for an existing tool09:50
jmltimely: I just thought I'd mention it :)09:50
timelyand i'm not going to teach myself python just to integrate with one vcs09:50
timelywhich i will use almost never09:50
* timely nods09:51
sabdfltimely: fwiw, you can use Bzr with most VCS's, if that makes it worth learning more Python09:51
timelyno09:51
timely:)09:51
timelyfor my day job, i use c++/js09:51
sabdfland which vcs there?09:52
timelyin my free time, i work on a fairly old and relatively stable tool (mxr.mozilla.org)09:52
timelywell, at times it's using hg, or git, or cvs, or svn, or bzr, or non vcs'd stuff09:52
timelyi think i have trees from p409:52
timelyand typically the integration hooks aren't things that are really known or usefully knowable from most tools09:53
timelysince it's "where's your web ui" "how do i ask for blame" "how do i ask for log"09:53
timelythose are rarely usefully standardized (if ever)09:53
sabdfltrue09:53
timelyheck, in a lot of cases there's no link between the vcs and the web ui at all :009:53
timelyas for pull commands, my standard cases don't use simple pulls09:54
timelythey use complicated (or very complicated) checkout scripts09:54
timelysorry... i'm the edge case... i know most people do benefit from such hints...09:54
pygiok, quick question folks09:55
pygibzr: ERROR: Cannot lock LockDir(http://bazaar.launchpad.net/%7Elibburnia-team/libisofs/mainline/.bzr/repository/lock): Transport operation not possible: http does not support mkdir()09:55
pygiwhen I try to push to lp:libisofs09:55
pygiI also tried lp:///libisofs09:55
beunopygi, you need to run:  bzr launchpad-login username09:56
beunoit's defaulting to http as you haven't set up a username  :)09:56
* timely presumes it needs https09:56
sabdflit will switch to bzr+ssh when you have logged in, assuming you've setup an ssh key09:56
beunoAFAIK, bzr 1.5 does a better job at explaining this. Are you using 1.3, pygi?09:58
pygibeuno, on this machine, yes :)09:58
* sabdfl thinks we should push bzr 2.0 out to stable distros when it's baked09:58
pygisabdfl, beuno : thanks ;)09:58
beunosabdfl, at this rate, it sould be able to get into Lenny, and, well, I presume you'll be able to get it into Hardy as well  :)09:59
gourpygi: opet se srećemo ;)09:59
pygigour, hehe :)09:59
timelycan i ask questions about loggerhead here? (again, i don't speak python)10:00
pygitimely, you can try :)10:00
jmltimely: yeah, this is the best channel for loggerhead questions.10:00
timelyi read the README and made a loggerhead.conf10:00
timelyi did not run make because the README made no mention of it10:00
gourpygi: kupih samsunga 204...prži sve u 16. stara pržilica mi izderala par cd/dvd-a10:00
timelyit did say to run start-loggerhead10:00
timelyFile "./start-loggerhead.py", line 3, in ? ... ImportError: No module named pkg_resources10:01
pygisudo apt-get install python-pkg-resources ? :)10:01
timelyi don't own this computer (i never own computers), i did not configure or install bzr (although some random unknown version is installed), there are many random (unspecified/unknown) versions of python here10:01
timelyno :)10:01
beunotimely, loggerhead has a set of dependencies which aren't very clearly layed out. You need turbogears and sqlite to start with10:02
beunolet me check what else10:02
timelykeep in mind what i said. i don't own this box. that means i'm not and can not be root :)10:02
beunotimely, ah, that may be a problem then  :)10:02
sabdfltimely: then ask your admin to pop in here?10:02
timelyi'm not specifying the linux distribution (it is linux)10:02
timelyin general when things are installed by the admin, they make things worse, not better :)10:03
timelyso, if there are instructions for local install, i'll follow them :)10:03
timelyit's 2am, i'd hope he's sleeping :)10:03
beunotimely, well, loggerhead is complicated enough to get working with root access, I suspect that with just local install, it may prove to be a challenge10:04
timely...10:05
beunowe'de really like to trim down dependencies for it, but it currently has a set of performance issues which are more pressing10:05
timelynote: if i actually could get the admin here, i could just ask him to upgrade his loggerhead install :)10:05
timelyin which case... why would i bother setting it up in the first place? :)10:06
timelyalso... something that needs root access doesn't exactly inspire trust :)10:06
pygibeuno, he could install py and all the deps in   his home dir10:06
timely[timeless@landfill mxr-test]$ which hg10:06
beunotimely, there is another web interface for bzr: http://bazaar-vcs.org/WebInterface10:06
timely /home/timeless/bin/hg10:07
beunohttp://goffredo-baroncelli.homelinux.net/bazaar10:07
timelybeuno: ... the point of this is to integrate w/ existing things...10:07
timelyi suppose i could setup that one just to integrate w/ it10:07
beunoit's basically a plugin for bzr, so it should work pretty much out of the box10:07
timelybut my target is integrating http://mxr-test.landfill.bugzilla.org/bugzilla-bzr/source/ with http://bzr.everythingsolved.com/bugzilla/trunk/changes10:08
beunointeresting10:09
timelyotoh, there's also bugzillamozilla-bzr which doesn't seem to have any web ui10:09
timelyso i suppose i can simply run WebInterface for that and integrate w/ it first10:09
beunotimely, there is some work going on in Loggerhead (I've been doing lots of it these past weeks), so it should be looking better very soon10:10
timelymaybe i should leave an email address and you can ping me when i should look again..10:10
timelyi was getting annoyed w/ hg and decided i'd look to see how hard integrating bzr would be10:10
timelyit doesn't seem promising :)10:11
beunotimely, well, bzr does have an xml-output plugin, which is commonly used to integrate into different external tools10:11
* jml is going offline.10:11
timelyhttp://mxr-test.landfill.bugzilla.org/mozilla-central/source/xpcom/Makefile.in10:11
beunomaybe that is worth looking at10:11
jmltimely: good luck with the integration.10:12
timelythe integration for hg is basically the "HG Log" and "HG Blame" links at the top10:12
timelyjml: thanks10:12
timelybeuno: how many output flavors does the plugin generate?10:12
timelyso far i've seen 2 different .bzr formats10:13
timelyand i have no faith in xml flavors10:13
timely(i've also seen and support 2 .svn formats)10:13
beunotimely, it doesn't relate to bzr's format, it works on a higher level10:13
timelyyes, but have you *changed* the xml it generates?10:13
timelyand will you change it *again*?10:14
timelythe wonderful thing about xml is that no one seems to care about not breaking compatibility10:14
timelyjust like internal repo formats10:14
beunotimely, it hasn't in at least 8 months, and, it's commonly used, so we're *very* careful not to10:14
timely8months? hah10:14
timelythe projects i work on are 10+years old :)10:14
timelythings that only change every 8months....10:15
timelythat'd set me back years :)10:15
beunoI've been using it for over a year in integrating into a PHP aplication, and the Eclipse integration uses it too10:15
timelybut yeah, i understand... and if every month you say it hasn't changed in 8+n months, then eventually that's a good thing :)10:15
beunotimely, well, the plugin is barely over a year old, so...10:15
timelysorry, i'm jaded...10:15
beunoheh10:15
beunoyou can always *not* upgrade and keep using the same format10:15
timelynope10:16
timelyi don't control what other people use10:16
timelyi'm a middle person10:16
timelyif someone tries to use my tool, they'll use it w/ whichever version of other tools their distro provides10:16
timelywhich on average will be *different* from the one i picked10:16
timelyand no. i don't want someone forking mxr10:16
timelythere are already way too many forks of lxr, thank you very much :)10:16
beunoalright, well, what can we do to help you?10:17
timelywell... do most of these web uis accept the "global repo version" for any file path?10:17
timely(minus the ones that seem to require some private id instead of a file path)10:18
timelyif so, how do i get that?10:18
timelyi really suspect all i need is that one identifier10:18
timely(and a non sucky version of loggerhead, which seems to be something i'll have to sleep on)10:18
beunowell, it uses file_ids, but it wouldn't be too hard for it to accept paths as well10:18
LarstiQwhich gets fun with history viewing, the path in _this_ version, or in _that_ version?10:19
timelyhttps://bugs.edge.launchpad.net/launchpad-bazaar/+bug/9882610:19
timelyLarstiQ: why is it fun?10:19
timelyi only ever have a single version of the repo in front of me10:19
beunoif you'd like, you can drop me an email (or, to the public bzr list), with what you need, and I can try and fit it in10:20
beunoLarstiQ, I think he just wants HEAD10:20
timelya user says "<file here>" "<show me log> for it"10:20
timelyi'm not sure it's necessarily head10:20
timelyalthough i don't want to look up your definition of HEAD10:20
timelybut i can assure you that the repo will be in a state so whichever it is, the repo will know10:20
LarstiQtimely: I don't know how mxr works, does it not do any navigating in history at all?10:20
timelycorrect10:20
timelyit merely links to someone else who provides that10:21
timelyall it works on is a flat checkout of a <foopy>10:21
timelyhow convoluted foopy may be depends on the checkout scripts10:21
timelythere might be a mix of .hg,.svn,.git,.bzr,CVS,.p4,nothing w/ random inconsistent versions for CVS and SVN10:22
LarstiQugh10:22
LarstiQwell, not your problem then.10:22
timelyright... it's not a problem10:22
timelyas long as i can get the identifier that defines the .bzr state for the directory containing the file10:22
timelyi'm perfectly happy10:22
timelyand i believe *that* shouldn't be so hard10:23
LarstiQright10:23
* timely presumes that bzr pull for an unmodified .bzr is functionally equivalent to cvs update for an unmodified CVS10:24
LarstiQtimely: ignoring weird cvs update corner cases, yeah10:25
timelythen why didn't it work? ;-)10:25
LarstiQ"just give me the same state as they have over there, kxthbye"10:25
timely[timeless@landfill bugzilla]$ [ -d .bzr ] && bzr pull10:26
timelybzr: ERROR: No pull location known or specified.10:26
LarstiQtimely: I don't know, what is it not doing you expected it to do?10:26
LarstiQtimely: right, as the error said10:26
timelymy cwd is the parent of http://mxr-test.landfill.bugzilla.org/bugzilla-bzr/source/.bzr/10:26
LarstiQtimely: it doesn't know where to pull from10:26
timelyman says:10:27
timely       bzr pull [LOCATION]10:27
timely              Turn this branch into a mirror of another branch.10:27
timelytraditionally [] means optional10:27
timelyam i misreading man?10:27
LarstiQtimely: it is optional if the pull location is remembered10:27
timelyhttp://mxr-test.landfill.bugzilla.org/bugzilla-bzr/source/.bzr/branch/bound10:27
timelyexists10:27
timelyand points to what i think is the right answer10:27
LarstiQtimely: you're using a checkout?10:27
LarstiQtimely: try 'bzr update' instead then10:27
timelyok, that worked10:28
LarstiQif you're always using checkouts, stick with update10:28
LarstiQtimely: just to have mentioned it, although you don't need it, if you do 'bzr pull <location>' once, it will remember that as the pull location.10:29
LarstiQtimely: If you want to then once pull from somewhere else, 'bzr pull <location2>' will get data from location2 but still remember location1 as where it should normally pull from10:30
LarstiQtimely: bzr pull <location2> --remember to override that10:30
timelyso what did i do wrong the first time such that it didn't remember?10:31
timelyalso, does bzr update understand if it's talking to a tty?10:31
timelyspecifically, i don't mind the output at the end where it says what merged, but i don't want the progress indicator since this is being redirected to a file10:32
beunotimely, adding --quite should do the trick10:33
timely--quiet / -q, i found that10:34
timelybut i kinda expect that to silence everything10:34
timelyoops10:34
* timely kicks self10:34
* timely has a slightly too greedy regexp10:34
* timely tries to figure out how to handle it10:34
LarstiQor you can use BZR_PROGRESS_BAR=tty,dummy,none,dots10:35
beunowell, I'm off to bed again10:35
LarstiQbeuno: sleep well10:36
beunotimely, if you have any remaining questions/requests on loggerhead, don't hesitate to mail the list, or myself (argentina@gmail.com)10:36
LarstiQtimely: why pull didn't have a pull location at first, you used a checkout instead of a standalone branch, which is a different model10:36
beunoLarstiQ, thanks, and good to see you around here  :)10:36
LarstiQtimely: if you were to 'bzr branch <foo>' instead of 'bzr checkout <foo>', it would have it's default pull location set10:36
LarstiQtimely: if you try do pull in a checkout, it will instead run pull on the branch it is bound to10:37
* timely boggles10:37
timelydistributed rcs is too complicated for my tiny little mind10:38
timelybeuno: thanks,10:38
LarstiQtimely: well, you're mixing centralized and decentralized workflows :)10:39
timelywell... i'm a readonly consumer10:40
timelyi should only ever have one upstream, and i just want the latest and greatest10:40
timelyoh, and i'm a robot, did i mention that?10:40
timelythinking is really way too complicated for me :)10:40
LarstiQtimely: right, so 'bzr checkout <upstream>' once, 'bzr update' always after that, should cover your use case perfectly.10:41
timelyright, which is probably why i used bzr checkout in the first place10:41
timelystupid question. would it hurt bzr to suggest "did you mean bzr update" when i do bzr pull?10:41
timelyif this tool were an opensolaris tool, i suspect it'd have said that10:41
timelynote: that's a non interactive error, the user should be forced to type the correct thing at a new prompt10:42
LarstiQtimely: maybe10:43
timelyin unrelated bits, can i demote a pull to a checkout?10:43
timelysince i think the second bzr repo i made was a branch instead of a checkout10:44
LarstiQtimely: detecting the case where you're in a checkout and have no pull location would be doable. But what if the pull location _is_ set?10:44
LarstiQtimely: you can convert a standalone branch into a checkout and vice versa with bind/unbind10:44
timelyi'm not sure what that means :)10:44
timely(to the former)10:44
timely(which doesn't mean i can't parse your English, just that i don't speak bzr)10:45
LarstiQtimely: that means I'm not sure if suggesting to use update instead of pull is a good thing to try to do.10:45
timelyno, that part i understood10:45
timelywhat i don't understand is what it means conceptually to have both a checkout and a pull source10:46
LarstiQtimely: Ah.10:46
LarstiQtimely: Are you sure you want to know this? It gets rather decentralized :)10:47
timelyi'll live, if it means i get a chance to convince you to improve the error reporting :)10:47
timelyall of the work i'm doing these days is decentralized10:47
LarstiQok10:48
timelybut... i don't drink, so stop if it sounds like you'll force me to drink :)10:48
LarstiQtimely: First, remembering a pull location or the bound branch is just storing data, that in itself doesn't change the behaviour.10:48
timely"which behavior" :)10:49
LarstiQtimely: right. The behaviour of it beign a standalone branch or a checkout.10:49
LarstiQtimely: In a standalone branch, your workflow would be: branch once, pull/push after that, respectively to the remembered pull and push locations.10:50
LarstiQtimely: in a checkout, your workflow would usually be to checkout once, or otherwise bind a standalone branch, and then use update/commit for sending over revisions.10:51
LarstiQtimely: (obviously, in a standalone branch you also need to commit, but the act of sending it across the wire is decoupled into pull, whereas with a checkout a commit makes a new revision _and_ pushes it out to the master)10:51
LarstiQtimely: Now, using pull in a checkout is also possible, but it doesn't do the same thing as in a standalone branch.10:52
LarstiQtimely: pull in a checkout will update the branch it is bound to, as well as the local version10:53
=== pbor|out is now known as pbor
LarstiQunless I've been gone too long and I'm severely mistaken10:53
LarstiQtimely: as beuno said, I haven't been around in a while10:54
* timely missed that last bit by beuno10:54
timelybut ok :)10:54
LarstiQanyway10:54
LarstiQtimely: I'm going to start my day in a couple of minutes, do you have enough information for now?10:56
timelyso pull in a checkout is kinda like changing branches (but potentially or likely changing repos which isn't something that i care about)10:57
timelyi  think it's a non issue10:58
timelyanyone doing pull in a plain checkout will get an error the first time10:58
timelywith a suggestion to do update10:58
timelyanyone who actively uses pull w/ a url "knows what they're doing"10:58
timelyand the next time they do a pull, they'll get what they want10:58
timelyhowever, anyone doing pull in a checkout w/o a url doesn't know what they're doing10:59
LarstiQI'm not so sure.10:59
timely(i.e. me) and just wants an error w/ a suggestion10:59
LarstiQtimely: it's perfectly legitimate to run pull without any arguments in a checkout.10:59
timelybut it errors!10:59
timelythat's what started this conversation :)11:00
LarstiQtimely: only in this very specific case11:00
LarstiQtimely: And as I said, that can be detected and warned about. But I fear there are more cases where someone doesn't know what they're doing and we can not detect it.11:01
timelypersonally, my general view is that you should add warnings/errors where possible11:01
LarstiQtimely: but yeah, I don't know.11:01
timelyinstead of throwing up your hands and saying "we can't be perfect"11:02
* LarstiQ can't think this through right now.11:03
timely   bzr pull [LOCATION]11:03
timely           --remember                Remember the specified location as a11:03
timely                                     default.11:03
LarstiQtimely: but feel free to suggest it to someone who has actually been working on bzr lately :P11:03
timelyEnglish nit: "how many defaults can bzr have for a single repo"?11:03
timely"a default" ^11:03
LarstiQtimely: unlimited11:04
LarstiQbut I see what you're getting at.11:04
timelygood. because i really don't want to hear the explanation for your answer :)11:04
LarstiQthere is no limited to the amount of branches in a repository ;P11:05
LarstiQI do think you meant to say branch, and in that case, it's not unlimited.11:05
LarstiQvcs lingo yay11:05
timelyi didn't say branch11:05
LarstiQright11:06
timelyoh11:06
LarstiQtimely: and the default is on a per branch basis.11:06
timelybah. i was trying to be so careful11:06
timelyi should have said .bzr/11:06
timelywould that have been any more or less ambiguous?11:06
LarstiQwell, there is {.bzr/repository,foo/.bzr/branch} etc11:07
LarstiQtimely: more ambiguous11:07
timelygah.11:07
LarstiQtimely: You find a .bzr in 3 locations: repositories, branches, and working trees.11:07
timelyi'll settle for you understanding what i meant and praying you'll find someone who can fix the docs to be less strange :)11:07
LarstiQyou find 'a default' strange?11:08
timelyyes11:08
LarstiQI'm not native enough to do so.11:08
timelynormally you'd write "the default"11:08
timelyif you don't mean "the default" then you should write "the default for <x>"11:09
LarstiQright11:09
LarstiQthat is possible11:09
timelypart of the definition or meaning of default is that it is the *one* that would happen11:09
LarstiQ'for this branch.'11:09
timelyit's supposed to be unique11:09
LarstiQtimely: per thingy11:09
timelyso it isn't legal to say "a default"11:09
LarstiQeh, I disagree :)11:09
timelybecause "a default" implies that there's more than one11:09
LarstiQbut there is! In the context of stuff to remember for a branch.11:09
timelypull in the context as "the default for the branch"11:10
LarstiQI can see your viewpoint, sure.11:10
LarstiQtimely: and I wouldn't mind a patch for it, but I won't be doing it myself.11:11
timelyi'll write one if i can figure out how11:11
timelydo i checkout or branch ;-?11:12
LarstiQwith that, I can help you.11:12
LarstiQtimely: branch.11:12
timelygrr11:12
timelyok, so much for me not teaching mxr about bzr branching11:12
LarstiQtimely: you want to commit in this case11:12
LarstiQtimely: you don't have access to upstream to do that.11:13
timelygimme a bit, i need to switch computers to one which will have a different mxr and probably a different bzr11:13
LarstiQtimely: a checkout is possible, but then you have to commit --local, or unbind11:13
timely-bash: bzr: command not found11:13
timelythis is going to be so much fun11:13
LarstiQluckily, bzr works very well from source, no need to install11:13
timelysomeone said the same thing about hg11:14
timelythey were wrong11:14
timelypython doesn't work very well from anywhere :)11:14
LarstiQhg needs to compile things11:14
timelynah11:14
timelythe problem w/ hg was python include paths11:14
timelynothing to do w/ building11:14
timelyeverything to do w/ the fact that once it was built, it wouldn't run11:14
timelyc.f. loggerhead11:14
LarstiQOk, no clue about that, I only know their diff algorithm is written in C.11:15
* timely shrugs11:15
timelyit's pluggable, but let's stick to bzr11:15
LarstiQtimely: right11:15
timelyyou can eat the runtime bridge when i come to it :)11:15
timelyhttps://launchpad.net/bzr/1.5/1.5/+download/bzr-1.5.tar.gz ?11:16
LarstiQtimely: download source, unpack, possibly symlink or alias 'bzr' to unpacked-source/bzr, and go11:16
LarstiQtimely: that should work I guess11:16
timely03:16:24 ERROR 303: See Other.11:16
timelyyeah right11:16
LarstiQtimely: just to be sure, what python version do you have there?11:16
timelyPython 2.3.5 (#2, Oct 16 2006, 19:19:48)11:16
timely:)11:17
LarstiQugh11:17
LarstiQI'm afraid that won't really do.11:17
timelyi have python2.2 if you prefer ;-)11:17
LarstiQNo, I prefer 3.0 ;P11:17
LarstiQNah, 2.4 or 2.511:17
timelypython2.4 maybe?11:17
timelythat i have11:17
timelyit isn't the default...11:17
timelyPython 2.4.4 (#2, Apr 29 2008, 08:45:14)11:17
timelypython3.0 is useful in that it isn't compatible w/ 2.x11:18
LarstiQis it in your PATH?11:18
LarstiQtimely: right, I was joking11:18
timelyexcept of course, 2.5/2.4/2.3 aren't really compatible w/ eachother either11:18
LarstiQtimely: it not being compatible is the exact reason of existance11:18
timelyeach time someone tries to change the default, a half dozen apps break here11:18
* LarstiQ shrugs11:18
timelyyeah yeah11:18
timely[sanjay]$ which python2.4 => /usr/bin/python2.411:19
LarstiQI'm assuming /usr/bin is in your PATH :)11:19
* timely loves how python gave a timestamp but didn't mention a timezone11:19
timelyheh... for now anyway11:19
timelyuntil perl taint makes me take it away ;-)11:19
timelyso anyway... i got 303 which broke wget11:20
timelywhich is um... cute11:20
LarstiQtimely: my wget follows 30311:21
timelyoh11:21
* timely wonders if this is a shell problem11:21
LarstiQtimely: https://launchpadlibrarian.net/14566578/bzr-1.5.tar.gz11:21
LarstiQtry that11:21
timelythat works better11:22
LarstiQtimely: got it unpacked?11:23
timelyok, i am here: http://timeless.justdave.net/mxr-test/bzr/source/11:23
timelyok, so... arg11:25
* timely sighs11:25
* timely tries to remember the syntax11:25
LarstiQdoh11:26
LarstiQLocation isn't specific to pull.11:26
LarstiQtimely: http://timeless.justdave.net/mxr-test/bzr/source/bzrlib/option.py +53811:27
LarstiQtimely: and http://timeless.justdave.net/mxr-test/bzr/source/bzrlib/builtins.py for the actual commands11:27
timelyfwiw, the search engine should work now :)11:28
LarstiQtimely: you'll notice the 'remember' option being used in several commands11:28
timely"the default for this command" ?11:29
LarstiQhmm, the default location for this command maybe11:29
LarstiQtimely: nice to see LXR isn't actually as dead as a parrot as I thought.11:30
LarstiQtimely: oh, it seems you could do a pull specific help if you really wanted to.11:30
LarstiQtimely: ala http://timeless.justdave.net/mxr-test/bzr/source/bzrlib/builtins.py#426811:31
LarstiQtimely: to see that in action, look at 'bzr help send' or 'bzr help bundle' output11:31
timelyso um... real life calls11:32
timely(quite literally actually)11:32
LarstiQyeah, here as well11:32
timelywell, i claim the global option was buggy11:33
timelysince 'a default' is never right :)11:33
timelybut we can do two changes11:33
timelyone "the default for this command" for global and something more specific for pull11:33
LarstiQright11:33
LarstiQyour call :)11:33
timelyanyway, glad you aren't having trouble using mxr :)11:33
* LarstiQ used to use lxr11:34
timelythe name change was just to slightly reduce the confusion about how different we are from the other 2 forks11:34
timelywhich are fairly dead and so far forked from us that well...11:34
timelyanyway, quickly. how do i build? :)11:34
LarstiQbuild what?11:34
LarstiQbzr? I don't :)11:35
LarstiQtimely: assuming you've made the change, you should be able to immediately see the effect by invoking the bzr there11:35
LarstiQso; cd bzr-1.5; vim bzrlib/option.py; ./bzr help pull11:35
timelyyeah but um11:35
timelyoh11:35
timelyperfect11:36
timely[sanjay]$ ./bzr status => bzr: ERROR: Not a branch: "/home/timeless/mxr-root/lxr-data/bzr/bzr/".11:36
LarstiQis that an unpacked tarball, or an actual bzr branch?11:37
timelyoh brother11:37
timelyunpacked11:37
timelystupid stupid debian stupid stupid11:37
timelytm11:37
LarstiQah yes, that wouldn't be a branch :)11:37
timelythat would be useless11:37
LarstiQtimely: well, you can send of a plain diff11:37
LarstiQor if you want actually get a copy of bzr in bzr :)11:38
timelyhttp://timeless.justdave.net/mxr-test/bzr/source/README?force=1#6611:38
LarstiQbzr get http://bazaar-vcs.org/bzr/bzr.dev for the latter11:39
timelyhas a comma that doesn't belong11:39
LarstiQhow so?11:39
timelyX or Y. A, B or C. OR A, B, or C. but NOT X, or Y.11:39
timelybtw, i had to fix mxr just to give you that link...11:40
LarstiQI see it as a bijzin and not a list.11:40
timelybijzin?!11:40
LarstiQBut hey, you're the English native speaker ;)11:40
LarstiQtimely: no clue what that is called in English.11:40
LarstiQtimely: read that as: I don't really care, but if you're willing to spend effort on things like that, I'm not stopping you.11:41
timelyok :)11:41
timelyanyway, that's why i grab sources11:41
timelyif i'm going to make changes, i'll probably make lots11:41
LarstiQit costs more energy to argue for an alternative in my eyes correct reading than just accepting your patches :)11:41
timelyalthough whether i manage to upstream them is another story11:42
timelyi think you can find my tt forks on that mxr somewhere11:42
* timely hits the wiki warning that cloning bzr takes time11:42
LarstiQtimely: can you manage from here? If so I'll get back to real life again.11:44
timelyyeah11:44
LarstiQk, see you later perhaps11:44
timelyonly other question is how changes should be sent11:45
timelysome sort of thing showing 1000 commits, one commit per file11:45
timelyor one commit per style change for the repo11:45
timelyor one commit for the whole repo11:45
LarstiQone branch per topic11:46
LarstiQbzr send will roll all the commits up11:46
timelydo branches mean distinct parents of .bzr's?11:46
timelyor can i sorta commit into the same repo swapping branches as i go11:47
LarstiQtimely: I think you're conflating repo and branch11:47
timelydh is picky about non web served content that it thinks is "Backup"11:47
timelyto me, "repo" is something that contains something like .hg/ or .git/11:47
timelymy goal is to make sure i don't have to have 5 copies of the thing that holds a "clone" of upstream (because i hit space quotas)11:48
timelyand also to make sure i don't have to republish (to avoid hitting "not web content" dreamhost hosting rules)11:48
LarstiQevery branch (.bzr/branch) that lives in a directory tree under a dir that has a .bzr/repository, will use _that_ .bzr/repository to store its revisions11:48
LarstiQtimely: you'll find `bzr init-repo` helpful then11:49
LarstiQtimely: but if you're doing documentation style changes, I'd fit all of that in one branch11:49
timelyok11:49
timelythat simplifies matters :)11:50
LarstiQthat is what I meant per topic, the topic being 'documentation style' in this case, or bug-12345 in another, or nested-trees feature, etc11:50
LarstiQtimely: but why does dreamhost factor in?11:52
timelywell, each host i have has rules11:52
timelymy personal box runs 10.3.911:52
timelythe usual rule is "nothing i want to do works there"11:53
timelylandfill.bugzilla.org's rule is "must be mozilla related" (bzr isn't)11:53
timelydreamhost (timeless.justdave.net)11:53
timely's rule is "must be web content"11:53
timelyi have other boxes, most of them have rules "no free space available"11:53
LarstiQhmm.11:53
* LarstiQ just works on his laptop.11:53
timelymy laptop's rule is "for work purposes"11:54
timelybzr doesn't fit there either ;-)11:54
timelyit also falls into "no free space available"11:54
LarstiQwell, if that makes you happy.11:54
timely(and probably doesn't have python)11:54
timelyoh, dunno about happy. but it is life :)11:54
timelyhappy is going to the beach, which is what i'll do now :)11:54
LarstiQtimely: ok, ciao11:54
timelyoh, how do i set my committer name?11:55
LarstiQbzr whoami 'Wouter van Heyst <larstiq@..'11:56
timely    ~/.bazaar/bazaar.conf [DEFAULT] email=... ?11:56
LarstiQor that11:56
timelytimeless.justdave.net FTP <timeless@sanjay>11:57
timelyis not what i want to be :)11:57
LarstiQtimely: you can set your committer id per branch, ~/.bazaar/bazaar.conf will have the default11:57
LarstiQSo, run 'bzr whoami <foo>' from outside a branch, and it will set the default11:58
timelyoh well11:58
* timely manually created the file11:58
LarstiQand it turns out also from inside, ah well11:58
LarstiQ--branch to set it locally instead of globally11:59
LarstiQaaaanyway11:59
LarstiQtimely: you can check what it is with `bzr whoami`11:59
timelyok. first commit done12:00
timelybeach!12:00
LarstiQmind fuck festival!12:00
LarstiQhttp://mindfuckmondays.com/ for other people in the area of Den Haag12:01
* LarstiQ is gone12:01
PieterHey all. I did some repository size benchmarks on repos with full history (http://vcscompare.blogspot.com/2008/06/git-mercurial-bazaar-repository-size.html) instead of just a tarball import as done on the benchmark page.13:42
PieterI think this is a lot more realistic benchmark than done at http://bazaar-vcs.org/Benchmarks/SpaceEfficiency. Perhaps you should update the website?13:42
bob2might want to post that to the list13:46
gourinteresting results...13:46
gourthere is some room for improvement in bzr, it seems13:47
bob2did increasing the window size help git much?13:48
PieterI did some benches on that.. when you go from 10 to 50 you can get a 2x improvements13:52
Pieter50 to 100 perhaps another 2x13:52
Pieterbut after that not much improvement13:52
gourPieter: which repo format you use for bzr?13:53
Pieter    repository: Packs containing knits without subtree support13:55
pygipoolie, around perhaps in any change? :)15:05
pygichance*15:06
adaranhey everyone16:20
adaranis there any document that someone can point me to that explains the "philosophy" (not ideology) behind bazaar?16:21
adaranall i can find at the moment are howtos, tutorials and other stuff =/16:21
=== abadger19991 is now known as abadger1999
rockstarDoes this error make any sense to anyone?  http://pastebin.com/m483b7ade18:14
cody-somervillerockstar, try breaking the lock manually?18:19
jumpkickwhat do people usually use for the <name> portion of their branch name?  trunk? main?18:25
Pilkyjumpkick: you mean the main development branch? we use dev for our open source project, for my personal projects I haven't settled on one yet18:28
=== yacc_ is now known as yacc
rockstarcody-somerville, break lock doesn't fix it.  Tried that already19:34
beunorockstar, it's a bug between bzr versions (you're probably using 1.5, and LP has 1.3)19:37
beunorockstar, https://bugs.edge.launchpad.net/bzr/+bug/23638019:37
rockstarbeuno, wierd.  So why can I branch from some projects, and no others?19:40
beunorockstar, I'm not sure yet, it has something to do with the way the smart server handles it19:41
beunoyou can, as a workaround, branch using http, and then push with bzr+ssh19:41
rockstarbeuno, ah, alright, that makes sense.19:43
xifHi!19:57
xifI have a few questions about Bazaar.19:57
xifFirst of all, what's the best way to get the current revision of a repository?19:57
Pilkythe revision number?19:58
Pilkybzr revno19:58
xifyeah19:58
Pilkythough you can only get the revision of a branch, not a repository19:58
xifPilky: yeah, `bzr revno` seems to be the thing19:59
xif(that's what I want, really :)19:59
xifbtw, is there a nice way of doing this from Python?19:59
xif(just curious)19:59
Pilkythat I wouldn't know19:59
luks_b.last_revision()[0]20:00
luks_or [1], not sure20:00
luks_(where b is a Branch instance)20:00
* xif nods20:00
luks_er, or maybe b.last_revision_info()20:01
xifthanks. another question: there were significant changes in the format of the actual files storing the bzr data over the last several version, right?20:01
luks_but it's definitely one of those :)20:01
beunoxif, http://bazaar-vcs.org/Integrating_with_Bazaar  may be fun to loot at20:01
beunoxif, there hasn't been any changes since 0.9220:01
beunoso it's been very stable for some time now20:01
xifyeah, unfortunately, the latest for Gutsy is still 0.9020:02
beunoxif, PPA's are your friend20:02
beunohttps://launchpad.net/~bzr/+archive20:02
xifso there might be some chance of some members of the team needing to interact with 0.90 branches20:02
xifwhat would happen if someone tries to negotiate a 0.90-created branch with 1.5?20:03
beunowell, they wouldn't be able to, I guess20:03
xifOK, is there a chance of a silent failure?20:03
xifi.e. corrupting a branch?20:03
beunobut, the improvements since 0.90 justify the upgrade20:03
luks_what? current bzr supports all older formats20:03
beunono, it should be explicit about the bzr not understanding the format20:03
LarstiQbeuno: ehm, 1.5 reading 0.90 should be fine?20:04
beunoluks_, but not the other way around20:04
LarstiQright, right20:04
beunoah, right20:04
beunosorry20:04
beunoxif, listen to the more-awake people  ^20:04
xifhehe20:04
* Pilky hands beuno some coffee20:04
xifOK, so if 1.5 pulls data from 0.90, it would in fact convert it to the new format?20:04
luks_no, it would use the old format20:04
=== luks_ is now known as luks
LarstiQxif: it can pull from an old branch into a new one, or if you freshly branch, it should use the old format iirc20:07
beunoyeah, I still use a few branches on LP that haven't been upgraded, and it's transparent20:07
xifLarstiQ, luks: OK, but it seems even in that case, there shouldn't be any problems.20:10
xifof course, it would be best if everyone made sure to use 1.520:11
xifbut corruptions or fatal errors trying to pull/push data shouldn't occur, according to you.20:11
luksdefinitely not20:11
xifthanks a lot :)20:11
lukseither it will tell you it doesn't support that format, or it will work well20:11
xifwhat were the changes 0.90 => 0.92 btw?20:12
gour@localtime gour20:12
gourigc: hi, i just updated 'darcs-support' bug with some new & interesting info20:20
timelyxhello world20:23
timelyxin bzr rel notes there's a reference to "Tortise" i'm assuming it means Tortoise am i wrong?20:24
fperezHowdy, I have a question regarding how to do what the abandoned 'bzr graft' plugin did... Anyone who might be able to help?20:32
fperezURL for graft: http://spacepants.org/src/bzrgraft20:32
timelyxindeed, it's a typo :)20:36
Pieterfperez: have you tried the bzr-rebase plugin?20:40
fperezPieter: yup, unsuccessfully so far...20:40
fperezThe problem is that the two branches are chronologically contiguous, but one was started 'from scratch' with no history.20:41
fperezRebase won't let me do it because it detects no common parents.20:41
fperezI'll give a bit more detail now: I'm the lead of the ipython project, and we recently switched from svn to bzr.20:41
fperezWhen testing the switch, our SVN server was having memory problems and launchpad could never complete a full download of the svn history to start working from.20:42
fperezSo one of the ipython devs just made an initial bzr import with zero svn history and uploaded that  to launchpad, so we could see if we liked the workflow.20:42
fperezNow we're happy and we want to fully abandon the svn support, but we'd like to bring the old history in (years) and merge it with the recent work done in bzr (3 months).20:43
fperezSo bzr-graft sounds exactly made for this, but unfortunately it doesn't load in current bzr.20:43
fperezI don't have the time to basically rewrite graft, so I was wondering if an alternative solution exists.  If I'm mis-using rebase (I'm no expert) I'll be happy to try again.  I can give details of the problems I'm seeing.20:44
LarstiQfperez: oef20:46
LarstiQfperez: I'd write to the list about this.20:46
fperezOK, that was my next move to try just now.  I was just wondering if I was missing something obvious that a guru could quickly spot. Thanks.20:47
LarstiQit's not something that I'd immediately know how to approach20:50
fperezNo problem, I appreciate the feedback.  bzr-graft is intended to do *precisely* this, so it's a shame it has bitrotted.  But I just don't have the time to resurrect it for a one-off effort.  It would be great if that plugin was maintained in the core: the code looked actually pretty small, so I'm sure for someone who knows the bzr API it would be easy work.20:51
* timelyx frowns21:02
timelyxis there a difference between ``a``, 'a', and "a" in the README files of bzr?21:02
PengThe files are ReST, or however it's capitalized. I think ``a`` means <code/>, and the others are meaningless.21:04
timelyxthanks21:06
timelyxdid bzr pick en-gb for all content? and is en-us content considered buggy?21:06
* timelyx frowns21:06
timelyxrobert collins /looked/ like an en-gb er21:06
timelyx     generalises the ``exclude_suite_by_re`` function. (Robert Collins)21:06
timelyx     randomized copy of the input suite. (Robert Collins)21:06
* timelyx will need to get an en-gb dict21:07
PengCanonical is in the U.K., and I think many of the developers are Australian.21:10
timelyxok21:19
schierbeckhi guys21:23
timelyxdoes bzr have a concept of a 'teste'?22:19
pickscrapeI'm just trying to get the diffstat plugin working. It's using diff_cmd_helper, which was removed in r3410 (apparently deprecated before 1.1)22:31
pickscrapeAnyone know what I might use in place of it?22:31
LarstiQpickscrape: DiffTree? Have a look at the call chain for cmd_diff from bzrlib/builtins.py22:39
pickscrapeLarstiQ: thanks. (my first foray into bzrlib, this)22:41
LarstiQpickscrape: you're welcome22:49
LarstiQpickscrape: alternatively, use gannotate to find out what replaced diff_cmd_helper around the same time it got removed22:50
LarstiQor at deprecation time probably22:50
pickscrapeHmm, would I be right in thinking that if a function name starts with an underscore it's considered 'private' and shouldn't be called from within plugins?22:55
pickscrapeIt was deprecated in 3072.1.1, and all functions added in that revision are underscored. I'm going to look at the code that was calling it for clues...22:57
LarstiQpickscrape: yes, you are right23:00
pickscrapeAha! I've got it working! (I think)23:11
pickscrapeAny idea if this is sensible? show_diff_trees(bzrdir.open_branch().basis_tree(), bzrdir.open_workingtree(), out, file_list)23:12
pickscrapeIt's the bzrdir.open_branch().basis_tree() part that I dug up myself, and may be completely incorrect23:12
pooliehello23:54
beunomorning poolie23:54

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