abentleyIt doesn't say "nothing to do" if it can't find anything mergeable.12:03
lifelessabentley: perhaps it could say '%URL is already fully merged.'12:04
lifelessgood morning btw12:05
=== bac [n=bac@canonical/launchpad/bac] has joined #bzr
=== jkakar [n=jkakar@204-174-36-45.dhcp802.dsl.ucc-net.ca] has joined #bzr
ollieabently, no, it was a bundle it couldn't read; when I opened the bundle in my editor and resaved it as utf-8, I progressed to being told it didn't have \n line-endings; when I changed it to line endings, I was told a parent revision was missing12:33
ollieor maybe I'm misunderstand, but based on the progression, that wasn't the scenario12:34
=== jml_ [n=jml@203-113-250-169-static.TAS.netspace.net.au] has joined #bzr
cprovlifeless: ping12:39
cprovlifeless: I'm running bzr-pqm from gutsy and getting this error:12:39
cprovBzrBadParameterUnicode: Parameter content is unicode but only byte-strings are permitted.12:39
cprovbzr 0.18.0 on python 2.5.1.final.0 (linux2)12:39
cprovarguments: ['/usr/bin/bzr', 'pqm-submit', '-m', '[r=kiko]  Fix #134345 (ppa-tos page), #135186 (ppa page typo), #135385 (configuration files fixes for ppa) and fix poppy to store upload with g+w permission.'] 12:39
lifelesscprov: 'bzr plugins' -> pastebin12:40
cprovlifeless: have you seen it before ? how can I workaround it ?12:40
lifelessrun the one from lpdebs probably12:40
=== asabil [n=asabil@062016174168.customer.alfanett.no] has joined #bzr
cprovlifeless: https://pastebin.canonical.com/53/12:41
cprovlifeless: right, I have missing upgrades from lpdebs. I hope they will fix the problem. (sorry, I should have checked before). Thanks12:44
=== RainCT [n=RainCT@unaffiliated/rainct] has joined #bzr
RainCTI just started pushing something to a new branch in Launchpad but then I realized that I forgot to commit and aborted it (Ctrl + C). Now I get bzr: ERROR: File exists: u'/~rainct/freevial/testing/.bzr': mkdir failed: unable to mkdir each time I try to push it again, and on Launchpad on the branch's page it says      Launchpad could not mirror this branch     41 seconds ago.            The error was:       Not a branch:. I've tried with --use-exist12:48
lifelessRainCT: you disturbed it during the initial setup12:50
lifelessRainCT: better to let it finish, then commit, then push again to add the additional data :)12:50
lifelessanyhow, this should fix it12:50
lifeless>>> import bzrlib.bzrdir12:50
lifeless>>> d = bzrlib.bzrdir.BzrDir.open('sftp://bazaar.launchpad.net/~rainct/freevial/testing')12:51
=== gldnspud [n=gldnspud@] has joined #bzr
lifeless>>> d.create_branch()12:51
abentleyollie: So you are saying the directory your bundle was in was not a branch?12:51
abentleyAnd not inside a branch?12:51
RainCTlifeless: the "d = ..." says  bzrlib.errors.NotBranchError: Not a branch:12:52
cprovlifeless: just for the record,  bzr-pqm (0.13~20070226-0ubuntu2) from lpdebs is working correctly.12:52
ollieabentley, sorry, I guess I misunderstood.  the current working directory from which I tried to merge a bundle created by someone else one a separate machine was itself a branch.12:52
abentleyWhen you got "Nothing to do", it's because it was merging that branch.12:53
ollieok, because it failed to read the bundle12:54
abentleylifeless makes a good point that it should be clearer about what it's merging.12:55
ollieit would have been uber-helpful if it had stated that it was unable to make any sense of what I gave it12:55
abentleyOn http, that would mean no branches would ever work.12:55
abentleyNot to say we can't do better, of course.12:56
ollienot being burdened by any implemenation details, it seems completely counterintuitive to pass something to merge and be told there's nothing to do (when you're looking at the bundle in your editor and can see that there is stuff)12:58
abentleyWell, that can also happen with bundles you've already merged, so the "editor" test isn't very conclusive.01:01
=== igc [n=igc@ppp121-45-197-71.lns1.bne1.internode.on.net] has joined #bzr
lifelessRainCT: ok01:02
lifelessRainCT: you need to login via lftp or sftp and delete everything in that dir01:03
lifelessRainCT: then you can replace the d = line with01:03
lifelessd = bzrlib.bzrdir.BzrDir.create('sftp....')01:03
lifelessand do d.create_repository01:03
lifeless - first one should have been do d.create_repository()01:03
abentleyigc: morning01:04
igcmorning abentley01:04
igcmorning lifeless01:04
ollieabentley, no, I understand that, but I'm not speaking the abstract -- I'm talking about a scenario where the code didn't exist in the target repo and the conversation (between bzr and I) consisted of my saying "merge it" and it saying "you're good to go!"01:05
RainCTlifeless: and how can I connect to it? (does LP even allow it?)01:05
ollieanyhow, I don't mean to beat a dead horse ;-)01:05
lifelessRainCT: 'sftp bazaar.launchpad.net'01:05
=== gcostello [n=gcostell@i07v-212-195-160-152.d4.club-internet.fr] has joined #bzr
lifelessRainCT: or lftp sftp://bazaar.launchpad.net01:05
abentleylifeless: You wrote the hooks stuff, right?01:06
abentleyI'm not finding a lot of documentation on how it's supposed to be used.01:06
abentleyAdd an entry to the Branch dict?01:07
abentleyvia a plugin?01:07
lifelessabentley: you want a plugin to add a new hook type, or to hook into one of the hooks ?01:07
abentleyHook into one of the hooks.  (post-push).01:07
=== mw is now known as mw|out
lifelessBranch.hooks.install_hook('post-push', hook_function)01:08
lifelessand to name it, which is a UI convenience01:08
RainCTlifeless: ok. deleted it, and python continued saying it isn't a branch, but it seems now I can push to it. Thanks :D01:09
lifelessBranch.hooks.name_hook(hook_function, 'my-do-x')01:09
lifelessRainCT: cool01:09
lifelessabentley: these are on the base clsas of BranchHooks01:09
abentleySo you install it and then name it?01:09
lifelessnaming is optional01:10
abentleyDoes it predate registries?01:10
lifelessits just so that when pb's are showing hooks running, that slow hooks are shown as english rather than as the object's __str__01:11
=== gcostello [n=gcostell@i07v-212-195-160-152.d4.club-internet.fr] has left #bzr []
lifelessabentley: No, it didn't seem like a good fit01:11
lifelessI guess each hook e.g. 'post-push' could be considered a registry01:12
abentleyYeah.  I guess I see why you did it that way.01:12
abentleyif you were doing it in one fell swoop, it would be something like Branch.hooks.register_hook('post_push', my_push_hook, "My push hook")01:13
lifelessyeah. install_hook could sanely take a text_name=None parameter to allow that01:13
lifelessthe name_hook method came a release after hooks were added01:13
lifelessso I added a separate method so that plugins can do01:14
lifelessif get_attr(Branch.hooks, 'name_hook', None): Branch.hooks.name_hook(...)01:14
abentleyyeah, that's a bit of a lack in python's introspection.01:14
lifelessyou can get at the signature I believe, but its just not as easy or quick01:15
lifelessyou need the introspect module which has heinous dependencies IIRC01:15
abentleyWhen you say Graph.heads should not be on a single-key graph layered on a multi-key graph, why do you say that for heads specifically?01:19
lifelessWell heads was under discussion01:19
lifelessbut more generally part of the work to tune packs is going to be ensure we don't spend a chunk of time just tupling and detupling things01:19
abentleyDo you think the same thing for find_unique_lca?01:19
lifelessso the low level key for the revisions GraphIndex is (revision_id, )01:20
lifelessand the Graph object is key agnostic from what I recall - or nearly so.01:20
lifelessthat is, it really works on key_type:[key_type ...]  -01:21
lifelessso just passing in the right key type should allow everything to fit together nicely01:21
lifelesson text indices the low level key is (file_id, revision_id)01:22
lifelessso theres more work involved in converting every get_parent request from get_parents(revision_id) - it goes to iter_entries([(file_id, revision_id)] ) and then that gets stripped on return to give a node with parents as (revision_id,), and finally that is restored to just revision_id at the top level adapter01:23
abentleyGraph isn't the One True implementation of its interface.  There's no need to assume such translation.01:24
lifelessI realise that; what John was proposing had that translation.01:24
lifelessmy reply to him was pointing out that we should avoid it, in however he structured his api.01:25
abentleyI would really like to have Graph.heads for use in reconcile, which is why I ask.01:28
lifelessdefinately use it01:28
abentleyAnd it seems like the only code you actually have a problem with is "g = graph.Graph(entry_vf)"01:28
lifelessreconcile is repository format specific01:28
lifelessso theres no impact on packs by using it like that01:29
lifelessbbiab, grabbing breakfast01:30
abentleylifeless: Would a VersionedFile.get_graph() method satisfy you?  Then different VersionedFile implementations can specify their Graph implementation.01:33
=== sandrot [n=sandro@c-71-199-230-127.hsd1.fl.comcast.net] has joined #bzr
sandrotis there a changelog available for .90 :01:35
abentleysandrot: There is the NEWS file.01:39
sandrotk so I have to branch01:39
sandrotor get tar01:40
=== jml_ is now known as jml
sandrot'pulling' from another person means that the person I'm pulling from needs to have his branch accessible to me via ssh on his own box or via a server he can 'push' or upload to right?01:41
=== spiv [n=andrew@canonical/launchpad/spiv] has joined #bzr
abentleypulling works on any of the protocols we support: http, sftp, ftp, bzr, bzr+ssh or local files.01:44
lifelessabentley: the problem is the keys that should be returned01:48
lifelessabentley: in many respects I want to stop using VersionedFile where dataset partitioning isn't helpful01:48
sandrotMmm, thanks. I was just thinking that because I keep myself  behind a firewall (blocking ssh) in order to have someone pull to me I have to make my branch available to my server which accepts ssh (or other protocols), meaning that in order for me to share my branch I need to push first01:48
abentleylifeless: Surely untupling in VersionedFileGraph.heads isn't expensive.01:49
lifelessabentley: if it occurs only at the interface surface it isn't a problem01:49
lifelessoccuring all the way down is a problem01:49
abentleySo doing vf.get_graph() would allow us to avoid doing it all the way down.01:50
lifelessI guess my hesitation is trying to avoid the vf interface except where it clearly makes sense. Which is probably over-exaggerated at the moment. So vf.get_graph sounds fine.01:51
lifelessHmm, I think what I want to achieve is decoupling 'file history' vs 'text construction'.01:52
lifelessfile history queries tend to be one off operations, not part of large things like 'branch' 'checkout' etc01:52
abentleyThat's fair.01:52
lifelesstext construction tends to be part of things like merge, and thats where the artificial VF interface causes roundtrips.01:52
=== bartt [i=bartt@nat/yahoo/x-993dbf60b0cc32cb] has joined #bzr
lifelesstext insertion likewise, though we can queue that to avoid round trips more effectively01:53
barttAre nested repositories working?01:53
barttI don't seem to be able to add a nested repository.01:53
barttE.g. bzr add path/to/nested/repository only reports # of ignored files01:54
abentleylifeless: You are the person who wants to select graph ancestors on a per-file basis, though.01:54
abentleybartt: You cannot add a tree into another tree.01:54
lifelessabentley: I don't think I'm the *only* person :).01:55
abentleyYes, but surely doing VersionedFileGraph.find_unique_lca is the obvious approach.01:56
lifelessabentley: per file lookups can be grouped though01:56
lifelessthats the obvious approach, and as long as the repo its being queried on is local it will perform fine01:56
=== cypherbios [n=cyr@ubuntu/member/cypherbios] has joined #bzr
=== poolie [n=mbp@ppp112-44.static.internode.on.net] has joined #bzr
=== jml_ [n=jml@ppp108-61.static.internode.on.net] has joined #bzr
abentleyAnd at present, the repo being queried is always local.02:05
=== jml_ is now known as jml
=== cprov [n=cprov@canonical/launchpad/cprov] has joined #bzr
barttabentley: I thought that nested tree support was added in 0.15?02:08
igcSo more reviews today from me starting with abentley's TreeTransform rollback one02:08
abentleybartt: No, only support code.  It is not complete.02:08
igcabentley: were you planning to tweak anything following Kuno's feedback or should I review it as is?02:09
barttThanks abentley02:09
abentleyigc: The only thing is that I should handle errors creating the pending-deletion directory the same way as errors creating limbo are handled.02:10
igcabentley: I was hoping you'd say that02:11
igcI'll go ahead and review and ask for that tweak02:11
=== bartt [i=bartt@nat/yahoo/x-993dbf60b0cc32cb] has left #bzr []
sandrotWhat exactly does a repo with or without "trees" mean? what exactly is a tree?02:12
lifelessigc: I'm going to profile commit performance with packs today.02:13
sandroterm, what is a tree in the context of a shared repo02:14
=== orospakr [n=orospakr@bas4-ottawa23-1177611326.dsl.bell.ca] has joined #bzr
igclifeless: great. I'll push my latest code this morning in case it's of interest02:15
lifelessigc: I'm focused on repository interactions immediately.02:15
lifelessI want to see how slow the repo layer is02:16
lifelessor has to be02:16
lifelessigc: also, how should we collaborate; I'm working in packs; I can spin off patches for bzr.dev easily.02:16
lifelessbut not for your branch as easily02:16
lifelessmy patches should be small but frequeny. Does this work for you ?02:17
igclifeless: I'm still a few days away from using the commit-candidates branch effectively ...02:17
poolieabentley, what igc said about the merge queue goes for me to02:18
igcI need to get commit changed to incremental vs 'build from scratch' first02:18
abentleypoolie: Glad to hear it.  I think we have the right intentions, it's just a juggling act.02:18
igcso lifeless, if you can keep pushing hard on packs and getting bzr.dev closer to using them, I'm good with that02:19
sandrotwhat does a 'tree' mean in the context of a shared repo...what happends to branches in a repo when I run init-repo --trees versus init-repo --no-trees ?02:20
=== cypherbios_ [n=cyr@201-15-255-16.ctaje700.dsl.brasiltelecom.net.br] has joined #bzr
=== cypherbios_ is now known as cypherbios
abentleysandrot: A tree is the directory (and subdirectories) that contain your source code in editable form.  See bzr help working-trees.02:31
sandrotabentley: thanks, I'm just finding it now actually02:32
sandrotI read a lot of shared repo docs but didn't read http://people.ubuntu.com/~ianc/doc/en/user-reference/bzr_man.html#repositories yet02:32
sandrotseems that a working tree is similar to svn's working copy02:32
abentleyThe big difference is that SVN's working copy is never in the same location as a branch or a repository.  In Bazaar, the SVN layout is called a 'checkout'.02:38
abentleyA lightweight checkout, to be precise.02:38
sandrotMmm, I always assumed the working copy was the copy of code you're currently working on. So when I checkout a branch my checkout is now a 'working copy'02:39
abentleyIn SVN, that's the only way of getting a working copy.  But with Bazaar, "branch", "init" and "push" can also create objects with working trees.02:44
sandrotpush doesn't create a working tree thought right? you can checkout or branch from a pushed location02:45
=== orospakr [n=orospakr@bas4-ottawa23-1177611326.dsl.bell.ca] has joined #bzr
abentleyWhen you push to a local location, it creates a working tree, and yes, you can checkout or branch from a pushed location.02:49
=== AfC [n=andrew@office.syd.operationaldynamics.com] has joined #bzr
abentleyPush always creates a branch, and on local locations, it also creates a working tree.02:52
abentleycreates *or updates* I should say.02:52
ubotuNew bug: #135421 in bzr "different exit code for internal errors" [Wishlist,Triaged]  https://launchpad.net/bugs/13542103:06
=== jrydberg__ [n=Johan@c80-216-246-123.bredband.comhem.se] has joined #bzr
abentleyigc: Shouldn't NEWS.html be up somewhere on doc.bazaar-vcs.org?03:19
igcabentley: it looks like doc.bazaar-vcs.org is yet to be upgraded following the 0.90 release ...03:20
igcpoolie has done this in the past for the RM03:21
igcI'm pretty sure I have permissions now so I can do it I think03:21
abentleyDo we even have a link to NEWS in the documents?  I tried a few guesses at the URL...03:21
abentleybut it was 404 city, baby.03:22
igcsee http://people.ubuntu.com/~ianc/doc/ for what 0.90 will look like ...03:22
igcclicking on "Release Notes" takes you to NEWS.html03:23
abentleyWe gotta turn that TOC into a sidebar or something.03:23
abentleyAny progress with getting the pretty version of the docs online?03:24
igcabentley: see http://people.ubuntu.com/~ianc/pretty_docs/ for the current pretty-docs output as well03:24
igcby 'current', I mean a snapshot from a week or so back of course03:24
=== jelmer [n=jelmer@a62-251-123-16.adsl.xs4all.nl] has joined #bzr
=== poolie_ [n=mbp@ppp112-44.static.internode.on.net] has joined #bzr
=== netjoined: irc.freenode.net -> kubrick.freenode.net
=== mlh [n=mlh@c211-30-211-232.belrs1.nsw.optusnet.com.au] has joined #bzr
lifelessspiv: ping - calls?03:47
=== NamNguyen [n=namnt@] has joined #bzr
lifelesspoolie_: I see 3 failures04:21
lifelessand one of those is due to the failure to isolate CFLAGS04:21
=== igc lunch
poolie_lifeless, only 3?04:26
poolie_have you pushed to your knits branch recently?04:26
poolie_ because that's where i pulled from04:26
lifelesspoolie_: its one commit behind04:26
poolie_http://people.ubuntu.com/%7Erobertc/pack-repository.knits/ right?04:26
lifelesshttp://people.ubuntu.com/~robertc/baz2.0/repository is the canonical location04:27
poolie_lifeless, i'll check that one then04:36
lifelessone thing that concerns me ian, for commit performance04:41
lifelessis that we're three times slower than hg, but I'm seeing our gzip time as dominating04:42
lifelessat 80% of profiled time04:42
=== Vernius [n=tomger@] has joined #bzr
=== sandrot [n=sandro@c-71-199-230-127.hsd1.fl.comcast.net] has left #bzr ["Konversation]
=== tchan [n=tchan@lunar-linux/developer/tchan] has joined #bzr
abentleylifeless: Potentially, you want to store uncompressed knit records, and then gzip the whole container.04:52
abentleyMaybe faster, probably better compression.04:52
lifelessabentley: I'd love to know precisely what git's packing algorithm is04:52
lifelessI think I'm saying 'there is something wrong' when hg's commit is faster and our time is in gzip04:53
lifelessnot that I disagree with your point04:53
poolie_lifeless, ok, in that branch i have only 2 failures04:58
=== tonyyarusso [n=anthony@ubuntu/member/tonyyarusso] has joined #bzr
tonyyarussoHi, I'm not familiar with version control systems at all (yet), and I was wondering if someone could either explain or give a link to a good explanation of how bazaar compares to things like SVN, CVS, and git.05:08
jeremybistr that bzr's wiki has a really good explanation05:16
jeremybi think wikipedia has something too05:16
jeremyb+comparison for both05:16
tonyyarussojeremyb: Cool, thanks05:23
abentleytonyyarusso, jeremyb: The better-scm site is pretty useless.  I would avoid it.05:24
=== jeremyb is reading http://better-scm.berlios.de/to-avoid/
jeremybnot that i would ever consider using MS Visual SourceSafe anyway05:25
abentleyI was unable to convince the author that baz and bazaar are difference VCSes.05:25
abentleySo Bazaar is listed under "Arch", completely inappropriately.05:26
jeremybyeah, i see it doesn't have it's own listing in the sidebar05:26
jeremybnever heard of vesta before05:26
=== abadger1999 [n=abadger1@] has joined #bzr
jeremyb"Note: related to Bazaar, is Bazaar-NG, which is written from scratch by the same parent company. It aims to offer some advantages over Bazaar, but is not an Arch implementation, nor is it compatible with Bazaar. A tool is available to convert Bazaar repositories into Bazaar-NG, but not the other way around.05:27
tonyyarussoLooks like git is sort of specialized and limited-use, CVS is becoming obsolete, and if I was going to learn something it should be Bazaar, Subversion, or both.  Does that sound accurate?05:27
jeremyb"CVS is becoming obsolete" yes from some perspectives :)05:27
tonyyarussoWell, it lacks a number of features listed for other ones, and others (like Subversion) are listed as improvements on it.05:28
jeremybgit, bazaar, *and* mercurial not or :)05:28
tonyyarussoI know O'Reilly has a Subversion book - is there a comprehensive guide for Bazaar yet?05:29
jeremybtonyyarusso: oh, sorry i misread.  i thought that abentley provided the quote in jest.  i will provide a better answer :)05:30
jeremybCVS is becoming obsolete by most standards although is occasianally used for new projects and has some diehard fans05:31
fullermdCVS is long since obsolete.  What it is, is _known_.  People have decades of history in it, and know it inside and out.  That's worth something.05:32
jeremybi wouldn't say git is specialized or limited use but it does have quirks and it's got some small hurdles for windows users.  git and mercurial both have support for syncing with svn.  git has more mature biderectional support.  bzr has not quite stable support for writes to svn last i heard and i think the read support is better.  afaik mercurial doesn't have any05:35
abentleyI was not joking.  He cannot get his facts straight.  If you read that site, you will know less about version control than you did beforehand.05:36
jeremybabentley: i thought that tonyyarusso's line quoting the site was you talking05:37
jeremybsuperficially bzr, hg, and git all implement the same principles but there are variations05:37
=== jeremyb tries to remember the good (or at least i remember people saying it was good) bzr/hg blog post
=== mdmkolbe [n=mdmkolbe@iub-vpn-192-54.noc.indiana.edu] has joined #bzr
jeremybabentley: well both his bazaar and bazaar-ng links redirect to bazaar-vcs.org so it shouldn't be too hard to convince him that they are the same.  but convincing him that he used the wrong link might be a challenge05:39
jeremybabentley: how recently did you try to convince him?  the arch page has an almost 2 year old timestamp05:41
abentleyI've got no interest in trying to convince him any further.  He's demonstrated that he will just ignore inconvenient facts.  He's not worth thinking about.05:43
jeremybhah, that site has an empty irc channel05:43
jeremybabentley: i was just wondering05:43
=== jeremyb ponders
jeremybi was sure CVS allowed copies retaining history for the original and the new file.  (people file bugs to get those copies done for the mozilla repo all the time)  his comparison says CVS doesn't support them...05:47
mdmkolbeI enjoy learning new systems and I've just come off of learning and using darcs at an intermship.  I've learned to like the distributed model (I'm a former svn user), and am looking for a system to use on my own projects.  (I'll have compile and install at as a non-root accout.)  I'm consiering mercurial, bzr and git.  Can anyone point to or give a good comparisen of these?05:47
jeremybthey all can be installed in your home dir05:48
=== jeremyb wonders what's happening with forest (or was that hg?)
jeremybmdmkolbe: what OS?05:51
mdmkolbejeremyb: both linux (as non-root) and windows/cygwin (but I administer that system so root isn't such an issue)05:51
jeremybgit isn't supported as well on windows but i've never tried it (i think there's some performance issues too but neither of those are based on recent data)05:53
jeremybmdmkolbe: depends how much time you have.  personally i'd just try them all05:54
jeremybon a small scale not for a real project05:54
jeremyb(i have used git and mercurial a bit not so much bzr)05:54
mdmkolbejeremyb: I'm a motivated learner except that school has started and my brain is filling up to the point where I'm discovering the need to choose what I will and won't learn (which is sad, but I guess it's part of getting older.)05:56
=== abadger1999 [n=abadger1@] has joined #bzr
=== AfC [i=andrew@office.syd.operationaldynamics.com] has joined #bzr
AfCmdmkolbe: my personal response to your question about which version control system to use is in http://research.operationaldynamics.com/blogs/andrew/software/version-control/git-is-like-cvs.html06:08
jeremybwhoa, git is like cvs?06:10
fullermdjeremyb: CVS doesn't.  Manual mucking around in the repository does.  Sorta.06:10
=== jeremyb reads
jeremybdoesn't what?  ohh, moves?06:10
lifelessfullermd: well it can record moves as well as git can06:11
=== lifeless is both trolling and completely serious, simultaneously
=== jeremyb understands
lifelessfood time06:11
jeremybfullermd: well, for mozilla, it's automated to the point where you hand a script a text file with source and destination on a single line seperated by a space and it takes care of everything06:13
=== mdmkolbe puts one more stroke in the tally for bzr after reading
fullermdYeah, but what it takes care of is still a mess.  And CVS doesn't know anything about it.  You just sorta have the history of the file available.06:13
mdmkolbeWhat repository format does bzr use?  (I ask b/c of the claims in http://keithp.com/blog/Repository_Formats_Matter.html)06:14
AfCmdmkolbe: a constantly improving one06:14
AfCmdmkolbe: And I disagree with Keith (who is, incidentally, a good friend of mine); tool usability is what matters.06:15
AfCmdmkolbe: and despite the rather appealing-at-first-glance notions inside Git, I have LOST DATA with Git and NEVER LOST DATA with Bazaar.06:15
mdmkolbeto summarize the linked article "git is good b/c each file is writting once then never touched again; hg is bad b/c it appends to the files on each commit"06:16
mdmkolbeAfC: heh, that kind of puts Keith's claims in perspective06:16
AfCmdmkolbe: we've all read it. Most of the people here are _also_ good friends with Keith.06:16
fullermdI'm not.  I'm a poor pathetic outsider, clutching at windowsills and begging for scraps of bread.06:17
=== AfC goes out for coffee
=== fullermd hits up AfC for spare change on the way.
mdmkolbeHow well does bzr support "software archiology"?  One of the troubles with darcs I found was that of trying to track down the historical context of a change (that introduced a bug I'm attempting to fix) that isn't always captured by the patch dependancy graph.06:20
jeremybhg has a built in function to do a binary search for the bug06:22
jeremybi don't remember who else has what06:22
mdmkolbejeremyb: ?!06:22
jeremyball have pretty good history viewing tools06:22
jeremybmdmkolbe: ?06:22
jeremybmdmkolbe: you know what a binary search is, right?06:22
mdmkolbejeremyb: yes, but that's not something I expected from a VC system.  You just point it at 'make' and your program and ask it to recompile until the search find the change causing the bug?06:23
jeremybi've never used it06:24
=== jeremyb looks
mdmkolbejeremyb: thx for the link06:25
fullermddarcs is a special case there, since it doesn't do historical context...06:26
jeremybdarcs drives me nuts!!!06:26
fullermdI always say, why drive when it's close enough to walk   ;)06:27
=== jeremyb thinks...
=== jeremyb knows he's missing something...
jeremybwho's brian o'sullivan?06:35
jeremybsomething wrong with his repo06:36
jeremybor at least the web frontend06:36
igcmdmkolbe: if you haven't seen them already, http://bazaar-vcs.org/BzrWhy lists several blog posts explaining why Bazaar is better than most alternatives (in our opinion)06:37
jeremyboh, ooops06:38
jeremybbrian o'sullivan and that repo are both hg06:38
abentleyNice guy, though.  Wish he were on our team.06:42
poolie_mdmkolbe, there is a bazaar bisect extension which might be more to the point06:44
poolie_there is also iirc 'darcs trackdown' which i think was the first system to have it06:45
lifelesspoolie_: there was an IBM paper on this at LCA 200406:45
lifelessdescribing the technique for tracking down gcc regressions automatically06:45
poolie_based on cvs06:46
poolie_ok, so darcs may have been the first to generalize and automate it06:46
poolie_or maybe not06:46
=== mtaylor [n=mtaylor@dsl231-061-195.sea1.dsl.speakeasy.net] has joined #bzr
poolie_lifeless, btw where you wishing for a different behaviour in vim ^O?06:48
poolie_maybe that was someone else?06:48
poolie_anyhow, g; takes you to the place you last changed the text06:51
=== fullermd didn't know that.
fullermdI usually fake it with undo.06:52
=== jeremyb has done the faking as well
jeremybany of ya'll actually work for canonical?06:55
jeremybwho's mccormickit.com?06:56
mdmkolbewhere is the repo for bzr?  is there a web front-end?  (I mean the repo for the source to bzr)06:58
mdmkolbeI couldn't find it from the bzr website (maybe I'm just looking in the wrong place)06:59
=== jeremyb is finding it
=== jeremyb looks some more
jeremybhaving trouble finding a frontend hosted by the main project but i see 2 front ends for the main repo07:02
=== jeremyb remembers a better frontend for git, bzr or hg but is having trouble finding it
lifelessjeremyb: yes, some of us work for canonical07:05
=== jeremyb runs across https://blueprints.launchpad.net/bzr/+spec/ignore-versioned-files
lifelesshttps://code.launchpad.net/~bzr/bzr/trunk is the launchpad mirror of bzr.dev07:10
lifelessis a web ui to browse it07:11
thumperdoes bzr diff require a checkout?07:11
jeremybthumper: you already have a copy locally.07:12
thumperjeremyb: no, I don't07:12
thumperI have a branch07:12
thumperperhaps I should have said WorkingTree07:13
thumperlifeless: how come I can't do "bzr diff -r-3..-1" on a branch without a working tree?07:14
spivthumper: https://bugs.launchpad.net/bzr/+bug/670007:14
ubotuLaunchpad bug 6700 in bzr "bzr diff -r 10..20 http://foo" unsupported" [High,Confirmed] 07:14
thumperspiv: so a working tree is needed?07:14
=== jdong_ [n=jdong@ubuntu/member/jdong] has joined #bzr
=== lifeless_ [n=robertc@ppp245-86.static.internode.on.net] has joined #bzr
lifeless_15:20 < lifeless> thumper: patches gratefully arsed07:27
lifeless_15:21 < lifeless> igc: ^ remember this bug ? :)07:27
lifeless_15:22 < lifeless> ok, thats 9ish hours, I'm calling it a day.07:27
lifeless_15:22 < lifeless> igc: poolie and I think a gzipless repo might be an interesting test, so I'm going to overhaul the knitversionedfile code some more tomorrow07:27
=== lifeless_ is now known as lifeless
igclifeless: yes, haven't forgotten it :-)07:28
thumperlifeless: :) unfortunately I have other priorities right now07:29
igclifeless: yes, an interesting test indeed07:29
igcthumper: FWIW, lifeless gave me that bug on my first day at Canonical. :-( It's still on my list but behind performance work07:30
thumperigc: as long as it isn't forgotten :)07:32
=== poolie_ [n=mbp@ppp112-44.static.internode.on.net] has joined #bzr
igcthumper: no risk of that :-)07:32
=== jml [n=jml@ppp121-44-221-92.lns1.hba1.internode.on.net] has joined #bzr
=== jml [n=jml@ppp121-44-221-92.lns1.hba1.internode.on.net] has joined #bzr
=== oldmanstan [n=glesica@] has joined #bzr
=== duckx [n=Duck@tox.dyndns.org] has joined #bzr
mdmkolbethx all for your help08:14
=== mdmkolbe [n=mdmkolbe@iub-vpn-192-54.noc.indiana.edu] has left #bzr []
=== mvo [n=egon@p54A6799E.dip.t-dialin.net] has joined #bzr
=== cnus8n [n=cnu@] has joined #bzr
=== AfC [i=andrew@office.syd.operationaldynamics.com] has joined #bzr
=== dato [n=adeodato@] has joined #bzr
=== allenap [n=allenap@] has joined #bzr
=== Lo-lan-do [n=roland@mirenboite.placard.fr.eu.org] has joined #bzr
AfCEeek. What does "Not running as bzrlib.plugins.gtk, things may break." mean?09:30
AfC[bzr 0.90.0, bzr-gtk 0.90.0] 09:30
AfC... and indeed, `bzr viz` crashes.09:31
datoAfC: that the bzr-gtk plugin is not installed in a directory named just "gtk"09:31
AfCYes it is... er, no its not. Typo on my part. Shit.09:32
AfCCalled it "bzr" not "gtk". That was stupid...09:33
AfC(in ~/.bazaar/plugins)09:33
AfCdato: thanks09:33
=== markvandenborre [n=mark@ubuntu/member/markvandenborre] has joined #bzr
=== tolonuga [n=aj@] has joined #bzr
tolonugacan anyone edit http://doc.bazaar-vcs.org/bzr.dev/server.htm and replace ":1234" with ":4155"? thanks.10:01
=== dato [n=adeodato@] has joined #bzr
=== sverrej [n=sverrej@tul-1x-dhcp018.studby.uio.no] has joined #bzr
jeremybtolonuga: looks like it's generated from this file: http://codebrowse.launchpad.net/~bzr/bzr/trunk/annotate/pqm%40pqm.ubuntu.com-20070825182243-a3w20rpadbfz8euc?file_id=server.txt-20060913044801-h939fvbwzz39gf7g-110:20
jeremybtolonuga: so, anyone that can checkin there...10:21
tolonugaok, thanks. unfortunatly I can't checkin, I'm only a stupid user looking at docs and finding tiny issues. will open a bug if noone responds here, so the issue is not forgotten.10:24
mwhudsontolonuga: you could send a bundle to the mailing list, that's the usual way for things like this10:36
=== sverrej_ [n=sverrej@tul-1x-dhcp019.studby.uio.no] has joined #bzr
=== aadis [n=aaditya@] has joined #bzr
=== jrydberg__ [n=Johan@c80-216-246-123.bredband.comhem.se] has joined #bzr
=== igc dinner
tolonugahow can I create a mail in bundle format from a local commit? preferable something I can cut&paste into my mail app - I don't want bzr to send email itself.10:59
fullermdbundle will spit out a bundle on stdout; you can redirect that into a file, then attach it.11:00
tolonugaah, thanks!11:01
=== gabe_ [n=gabriel@] has joined #bzr
=== gabe_ [n=gabriel@] has joined #bzr
=== oldmanstan is now known as oldmanstan|away
=== sverrej [n=sverrej@pat-tdc.opera.com] has joined #bzr
=== g0ph3r [n=g0ph3r@p57A0B832.dip0.t-ipconnect.de] has joined #bzr
=== NamNguyen [n=namnt@cm246.delta196.maxonline.com.sg] has joined #bzr
=== bac [n=bac@canonical/launchpad/bac] has joined #bzr
markvandenborreI'm looking into using bzr to manage a few django (web framework) projects I am working on together with a friend12:39
markvandenborreI would regularly be working offline (on the train)12:40
igcnight all12:41
markvandenborreup-to-date code would be needed on each of our machines, plus an external webserver12:41
Odd_Blokeigc: Night!  Thanks for the merges. :)12:41
markvandenborrewhat kind of workflow would you recommend?12:41
Odd_Blokemarkvandenborre: You could just use a centralised workflow, because you can commit locally when working offline...12:43
markvandenborreok, will be investigating that path12:43
markvandenborreOdd_Bloke, thx a lot!12:44
Odd_Blokemarkvandenborre: That's not necessarily the only/best one to use though.12:44
Odd_BlokeBut it would work.12:44
markvandenborreOdd_Bloke, I figured I would really need a feature like local commits because of my long train commutes12:44
markvandenborreOdd_Bloke, you think that would be the easiest way to get started with bzr?12:45
Odd_Blokemarkvandenborre: If it makes sense in your situation, then do it. :p12:46
=== jelmer [n=jelmer@a62-251-123-16.adsl.xs4all.nl] has joined #bzr
markvandenborreis it bad policy to setup a central repository for web projects on a production webserver?01:09
markvandenborreit's not a leaky php server, and only running sshd and apache, but still...01:10
markvandenborreI can imagine it's not a good thing to have both on the same server, even if it's very well managed01:11
markvandenborreany thoughts?01:11
=== sabdfl [i=sabdfl@ubuntu/member/pdpc.silver.sabdfl] has joined #bzr
markvandenborrewould it be better to put the bzr repository on a physically separate machine?01:18
datolifeless: I'm uploading 0.90-1 to debian. I guess some ubuntu person will have to make sure it makes through UVF.01:19
fullermdmarkvandenborre: That sounds like a site policy question.  bzr certainly wouldn't care.  It's not hard to move stuff around later if you change your mind...01:24
markvandenborrefullermd, yes, it is a site policy question... trying to be careful about setting things up with minimal overhead, but still safe01:25
markvandenborrefullermd, your remark about easy of moving is definitely interesting!01:26
fullermdAs a handwavy position statement, I tend to think that if a server gets cracked, the VCS history is probably one of the least interesting things on it...01:26
markvandenborreyou're probably right about that01:27
fullermd(situations change cases, of course, but as a general rule)01:27
fullermdI'm all about putting all your eggs in one basket, and watching that basket like a hawk   ;)01:27
markvandenborrenow on a machine without php, with only 80 and 22 open, that might be a sound policy01:27
markvandenborreyou're probably right that I'm too paranoid01:28
fullermdOn the flip side, if there's no particular reason _not_ to have the central repo on the server server, there's also probably no particular reason _to_ have it there.01:29
markvandenborrefullermd, it's a bit stupid to put up a separate (virtual) machine just for bzr01:31
fullermdProbably, yeah.01:33
=== ipkiss_ [i=ipkiss@nat/ecp/x-5fa7e69cfe18bb65] has joined #bzr
cnus8nhi, is there any link to a tutorial on setting up a bazaar with webdav?01:39
=== Zindar [n=erik@stockholm.ardendo.se] has joined #bzr
=== laga [n=laga@mythwiki.de] has joined #bzr
lagahey guys. i've just done a "bzr revert" - how can i revert the revert itself?01:50
lagaeg undo it?01:50
=== ddaa [n=david@canonical/launchpad/ddaa] has joined #bzr
markvandenborreOdd_Bloke, in the situation that I just described (2 developers, web development, frequent offline commits), is there also a comfortable way to do without a central repository?02:04
=== jelmer [n=jelmer@a62-251-123-16.adsl.xs4all.nl] has joined #bzr
=== niemeyer [n=niemeyer@200-103-134-216.ctame705.dsl.brasiltelecom.net.br] has joined #bzr
=== mw|out [n=mw@] has joined #bzr
=== mvo [n=egon@p54A6799E.dip.t-dialin.net] has joined #bzr
gabe_laga: just revert to the most recent commit02:17
gabe_markvandenborre: you can use push/pull02:17
gabe_markvandenborre:  i.e. a decentralised system02:17
lagagabe_: i made a change, reverted said change and now i want to go to the state before the revert02:18
gabe_if you don't have a commit of that change then you can't02:19
gabe_unless you manually redo it02:19
=== gldnspud [n=gldnspud@] has joined #bzr
=== singy [n=singy@] has joined #bzr
siretartlifeless: are you working on getting bzr 0.90 into gutsy?02:22
markvandenborregabe_, thx02:25
lagagabe_: thanks.02:26
markvandenborregabe_, how would I then be able to sync stuff with the other guy when I am at a remote site?02:26
lagagabe_: lucky me - it was not a crucial change :)02:26
gabe_markvandenborre: np you can read all about pull push and merge on the documentation part of the bazaar site02:26
=== Zindar [n=erik@stockholm.ardendo.se] has joined #bzr
=== tchan [n=tchan@lunar-linux/developer/tchan] has joined #bzr
gabe_markvandenborre:  to sync stuff with a remote computer you would need access to it via the internet. I personally have ssh setup. In this case you can push or pull bzr repositories using sftp02:33
gabe_does the other guy have ssh running?02:34
=== laga [n=laga@mythwiki.de] has left #bzr []
markvandenborregabe_, yes, but his provider blocks every port below 102402:34
gabe_well either get him to run ssh daemon on a high port02:34
fullermdWell.  There are two distinct questions here...02:34
gabe_or try http or the built in bzr server on  a high port02:35
=== mdmkolbe [n=mdmkolbe@iub-vpn-192-54.noc.indiana.edu] has joined #bzr
fullermdOne is "do you work centralized [i.e., on a shared branch]  or decentralized [on individual branches you merge back and forth] ".02:35
gabe_but you would also need port forwarding if he is beind a NAT or firewall02:35
fullermdThe other is "If (b), how do you access each other's branches"02:35
gabe_markvandenborre: in this case I think it is easiest to have a central server that you can both push or pull from02:36
fullermdYou can go (b) decentralized, with no shared trunk, but still use a central server to reach each other's branches.02:36
gabe_so he can put his changes on the server and you can pull them to yur comptuer02:36
gabe_then you don't need to worry about firewall, NAT, and blocked ports02:36
AfCfullermd: that's more or less what we do02:37
=== bac [n=bac@canonical/launchpad/bac] has joined #bzr
=== xxxxx1 [n=xxxxx1@146037.fln.virtua.com.br] has joined #bzr
mdmkolbeIn bzr what is the correct way to construct a self contained set of patches to be sent upstream? (e.g. darcs send --output foo.patch-bundle)02:40
datomdmkolbe: `bzr send -o foo.patch-bundle` should work02:41
datomdmkolbe: if your bzr is a bit old and does not have send, use `bzr bundle >foo.patch`02:41
=== bwinton [n=bwinton@mail.phantomfiber.com] has joined #bzr
fullermdFor values of "a bit old" that mean "some ancient version released more than 18 hours ago"...02:42
datofullermd: oh, 0.18 didn't have it?02:42
mdmkolbedata: there is no "bzr send" in my version ... ok bundle-revisions works02:42
fullermdNah, the send stuff is new in 0.90.02:42
datomdmkolbe: it should be smart at guessing what to diff against, but you can specify the location of the branch you branched from as an argument02:43
=== sabdfl [i=sabdfl@ubuntu/member/pdpc.silver.sabdfl] has joined #bzr
=== mw|out is now known as mw
mdmkolbedato: if it guesses wrong will that be detected at patch application time?  (e.g. take A and make branch B from it;  commit a change to B; branch C from B; commit a change to C that depends on changes made in B;  make a patch that should have been between C and A but I did it wrong and it's actually from C to B and try to apply that to A).02:45
datomdmkolbe: it will be detected because it will fail to apply. and note that, while "a change to C that depends on changes made in B" makes sense in the darcs world, in bzr if you branch from B, revisions in C will *always* depend on revisions in B even if the changes are in different files02:48
dato(so it is normally recommended that you branch from A instead of B if you know the changes are independent)02:48
=== bac [n=bac@canonical/launchpad/bac] has joined #bzr
mdmkolbedato: thx, the "note that..." part actually helps my understanding of the bzr model quite a lot.02:50
=== nx [n=hartke@nordcom-adsl-71-148.zfn.uni-bremen.de] has joined #bzr
=== jamesh [n=james@canonical/launchpad/jamesh] has joined #bzr
=== sabdfl [i=sabdfl@ubuntu/member/pdpc.silver.sabdfl] has joined #bzr
=== Zindar_ [n=erik@stockholm.ardendo.se] has joined #bzr
=== jml [n=jml@ppp121-44-221-92.lns1.hba1.internode.on.net] has joined #bzr
=== ddaa [n=david@canonical/launchpad/ddaa] has joined #bzr
=== jdong_ is now known as jdong
=== mr_daemon [n=gauthier@pf.quebecloisirs.com] has joined #bzr
=== Zindar [n=erik@stockholm.ardendo.se] has joined #bzr
mr_daemonI just got into bazaar, and I quite like it so far. I might event switch from svn, actually. However I can't get sftp:// or bzr+ssh:// to work with the Windows client... I used the standalone installer...04:01
mr_daemonThis is basically what happens: bzr: ERROR: paramiko.SFTPError: Garbage packet received04:02
bwintonCan you stfp or ssh in to the same server from your Windows box?04:03
mr_daemonYes, it works fine.04:03
mr_daemonI can checkout, get, pull and push to that server with a Linux or OS X client04:03
bwintonDid you google "paramiko.SFTPError: Garbage packet received"?04:03
mr_daemonI must admit I didn't because I just noticed the error above the stack trace as I came on here. So, to google it is.04:04
bwinton(It looks like it's a bug in the version of Paramiko that ships with the Windows installer...  Which version of bzr are you using again?)04:04
=== ubotu [n=ubotu@ubuntu/bot/ubotu] has joined #bzr
mr_daemonI'm using stable, which is 0.1804:06
bwintonHmm...  (I think that's what I'm using as well, but I might have upgraded to 0.90...)04:07
bwinton(Oops., coffee time.  Back in a few.)04:07
mr_daemonYeah, I'm overdue for a break as well. Thanks for you assistance, too :)04:08
bwintonMy pleasure!  Hopefully someone can help you out a little more...04:08
Lo-lan-doWhat's the difference between sftp:// and bzr+ssh://?04:08
Lo-lan-do(I mean, the user-visible difference, I don't much care about the internals :-)04:09
bwintonOne uses SFTP, the other uses ssh to spawn a bzr process on the remote machine...04:09
fullermdOne uses sftp, the other uses bzr over ssh  ;)04:09
bwintonDang.  I dunno, then.04:09
mr_daemonWell, when I try bzr+ssh the error is a tad more explicit, it prints out the output from the ssh server.04:15
mr_daemonbzr: ERROR: Generic bzr smart protocol error: bad response ("user@host's password: \r")04:16
Lo-lan-doMaybe it only works with ssh keys?04:17
Lo-lan-do(Feel free to ignore me, I haven't touched Windows in years)04:17
mr_daemonCould be. Let me try, I'll just pop a public key in with putty then try again.04:17
=== asabil [n=asabil@] has joined #bzr
mr_daemonhaha, that's fine. I'm more of a unix guy stuck on windows right now, so I'm just trying to cope.04:17
asabilhi all04:17
asabilis there any way to be able to checkout on repositories ? (not branches)04:18
asabilso that it would be possible to checkout the root of the repository and get all the projects (that's what svn users are used to apprently)04:19
asabilfullermd: what would you suggest then ?04:19
asabilcreating one huge branch ?04:19
=== sabdfl [i=sabdfl@ubuntu/member/pdpc.silver.sabdfl] has joined #bzr
Lo-lan-doMultiple branches linked with the subtree thingy?04:20
asabiloO, how do you link branches ?04:21
asabilany doc ?04:21
fullermdEek, no...   I suggest managing user expectations.  With a blunt object   ;)04:21
Lo-lan-doHaha, doc.04:21
fullermdWell, first I think you finish implementing subtrees...04:21
datoasabil: it's easy to write a small script that downloads all existing branches in a repository, and there is already code (in bzrtools) to update all of them with one command.04:22
asabilok dato, the thing is just that I have to deal with windows developers, and I need to make it as stupid-proof as possible04:23
mr_daemonOkay I just tried with public/private keypair, and it seems paramiko is ignoring the ssh agent and still asks for a password...04:23
datowell, then you'd probably want for that small script to be a command in bzrtools, but it does not exist yet.04:23
NamNguyendoes anyone know how bundlebuggy work?04:24
bwintonabentley does.04:24
NamNguyenhe sure does, but he's not around04:24
NamNguyendoes pqm allow me to review patches before merging them?04:25
NamNguyenthere is so little docs on either of them04:26
bwintonI believe it does, since people on the bzr list talk about merging patches manually...04:28
NamNguyenbwinton, i might have made myself unclear but by reviewing i was refering to a similar approach as bundlebuggy04:29
bwintonFor instance...04:29
NamNguyeni.e. it's gotta be approved before being merged04:29
fullermdpqm merges when you send it.  You review before that.04:29
mr_daemonOKAY nevermind me. Actually bzr 0.18 on windows, the self-contained bundle, works with sftp -- but you have to use ssh keypairs.04:29
NamNguyenthat's what i understand from the description04:29
mr_daemonSomehow the password prompt makes paramiko choke.04:30
NamNguyenfullermd, do you know if bundlebuggy talks to pqm to initiate the merge after a merge request is approved?04:30
fullermdAFAIK, bb and pqm don't have anything at all to do with each other.04:30
fullermdbb just grabs patches off the ML and keeps track of who's voted what on them.04:31
NamNguyenthen how is patch merged?04:31
fullermdOne of the developers mails it to pqm.04:31
NamNguyenby forwarding?04:31
fullermdI think most of 'em use a bzr plugin.04:32
=== Vernius [n=tomger@] has left #bzr []
fullermdI don't think you can forward a patch to pqm, you send it a command and a branch location to merge from.04:32
NamNguyendoes that mean 1. the developer merges the patch himself, 2. he publishes that branch, 3. pqm then merges from it?04:34
NamNguyenwoot, quite some work there04:34
NamNguyenpqm could have just read a merge directive04:35
fullermdWell, in much the sense that bzr could have just run server-side hooks via the smart server...04:35
=== mthaddon [n=mthaddon@canonical/launchpad/mthaddon] has joined #bzr
=== orospakr [n=orospakr@] has joined #bzr
NamNguyenwhat kind of hook? i only know about post_commit hook04:36
fullermdAny hook.  It was an abstract comparison.04:37
NamNguyenoh, alright04:37
fullermdEither one is just a SMOP.  Nobody's done the P.04:37
fullermd(at least, I don't think anyone has)04:37
mr_daemonWait -- bazaar has post_commit hooks too? Okay, I'm definitely sold.04:37
NamNguyenmr_daemon, er, what VCS doesn't have post_commit hook?04:38
NamNguyeni'm curious04:38
mr_daemonWell, I was just spoiled by how easy it was to write a post commit hook for subversion.04:39
mr_daemonBut actually -- Darcs doesn't.04:42
mr_daemonWhich was the only other VCS I actually sort-of liked.04:42
mr_daemonWell, before bzr that is.04:42
Lo-lan-doDoes RCS have hooks? :-)04:43
fullermdI think RCS _is_ a hook   :p04:45
Lo-lan-doGood point.04:45
=== sabdfl [i=sabdfl@ubuntu/member/pdpc.silver.sabdfl] has joined #bzr
kanhaiya_kkNamNguyen: hi05:04
kanhaiya_kkyou there ?05:05
kanhaiya_kkcan anybody help me ?05:08
kanhaiya_kki ll tell me present status first05:08
bwintonMaybe.  What's your problem?05:08
kanhaiya_kki have checkedout the source on .16 and .17 machine05:08
kanhaiya_kksame source05:08
kanhaiya_kkfirst i edited the test.html file on .16 machine and then on .1705:09
kanhaiya_kkand then i done commit and update05:09
kanhaiya_kkfirst on .16 and then on .1705:09
kanhaiya_kkwhile doing on .17 it was giving some errors...due to conflicts.05:10
kanhaiya_kkso how to resolve such conflicts ? or is there any other method to handle such situation ?05:10
kanhaiya_kkbwinton: now your turn.05:10
bwintonGoogling for "bzr how to resolve conflicts" gives me the following urls:05:11
kanhaiya_kkbwinton: okay thank you05:11
bwintonAre either of those helpful?05:11
kanhaiya_kki ll check and get back to you05:11
bwinton(OOps, that second one should have been http://bazaar-vcs.org/Tutorials/CentralizedWorkflow#merging-changes-back instead...)05:12
kanhaiya_kkokay wait05:14
=== J-Unit [n=jdong@wireless-154.media.mit.edu] has joined #bzr
=== J-Unit is now known as jdong_
=== p4tux [n=p4tux@] has joined #bzr
kanhaiya_kkbwinton: that somewhat manual process...05:18
kanhaiya_kkhow can we avoid for conflicts ?05:19
kanhaiya_kkbwinton: because, if group like us working on same project means, conflicts ll take place every hour.05:19
kanhaiya_kkso i want to avoid such situations.05:20
datokanhaiya_kk: conflicts only arise when two people modify the same line in incompatible ways. that should be less frequent that you paint.05:21
kanhaiya_kkdato: okay05:21
kanhaiya_kkif 2 developers edit the same file, but not the same lines, then conflict ll not arise na ?05:22
datokanhaiya_kk: no, it won't05:22
kanhaiya_kkokay good05:23
kanhaiya_kki ll test it...wait05:23
=== cprov is now known as cprov-lunch
=== bwinton [n=bwinton@mail.phantomfiber.com] has joined #bzr
bwintonCursed IRC client...  Did I miss anything?05:30
dato17:23 <kanhaiya_kk> i ll test it...wait05:30
datothat was the last line05:30
bwinton'k.  Cool, thanks!05:30
=== madduck [n=madduck@debian/developer/madduck] has joined #bzr
bwinton(Say, does anyone know if there's a way to get ubotu to msg me the last n lines?  So that I don't have to ask next time?)05:31
kanhaiya_kkdato: thanks...it is working fine05:32
=== madduck [n=madduck@debian/developer/madduck] has left #bzr []
=== p4tux [n=p4tux@] has joined #bzr
=== beuno [n=beuno@44-111-231-201.fibertel.com.ar] has joined #bzr
=== ness [n=ness@i59F71DD9.versanet.de] has joined #bzr
nessHi, I want to factor out some functions of one source file into a new one. Can I somehow make bzr sorta retain the version history of these functions (for merging)?05:57
=== bwinton [n=bwinton@mail.phantomfiber.com] has joined #bzr
bwintonThis is getting kind of tiresome...06:02
=== aadis [n=aaditya@] has joined #bzr
=== mlh [n=mlh@c211-30-211-232.belrs1.nsw.optusnet.com.au] has joined #bzr
=== abadger1999 [n=abadger1@] has joined #bzr
mwhudsonso i'm talking about bzr at pyconuk in a couple of weeks06:25
mwhudsonmy slides are at http://python.net/crew/mwh/pyconuk07_bzr.pdf06:25
mwhudsoncomments welcome :)06:25
james_wness: no, sorry that is not possible.06:29
bwintonmwh: "Bazaar aims to be safe, friendly, free and fast" In that order?06:29
nessjames_w: ok06:29
=== ness [n=ness@i59F71DD9.versanet.de] has left #bzr []
mwhbwinton: it's what bazaar-vcs.org _used_ to say on it's front page06:29
NamNguyeni dont quite get the idea of "aims to be free"06:30
NamNguyenit's either free, or non-free06:30
bwintonmwh: On "Working With Others", you might want to mention that push doesn't update the remote server.  i.e. the files won't be there.06:30
=== sabdf1 [i=sabdfl@nat/canonical/x-564b0742f9415386] has joined #bzr
mwhbwinton: hmm06:32
bwintonmwh: Colour in your pictures would be nice, if its easy to do.  If not, they're fine...06:32
bwinton(I mention the push-not-update because it bit me when I started, and has bitten at least three other people that I've seen...)06:32
mwhi was engaged in extreme rushing for a deadline with the pictures, but it got pushed back06:32
NamNguyendarn, bundle buggy requires procmail06:32
mwhit would be good to make them a bit prettier, indeed06:33
mwhi'll mention what push does out loud, i think, i don't want to clutter the file06:34
mwhfile -> slide06:34
bwintonmwh: Cool.  In the some pictures, should rev B be "B+i" or "B+1", and if it's "B+i", should the "i" be an "n", and should it look more like the server (with the multiple revs stacked)?06:34
=== oldmanstan|away is now known as oldmanstan
mwhbwinton: heh, the B+i think is a hack because i didn't want to get into talking about how revisions are numbered in bzr06:34
bwintonOkay, but I think you can sweep it all under the rug, and just call it "B"...  No, wait...06:35
mwhand perhaps trying to indicate machines on the diagrams is a bit unfair06:36
bwintonHow about A (living on the server), B (on your machine), and C (on his machine)?06:36
mwhthey should probably be branches06:36
bwintonThen you can have B+1, C+1, B+2...06:36
mwhbwinton: yeah, that works06:36
bwintonI think the separate machines are a good idea...06:36
bwintonIt drives home the "You don't need the server" feature.06:37
bwintonIf you could put the other two machines inside a picture of an airplane, that would be cool, but completely excessive.  ;)06:37
=== asak [n=alexis@201-27-61-63.dsl.telesp.net.br] has joined #bzr
bwintonAlso, back near the first slide, "Distributed means there is no privileged central location" perhaps should be "Distributed means there doesn't have to be a privileged central location", since in the workflows, you say "Centralized  all data lives on a single server, like Subversion", where there is obviously a (socially-)privileged central location.06:38
bwintonIn "Better Centralization", s/emacs/notepad/ ;)06:40
NfNit|oopbwinton: but implementation-wise, that central copy is equal to all others.06:40
NfNit|oopAnd I think that's the important part.06:40
bwintonNf: Kind of, but G*d help you if you release off of the non-central copy...06:40
bwintonLike I said, it's socially (not technically) privileged.06:41
NfNit|oopwhy?   In fact, releasing off of a non-central branch might be a good idea.06:41
NfNit|oopso your central version can be a "dev".06:41
radixI agree with bwinton; it's worth pointing out that it's not *necessarily* centralized06:41
NfNit|oopand your non-central one a "stable".06:41
=== NfNit|oop is now known as NfNitLoop
bwintonNf: then I would argue that you've actually gotten the notions of  "central" and "non-central" backwards.  ;)06:42
radixI have talked with many people who didn't want to go with bzr because they thought they couldn't have a central branch.06:42
bwintonNf: It's a terminology issue at that point, I believe.06:42
NfNitLoopradix: Oh?   Hmm, I guess in that case it does merit pointing that out.06:43
NfNitLoopBut it wasn't log into my reading about bzr that I found the page on workflows and that all got cleared up.06:43
bwintonmwh: In "Better Centralization", I might change the background colour of "co", and then later on in "Working Distributedly", use a new background colour for "branch", to highlight the major user-level difference between the two...06:44
bwintonmwh: Basically answer the question "Why do changes stay local in one case, but not the other?".06:44
=== mwh catches up on comments
mwhbwinton: maybe i should have the centralized workflow use vim and the distributed use emacs :)06:47
mwh(and then mention that emacs is obviously superior)06:47
james_wdato: thanks for the quick upload.06:48
bwintonHeh.  :)  Anyone who can't code in "cat > filename"/"copy con filename" doesn't deserve the label "Programmer".06:48
mwhbwinton: at a higher level, do you think it's a reasonable selection and ordering of topics?06:49
bwintonLet me check in a second...06:49
bwintonI'm almost at the end.06:49
mwhit's probably too much, it's only a 30 minute talk06:50
bwintonMaybe not...  People tend to talk fairly quickly...06:51
bwintonAt least, I tend to talk fairly quickly...  :)06:51
bwintonThe pictures are 14 of the slides, and those should go by really fast.06:53
mwhit's 40 slides in keynote06:53
bwintonIf you're running short, you could drop the Launchpad portion.06:54
bwintonThat's odd, it says 49 in the pdf.06:54
bwintonActually, why is the Launchpad stuff in there?06:55
mwhwell, partly because my job is working on launchpad/bazaar integration :)06:56
mwhthe reason that the pdf has more pages is that keynote makes a slide per 'build step' of each slide06:56
bwintonAhhh...  Makes sense.06:57
=== cprov-lunch is now known as cprov
bwintonIt seems good to me, if you can fit it all in.  It's hard to say more without knowing the what the audience is going to be like...06:59
datojames_w: np06:59
mwhit's the first time this conference has happened, so noone really does :)06:59
bwintonIf it's all people who have seen bzr (i.e. me), you could skip some of the earlier stuff, and concentrate on the launchpad bits.  If it's people who haven't heard of a DVCS, then the earlier stuff would be more useful.07:00
bwintonMaybe ask at the start, and flip past the appropriate slides, then.07:00
mwhi think i want the talk to be about 40% advertisement for dvcs, 40% advert for bzr and 20% on launchpad/bzr07:00
mwhbwinton: yeah07:00
bwintonSo you don't plan on giving it 110%, then?  ;)07:00
mwhbwinton: i'm not expecting most people to have used a dvcs07:01
bwintonI wouldn't have either, but there was Linus' talk at Google on Git...  I hear that's been pretty popular...07:02
bwintonSo even if they haven't used a dvcs, they might have heard about them.07:02
gabe_there some mercurial screencast on google video also07:02
bwintonYeah, I saw that one as well...  Bryan O'Sullivan (I think) is a pretty good speaker.07:03
=== luks [i=lukas@unaffiliated/luks] has joined #bzr
=== asabil [n=asabil@062016191213.customer.alfanett.no] has joined #bzr
=== cypherbios [n=cyr@ubuntu/member/cypherbios] has joined #bzr
=== Janzert [n=Brian@75-134-223-54.dhcp.trcy.mi.charter.com] has joined #bzr
=== jrydberg_ [n=Johan@c80-216-246-123.bredband.comhem.se] has joined #bzr
=== jdong_ [n=jdong@ubuntu/member/jdong] has joined #bzr
=== aadis [n=aaditya@] has joined #bzr
=== jdong_ is now known as jdong
=== ipkiss_ is now known as ipkiss
=== TFKyle [i=kyle@71-17-16-130.regn.hsdb.sasknet.sk.ca] has joined #bzr
=== xxxxx1 is now known as deadwill
=== bac [n=bac@canonical/launchpad/bac] has joined #bzr
=== ddaa [n=david@canonical/launchpad/ddaa] has joined #bzr
=== hstuart [n=hstuart@0x503e9913.virnxx12.adsl-dhcp.tele.dk] has joined #bzr
=== matkor [n=matkor@] has joined #bzr
=== Lo-lan-do [n=roland@mirenboite.placard.fr.eu.org] has joined #bzr
matkorHi !. Can I update many working trees at once ? like bzr update this that and/that/dir/too ?08:40
mr_daemonmatkor: Uninteresting trivia, but if you're on unix with bash, you can probably get away with doing this:08:59
mr_daemonfor i in this that and/that/dir/too ; pushd $i && bzr update && popd ; done08:59
=== mwhudson [n=mwh@62-31-157-102.cable.ubr01.azte.blueyonder.co.uk] has joined #bzr
=== mwh [n=mwh@62-31-157-102.cable.ubr01.azte.blueyonder.co.uk] has joined #bzr
matkorIf mr_daemon: I would have to give password each time when using sftp transports09:31
mr_daemonmatkor, That is true, but you could also use private/public keypairs, feed them into ssh-agent beforehand, and enjoy the blissful automated action of this.09:31
mr_daemonThis is clumsy, but the only quick way i could think of =/09:32
matkormr_daemon: OK. thank you very much09:33
Lo-lan-doIf all remote repos are on the same host, there's a trick that allows SSH to reuse an existing connection.09:34
Lo-lan-doControlMaster or something.09:34
Lo-lan-doI don't know if it re-asks for passwords, though.09:34
mwhnew version of my slides: http://python.net/crew/mwh/pyconuk07_bzr.pdf09:37
=== Gwaihir [n=Gwaihir@ubuntu/member/gwaihir] has joined #bzr
Odd_Blokemwh: Ooh, pretty. :)09:41
=== sabdfl [n=sabdfl@ubuntu/member/pdpc.silver.sabdfl] has joined #bzr
bwintonmwh:  I finally figured out what was bugging me with A+i/A+2i...  It seems like he's progressing twice as fast as you are!  What do you think about changing it to A+i and A+i2?09:46
mwhit's _supposed_ to be an allusion to complex numbers :)09:47
bwintonYeah, i kind of got that, but he's still going from i to twice i in the time that it takes me to go from 2 to 3...  :)09:47
bwinton(It's certainly complex.  ;) )09:47
hstuartmw, few quick comments: on page 2 it seems odd to add (technically speaking) from slide 2 to slide 3 when there are releaved points below that; p. 33: you can work on a train? perhaps revise to: you can work while travelling?; p. 41: consider different bullets for different levels, e.g. boxes for the second level (also other slides); the quality of your logo is much too low, it'll look severely pixelated when projected09:49
hstuartmwh, even09:49
hstuartmwh, also it annoys me that the sans-serif font in your drawings writes 1 as I09:49
mwhbwinton: i'm ditching the A+i vs A+1 stuff09:49
mwhit's just confusing09:49
bwintonThat's probably for the best...  What are you going to replace it with?09:50
bwintonhstuart: I was going to suggest he change "on a train", to "on a plane, train, or automobile", because who doesn't like a good Steve Martin/John Candy movie?09:51
bwinton(With the caveat that if you're the one driving any of the previous, perhaps you shouldn't be coding...)09:53
mwwrong mw :)09:55
datomwh: I think both should read A+109:55
datoor s/should/could/ :)09:55
mwhdato: err09:56
mwhdato: no thanks :)09:56
datowell, sooner or later people will have to deal with that09:56
hstuartmw, I blame tab completion :D09:56
datogives you a nice opportunity to say "the revno does not uniqly represent a revision" or something like that09:57
bwintonThat's why I like to go with unique prefixes for my name.  ;)09:57
mwhnew version uploaded09:57
mwhwith the font of just "1" carefully changed on lots of slides :)09:58
mwhdato: i'd rather write in a mini revid09:58
=== oldmanstan [n=glesica@] has left #bzr []
datomwh: your call :)09:59
hstuartmwh, well, the rest of my concerns are still present in the new version ;)09:59
mwhhstuart: indeed09:59
mwhhstuart: i think i respectfully disagree with you on most of them09:59
hstuartmwh, heh ok, no worries10:00
bwintonIs the logo actually too low-res?  I figured it'ld just be the SVG version, and so wouldn't matter what resolution it's projected at...10:01
hstuartbwinton, you can try to zoom in. Looks like an embedded png10:01
bwintonI guess at 300% I can see the pixels...10:01
mwhit's a png10:01
mwhbut most projectors are 1024x768 at best10:02
hstuart*shrug* I might just be overly picky with such things10:03
Lo-lan-doHm.  Is this a Bazaar presentation, or just a pretext to plug Launchpad?10:03
bwintonLld: A bit of both, I believe...10:04
mwhi would like to embed the svg, somehow i doubt keynote supports that10:04
bwintonTo quote """[13:00]  mwh: i think i want the talk to be about 40% advertisement for dvcs, 40% advert for bzr and 20% on launchpad/bzr"""10:04
mwhLo-lan-do: would "is that a chip i see on your shoulder?" be an overly unfair response to that?10:04
Lo-lan-doI don't know.  I've heard the idiom, but I have no clue as to what it means, I'm afraid :-)10:05
Lo-lan-do(Yay for being French)10:05
mwhLo-lan-do: of course it's not "just a pretext to plug launchpad"10:05
bwintonmwh: Would http://www.xml.com/pub/a/2004/01/07/keynote.html be of any use to you?10:06
bwinton(Hmm, apparently not.)10:06
mwhbwinton: probably not, and certainly not given that i have another talk to write for the same conference :-)10:07
bwintonOkay, I'm off.  Have a fun evening, everyone!10:34
=== bwinton [n=bwinton@mail.phantomfiber.com] has left #bzr []
=== Demitar [n=demitar@c-212-031-190-120.cust.broadway.se] has joined #bzr
=== sverrej [n=sverrej@tul-1x-dhcp018.studby.uio.no] has joined #bzr
=== sverrej_ [n=sverrej@tul-1x-dhcp016.studby.uio.no] has joined #bzr
Janzertmwh: very minor (i.e. just ignore me) nit/bug in the talk, pg. 37 first link reads +login but tries to link to +register10:59
mwhJanzert: thanks10:59
mwhhooray keynote10:59
abadger1999abentley: ping11:26
abadger1999abentley: We're doing a license audit of Fedora packages and I noticed that trac+bzr doesn't have a GPL version in any of the source files.11:26
abadger1999Because of the wierd wording of the GPLv2 we're being told to mark that as "any version of the GPL"11:27
abadger1999Is that what you intend?  Or GPLv2? Or GPLv2+?11:27
abentleyI'm not the sole author of trac+bzr.11:28
abentleyI'd certainly place my code as GPL2+11:28
abadger1999Yeah... I gather that anyone of you (the authors) can choose the GPL version as it's currently under any version that the receiver of the code chooses.11:29
=== poolie [n=mbp@ppp112-44.static.internode.on.net] has joined #bzr
=== aadis [n=aaditya@] has joined #bzr
abadger1999Would you be upset if I list it as GPL+ (Meaning GPL any version)?  I can certainly do that until someone decides they are authorized to add a version to a source file.11:31
abadger1999I just like to ping someone about this when I see a COPYING file that's GPLv2 but the lack of version-in-code means we consider it GPL+.11:32
abentleyabadger1999: This means also GPL1, I supposed?11:33
abentleyThat would bother me a bit.  Clearly the authors intended 2, and possibly 2+.11:34
abadger1999Exactly my problem :-(11:34
lifelessso the issue is this clause11:35
abentleyTo me, it is clear that it was intended to be distributed under 2, and any other version is not clear.11:35
lifelessIf the Program does not specify a version number of11:35
lifelessthis License, you may choose any version ever published by the Free Software11:35
lifelessif the readme or *something* does not says 'Version 2 GPL or later, see COPYING for the licence'11:36
lifelessthen that clause makes it the recipients choice.11:36
lifelessabadger1999: I'd strongly argue that a README or something else is sufficient, not a per-file heading (to satisfy the clause - because the clause talks PROGRAM)11:37
abadger1999lifeless: Sure.  I'll take that.  Although, license in the source is definitely preferable (as it's unambiguous at that point)11:38
lifelessabentley: and easy fix is for you set version 2, because you are *an* author, you can just say 'I chose version 2+ for my modifications, which is compatible with the licence'11:38
abentleyWe don't have a version specified anywhere that I can tell.11:39
abadger1999bzr+trac just doesn't have a GPL version anywhere except the COPYING file.11:39
abadger1999lifeless: +1  That would make the work as a whole GPLv2+ which makes the license clear.11:40
abentleyOkay, I will specify 2+ for my version of trac+bzr.11:40
abentleyDo you want a source code change before you apply that?11:41
abadger1999abentley: It would be great for the notice to show up in the files I pull from your repo.11:41
pooliegood morning11:44
poolielifeless, i'm going to separate out a branch for you that adds to the pack repository the ability to store and get texts by hash11:48
lifelesspoolie: ok11:49
lifelessI saw some commits in that direction;11:49
pooliei thought it'd be better to review them separately first11:49
abentleyabadger1999: Okay, revno 181 has GPL 2+ in the README and the main source file.11:50
lifelessis it the sha of the representation in the repo or the sha of the reconstituted text11:50
pooliei think it's a good way to try out the splitting even if we don't finally want them addressed that way11:50
lifelesswill they be delta compressed11:50
poolielifeless, at the moment they are not compressed11:50
poolieso they're the same11:50
abadger1999abentley: Thank you much.  Helps me keep the lawyers happy while doing what I think the developers intend  :-)11:50
poolieneither dictionary compressed or delta compressed11:50
lifeless(not because I care about the answers, but I want the interface to be clear about what it is delivering)11:50
pooliehello abadger11:50
abadger1999poolie: greetings11:51
lifelesspoolie: I'm doing a knit format bump to make it more flexible and the index optional.11:51
poolieoh, you're not the badger i thought you were :)11:51
pooliebut hello anyhow11:51
lifelesshes a badger not b badger :)11:51
poolieanyhow the interface would be defined as the hash of the reconstituted text11:52
poolieyou may have also seen i was making a base class with some of the repeated code between the two knit formats11:52
lifelesstwo knit formats ?11:52
pooliei mean, two knit-in-pack repository classes11:53
abadger1999:-)  I was notified that my lawsuit was going well the other day and had to call Texas collect to clarify that I'm a different badger.11:53
lifelessoh; uhm; I'd rather not do that, because of the unclarity about the subtrees stuff11:53
lifelessMoving things into PackCollection is how I planned to reduce the duplication11:54
pooliewhat unclarity?11:55
lifelessI believe some of the subtrees policy is expressed by what class; some by attributes, some by code11:56
lifelessso a base class will bring in multiple inheritance11:56
abentleyabadger1999: So what's the status of trac+bzr?  Is it in fedora already, or in the next release?11:57
abadger1999abentley: It's in Fedora already.   Let me lookup which versions its built for11:58
abadger1999abentley: Fedora 6,7, devel (will be 8) and RHEL-5  It's the trac-bazaar-plugin package.11:59
poolieyes, it did bring in mixin style MI11:59
pooliei'm not a fan of MI in general but it's better than copy and paste12:00
abentleyabadger1999: So I could say "since Fedora Core 6"?12:00
lifelessI guess; I worry it will just stick around, what I had hope to achieve was just a few delegated methods12:00
abadger1999Yep.  That would be accurate.12:00
lifelesswhich while technically copy n paste is hardly so12:00
lifelesswhat I'd really like to achieve is a single class that can be parameterised by the format to enable/disable subtrees12:01

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