/srv/irclogs.ubuntu.com/2009/09/29/#bzr.txt

dubsorry I dont have time00:00
dubI'll bypass it and let the user log one if they feel the need00:03
dubmight I suggest that you dont use tcp/80 if you're not doing http and if you are use expires00:04
lifelessdub: we're doing HTTP00:13
lifelessdub: and expires is orthogonal to the issue @ hand; VCS data doesn't have a strict semantic value for expires00:14
lifelessexpires wouldn't help us at all00:14
dubexpires is the only way to reliably prevent caching00:15
dubin my limited experience anyway00:15
lifelessdub: no-cache does it fine00:17
lifelesswe don't care if caches cache, we cache bust. We have to because there are folk that run caches that don't conform to the rfc's00:18
dubif you say so. yet you seem to have an application that causes caching issues00:18
lifelessno00:18
lifelessfailing to process specific http messages != caching issue00:18
dubwe cache several gbps and I dont know of other problem apps00:18
dubexpires fixes all stale data type problems00:18
lifelesssure, but this is a proxy issue, not a caching issue00:18
lifelessI repeat, its not a stale data issue, not if it looks like rbistolfi's issue.00:19
dubregardless, i've spent enough time on this, thanks for your assistnace00:19
lifelessanytme00:19
lifelessplease do encourage your user to file a bug00:19
dubwill do00:21
igcmorning00:43
igchi lifeless00:44
lifelesshi igc00:44
verterokigc, lifeless: hi!01:10
verterokigc: OS X 10.4 DMG's uploaded. hopefully I'll get Leopard DMG for tomorrow (actually as soon I reboot my "work laptop" into OS X :/ )01:11
igcverterok: well done and thank you01:11
verterokigc: np01:13
spmlifeless: ref upgrading the bzr pqm chroot to hardy; any probs at your end if we stop pqm while the upgrade is done? or would you prefer a less intrusive cutover? I image it'd take an hour or two max.01:17
lifelessspm: stop it01:22
spmlifeless: ta01:22
lifelessspm: I presume you'll take a backup in case we have to roll back?01:22
spmlifeless: heh. 1st thing pjdc did - how big is the chroot vs how much space do we have :-)01:23
verterokigc: http://developer.apple.com/mac/library/DOCUMENTATION/Carbon/Conceptual/ProvidingUserAssitAppleHelp/authoring_help/authoring_help_book.html#//apple_ref/doc/uid/TP30000903-CH206-CIHEAADH01:32
verterokigc: ^ there is a description of the layout/format required by the Mac Help viewer01:33
jrwrendash: thanks! I'll bet uncommit is how I got multiple heads.02:02
spmlifeless: the upgrade is done. Can you fire in a trivial request so we can verify how much we've broken?02:04
robert_ancellCan anyone tell me what is wrong with the branch lp:~ubuntu-desktop/gdm/ubuntu.  When I try and push it says the branches are diverged and when I look at https://code.edge.launchpad.net/~ubuntu-desktop/gdm/ubuntu it says LP is processing changes for this branch02:11
zsquarepluscsomeone else seems to have pushed up new revisions02:13
zsquarepluscyou probably need to "merge"02:14
spmrobert_ancell: ahhh. that'd possibly be related to an issue we're having atm. see #launchpad.02:14
robert_ancellspm, ok, thanks02:15
lifelessspm: do we have python-subunit installed now?02:21
spmlifeless: indeed we do!02:22
lifelessok,  I'll do something shortly02:25
lifelesslunch is begging first02:26
fullermdOoh, what a good idea.02:26
lifelesshttp://paste.ubuntu.com/280891/02:31
lifelessI need someone to audit that02:31
lifelessI think its robust and clear; I'd like it to be moreso02:31
spivlifeless: the layout and invariants section are inconsistent about saying MD5HASH vs. HASH02:33
spivlifeless: the meaning of "There is always 1 and only one match for:02:33
spiv" and the following bullet list isn't obvious to me.02:33
lifelessI'll clean it up. the intent is that only one of the following statements is true02:34
lifelessI hope you have the spare cycles to also logic check it ;)02:34
spiv"- current" isn't a statement, though?02:34
lifelessits a file02:34
lifelessas per layout02:34
lifelessso 'there is a file called current'02:35
lifelessbbs02:35
spivSo just say that ;)02:35
spive.g. "There is always: - a file called 'current'; - exactly 1 file matching '*.check'; - exactly 1 file matching HASH.{current,delete}"02:37
spivIt might be worth saying upfront in the Invariants section if the intent is that this recovery will be performed automatically, or if it will need human intervention.  I'm guessing you intend automatic (I hope so :)02:39
spivIn the insert operations, it's not clear what "check if the insert should complete", and jumping ahead to the commentary still doesn't make it clear exactly what the check is, or what the check is for.02:42
spivIn read sequence, what about the (small) race between listing *.check and opening the result vs. another process renaming foo.check?02:45
spivI assume the answer there is the same as in the next bullet; loop.02:45
spivs/;/:/02:45
spivWhat does "Closing a dirstate" mean?02:46
spivWhat about multiple concurrent processes attempting recovery of the same dirstate?02:47
spivYour markup is a bit inconsistent about using \n or \\n02:48
spivTypo: "remaned"02:48
lifelessspiv: I intend to make automatic recovery possible, I don't intend to do so in the initial spike02:49
lifelessspiv: well, any policy that someone might implement, such as stat cache updates, policy checks, what have you02:50
spivWhat happens in during insert if "mv current foo.check" fails (due to concurrent insert)?02:50
lifelessthis is good - thanks02:50
spivlifeless: so "don't write new file if stat cache has barely changed?02:50
lifelessmore 'dont trash someone elses changes'02:51
lifelessits a critical section, the only time you can be sure noone else inserts (unless they invoke recovery concurrently, and that would be a mess02:51
lifelessso, listing *.check and the .check rename happening, - loop02:52
* lifeless pages up and starts implementing improvements02:52
spiv"errors can be removed" probably should be "errors can be ignored"?02:53
spivI'm not sure how "dont trash someone elses changes" fits with "check if the insert should complete".  If you got as far as the "rename current statefilename.check" succeeding, then as you say you're in the critical section, so how can there be other changes that could be inadvertently trashed?02:57
spivOk, read it all now.02:57
spivIn my ideal world, I think maybe there'd be some sort of formal proof, or at least exhaustive state diagram, to demonstrate that all states are unambiguous in the face of concurrency.  That would be a lot of work, though.02:59
spivBut it is just complex enough that I can't feel 100% sure that it's robust on a single read-through, although it seems plausible that it is.  (With some assumptions about what the FS guarantees, of course...)03:00
spiv(And I don't see any obvious simplifications you could make to the design.)03:01
spivSo, I worry a little about bugs in edge-cases.  I guess they are likely to have easy-to-repair consequences if they do happen.03:02
lifelessso stat cache updates03:03
lifelesssay you have two writers A and B03:03
lifelessthey both concurrently prepare an update03:03
lifelessA is doing a stat cache update03:03
lifelesswe don't know what B is doing03:03
lifelessB wins the race on 'mv current HASH.check'03:04
lifelessand thus completes its insert first03:04
lifelessnow, A has a new state file it wants to write03:04
lifelessso once A is in the critical section03:05
lifelessit can reliably see that the pointer has changed03:05
spivOh, so it's a check that the renamed current has the same pointer we think it has?03:05
lifelessif we care, yes03:05
lifelessa stat cache update cares that its unchanged03:05
spivWe need to care, I think, or else we risk losing semantic changes from B.03:05
lifelessa 'merge' or 'add' or whathaveyou doesn't care if the pointer changed.03:05
lifelessspiv: so there is a lockdir lock surrounding the WT still03:06
lifelessspiv: only one semantic writer is permitted.03:06
spivAh, ok.  That's worth mentioning briefly then :)03:06
spivSo a stat cache update cares that it's unchanged because otherwise there may be a semantic change from another process?03:07
lifelessright03:08
lifelessI'm writing prose about this at the top of the docstring03:08
spivBut an 'add' or whatever doesn't mind, because it will have first read the pointer inside the semantic lockdir write lock?03:08
lifelessno03:08
lifelessan add doesn't care because it is happy to trash stat cache updates03:08
lifelessand it knows noone else is allowed to be an 'add' concurrently.03:09
spivThat's what I meant!03:09
lifelessok, but its not what you said :)03:09
lifeless[the old pointer value /doesn't matter/ to logicalwriters03:09
spivIt's inferring from its ownership of the semantic write lock that the only possible concurrent changes were stat cache only.03:09
lifelessyes03:09
lifelessthank you very much03:10
lifelessI'm sure it will need more polishing, but I feel its clearer now.03:10
lifelessand I'm glad you didn't find conceptual holes03:10
spivThat's ok, I know how hard it is to write precise and clear text about complex state machines :)03:11
spivNot yet ;)03:11
lifelesswith that, I'm going back to full screen editing;03:11
lifelessoh03:11
lifelessdo you have anything that needs to land?03:11
lifelessspm needs a guinea pig03:11
spivlifeless: Actually, I'm a little uncertain about how automatic recovery would interact with concurrent inserts.03:12
lifelessspiv: so, automatic recovery would want to be a logical writer - and thus hold the external lock03:13
lifelessThere Can Be Only One03:13
spivlifeless: i.e. how can a process tell "I need to do a recovery" apart from "another process is mid-insert"?  Via the semantic write-lock?03:13
spivOk.03:13
lifelessspiv: I think it boils down to time03:13
spmlifeless: is no rush; is more if we do it sooner vs later; but worst case we have a backup that can be failed to.03:13
lifelessthe critical section should be _very fast_03:13
lifelessso waiting a second (say) and then offering would be appropriate.03:13
spiv"should" :)03:14
spivYeah, I think prompting the user is necessary.03:14
lifelessanyhow, as I say, I'm designing to permit, not to implement automatic recovery.03:14
lifelesslike break-lock03:14
spivI'm thinking someone will try this on sshfs over a crappy, slow link at some point :)03:14
lifelessthe idea is to fail rarely, and only when the machine crashed03:14
lifelessor that FTP server we had the other week03:14
spivYep.03:14
lifelessthe one that took up to 10 minutes to delete files03:14
lifelessThere's a limit to which I'll design for that. Obviously-broken is not ok :)03:15
lifelessI think this will work well on windows.03:15
lifelessand Unix03:15
lifelessspiv: so, do you have any to-land branches?03:19
spivlifeless: no, but apparently you do: https://code.edge.launchpad.net/~lifeless/bzr/bug-423818/+merge/1127903:20
lifelessblah :P03:21
lifelessno I don't03:21
lifelessthats landed03:21
abentleylifeless: you gave me a "needs fixing" on https://code.edge.launchpad.net/~abentley/bzr/fix_get_mtime/+merge/10544 but I replied that the requested fix wasn't suitable.  Could you please comment?03:22
spivlifeless: if you review https://code.edge.launchpad.net/~spiv/bzr/paramiko-keyboard-interactive/+merge/12559 I will...03:22
spivlifeless: (it's short)03:22
lifelessabentley: will do03:22
spivlifeless: I can easily enough make an uncontroversial branch that removes some unused import lines if you like03:23
lifelessbeuno: / abentley: https://code.edge.launchpad.net/~lifeless/bzr/bug-423818/+merge/11279 - why is the 'change status' edit link at the far right03:23
lifelesswhen on e.g. +me the edit thing is beside fields03:23
spivlifeless: it's just a matter of pointing mwhudson's pyflakes branch at practically any file in bzrlib :)03:23
abentleylifeless: rockstar misunderstood an aspect of the 3.0 migration.03:23
lifelessok03:23
lifelessis there a bug for that form, or would you like me to file one?03:24
* spiv mumbles "affects me too"03:24
abentleylifeless: I'm not sure, but rockstar is aware that it needs to be changed.03:25
lifelessok, no need to for pointless bit-setting then ;)03:25
lifelessspiv: doit03:25
spivlifeless: on the trivial imports, or the paramiko (or both?)03:26
spiv(I'm doing the trivial atm :)03:26
lifelessparamiko03:26
spivlifeless: cool, thanks03:26
barryspiv: hello!03:29
spivbarry: good afternoon :)03:29
lifelessabentley: I've commented; you may need to escalate to Martin - I think its worth writing the code to do the path calculations03:29
barryspiv: good evening :)03:30
spiv:)03:30
barryspiv: can i play dumb user and maybe we can walk through the upgrade instructions?03:30
spivbarry: I have a message from the future for you: Tuesday is a good day :)03:30
lifelessabentley: but my only data is years old now when I got close to inventory-free commits at 0.92 time03:30
barry:)03:30
lifelessbeuno: have you read the upgrade guide?03:30
lifelessbah03:30
lifelessbarry: ^03:30
spivbarry: sounds good.03:30
barrylifeless: sort of, but there are some holes missing that i think we should fill to make life easier for the next person03:31
barrylet me bring up the instructions on this box03:31
barryspiv: let's start here: http://doc.bazaar-vcs.org/latest/en/upgrade-guide/index.html#migrating-branches-on-launchpad03:32
=== e-jat is now known as ejat
barry#1.  i nominate myself )03:32
barryer, :)03:32
barry#2.  "unset the current trunk from being the development focus"03:32
lifelessoh right, today is tuesday03:33
SamB_XP_lifeless: is not!03:33
SamB_XP_it's still monday03:33
barryspiv: i think we need a lot more detail there.  unfortunately it is not obvious how to do this on launchpad03:33
barryspiv: and, while i think i know how to do it, even then it's not 100% clear03:33
barryspiv: so, let's try to do it and then let's document it so it's really easy for the next person03:34
barryspiv: i start by going here: https://edge.launchpad.net/mailman03:34
barryspiv: i click on 'Change detals'03:34
barryspiv: i scroll down to Development focus03:35
barryspiv: i click on the pull down menu03:35
barryspiv: uh oh, i've hit my first snag.  i cannot "unset" this, i can only assign it to a different series, none of which are correct03:35
* spiv tries to play along on another project on staging03:35
* barry waits03:36
abentleybarry: You used to be able to set the branch associated with the dev focus via the registry pages.  You could set it to blank there.  I think this has been removed in 3.003:37
spivbarry: yeah, I see that too.03:37
barryabentley: is that hiding somewhere behind a url hack perhaps?03:38
barryabentley: iow, maybe the functionality is still there but the link to the page to do that got lost03:38
abentleybarry: You would know about the secret URLs of registry pages better than me.03:38
* barry has seen that in a couple of instances03:38
barryabentley: heh03:38
barryspiv: okay, so we've hit our first snag.  i'm updating my copy of the code to see if there's a hidden page somewhere for this.  if not, i will file a bug03:40
spivbarry: https://edge.launchpad.net/mailman/3.0/+edit and blank the branch, maybe?  (try on staging perhaps)03:41
barryspiv: good idea!03:41
spivbarry: I hope you're keeping notes :)03:41
barryspiv: i log all my irc sessions :)03:41
spivClose enough!03:42
rockstarlifeless, the fix for moving change status is about to hit PQM (it's in ec2test now)03:42
barryspiv: yep, i think that's it.  https://code.staging.launchpad.net/mailman03:42
barry"A development focus branch hasn't been specified"03:42
barryspiv: iirc, i will have to push my migrated branch under a name other than "3.0" because the latter is pack-0.92 and shouldn't be changed due to any stacking going on03:44
barryspiv: so moving forward my dev focus branch will have to be something else unfortunately.  right?03:44
lifelessrockstar: cool03:46
lifelessbarry: you can upgrade in-place too, which the guide doesn't documented03:46
* lifeless thinks in-place is nicer03:46
spivbarry: Hmm, I'm not sure.  Launchpad might be smart enough there, but I'm not certain.  mwhudson, abentley, do you guys know?03:46
lifelessbut its a problem if contributors don't upgrade their stacked branches03:47
lifelessspiv: lp doesn't rewrite the stack-on03:47
lifelessspiv: so no, its not smart enough03:47
spivDrat.03:47
spivmwhudson, abentley: turns out lifeless knows everything :)03:47
barrylifeless: yes, in-place would be nicer.  in this particular case, there is only one unmerged branch potentially stacked on it, and i can't merge it into my 0.92 branch anyway03:47
spivbarry: So, sadly, yes.  Unless you upgrade in-place, as lifeless says.03:48
spivIt might be good to mention that as an option in the upgrade guide, but at the same time overwhelming people with options isn't so good either.03:48
barryspiv: okay.  let's try this.  let's finish the instructions as written, and then try an in-place upgrade.  then someone <wink> can document both03:48
barryspiv: so actually, now i need to grab a copy of the trunk and do the migration.  talk to you tomorrow :)03:49
* barry is guessing it will take a while03:49
spivlifeless: btw: http://pqm.bazaar-vcs.org/03:50
lifelessbarry: winking isn't gonig to help :P03:50
lifelessspiv: looks hopeful03:50
lifelessspiv: next patch, turn on --subunit ;)03:50
barrylifeless: i'll be happy to document the steps.  is doc.bazaar-vcs.org a wiki?03:51
lifelessno03:51
lifelessthe upgrade guide is a branch somewhere03:51
lifelessI suspect it may even be a separate project, and if thats so I have no idea where it is03:51
spivIsn't it part of the docs in bzr's source?03:51
tedgI need some help "decoding" an error.  http://pastebin.ubuntu.com/280929/03:51
spivdoc/en/upgrade-guide ?03:52
tedgI'm unsure of where to start looking.  I'm thinking by the 17000 number there it's looking for an older SVN revsion than I have?03:52
spivtedg: on what command?03:52
tedgspiv: bzr gannotate configure.ac03:52
SamB_XP_tedg: it would ;-)03:53
tedgNormal annotate gives approximately the same error.03:53
SamB_XP_that, too, is expected03:53
SamB_XP_I mean, that you would get the same error03:53
SamB_XP_not that you would get an error ...03:53
tedgOh, good. I was confused :)03:53
spivtedg: yes, it appears that revision of that file is not present in your repo03:53
tedgspiv: So how do I decode that revision number into something useful?03:54
spivPossibly due to a bug in the bzr-svn conversion?  /me checks if that is on Launchpad03:54
spivtedg: not sure what you mean by "useful" in this context?03:54
tedgWell, it's not a conversion yet.  But hopefully will be soon... so I'm trying to get bugs out first.03:54
SamB_XP_whatever it is it sounds like a bug!03:54
tedgspiv: i.e., it's a missing SVN version.03:54
tedgspiv: Or, it was because I used bzr-svn to merge in a branch that somehow it figured out about.03:55
SamB_XP_tedg: how can you have a missing svn version ?03:55
tedgspiv: Or, it's just foobar :)03:55
SamB_XP_also that's spelled fubar03:55
barrylifeless: i will at least email the public mailing list when i figure it out.  can you explain "migrate in-place" though?03:56
tedgSamB_XP_: So the history of the repo is that it was converted from CVS.  But the way that SF did it is that they lumped everything into one repo, which was split out -- so there is a discontinuity around revision 20K which I believe that bzr-svn just sees as "the beginning of time"03:56
lifelessthere's also a mythic button on LP that says 'doit'03:56
tedgWhich honestly, is kinda fine.  As long as it's really "the beginning of time."03:57
SamB_XP_tedg: that sounds kinda crazy ...03:58
tedgSamB_XP_: People who know me, will not disagree with you on that one. :)03:58
SamB_XP_what happens if you try to checkout the previous revision with SVN itself?03:58
tedgWell, yes.  You kinda have to know the previous layout, which wasn't a "standard SVN layout" as it was in CVS.03:59
spivtedg: so there's a missing record in bzr's database.  It's for the configure.ac file introduced in SVN 17075, and it's modification you made to it in revision ted@canonical.com-20081121044907-chfl7r1x8s1kcp5n.03:59
spivtedg: I'm not sure why it's absent, but it's almost certainly due a bug somewhere along the line :(04:00
tedgAh, I see now.  It looks like the first SVK cherry-pick is the issue: http://inkscape.svn.sourceforge.net/viewvc/inkscape/inkscape/trunk/configure.ac?view=log04:03
tedgWhich means there are most definitely other files with this problem.04:03
spivOh, if you're trying to round-trip via the SVN repo, that might explain it I guess.04:03
* barry -> sleep04:04
spivThat would presumably make all the foreign revisions be ghosts.04:04
barryspiv, lifeless, abentley thanks.  we'll pick this up again tomorrow.  the future awaits04:04
tedgspiv: No, not round trip in that regard.  The problem is that SVK (not SVN) did some very funny things with how it merged in.04:04
lifelessnight barry04:05
tedgspiv: It records complex merges as odd copies with changes.  Borders on evil :)04:05
spivbarry: g'night04:05
tedgSo if I could find all these "oddities" by hand.  Could I fix them with something like the rebase plugin?04:06
tedgIf I assumed that I'd never go back to SVN again.04:06
tedgFor those who are curious here's the rev where the repo was converted from CVS to SVN and rearranged: http://inkscape.svn.sourceforge.net/viewvc/inkscape?view=rev&revision=1064304:10
* igc lunch04:15
spivtedg: so, that particular data appears to still exist in lp:~ted/inkscape/devbuild04:19
spiv(and some of your other Launchpad branches)04:19
spivtedg: so if you rebranch that into your local repo that might be enough to fix it (i.e. to copy the data that is missing locally)04:20
lifeless50% there04:25
lifeless.oO04:25
lifelessinterface tests passing04:25
abentleylifeless: I've replied.  The gist is that you're asking for complicated code that will only be used in a corner case and usually won't prevent a path<->id map being generated.04:29
tedgspiv: Sorry, I walked away... I'll give that a try!04:45
tedgspiv: Just to be curious, how did you find that out?04:46
lifelessdoes anyone here have a windows machine?04:46
rbistolfiPeng_, lifeless: Sorry I got an emergency and I was afk04:46
rbistolfire: http://pastie.org/63356104:46
rbistolfiI am not behind a proxy and I dont know if it is a privete branch, I just found it in launchpad04:46
lifelessrbistolfi: its not04:47
Peng_I branched it, so I guess it's not a private branch.04:47
Peng_Eh, there we go.04:47
lifelessrbistolfi: the error you have looks like a interecepting proxy to us04:47
abentleylifeless: I have a windows machine.04:47
lifelessabentley: I need to know what exception dirstate raises04:47
Peng_Or, something just went Horribly Wrong with the connection.04:47
lifelesscould you do a small test for me?04:47
abentleylifeless: Okay.04:48
lifelessgiven a bzrlib wt4 tree at path foo04:48
lifelessstate1 = bzrlib.dirstate.DirState.on_file('foo/.bzr/checkout/dirstate')04:48
lifelessstate1.lock_read()04:48
lifelessstate2 = bzrlib.dirstate.DirState.on_file('foo/.bzr/checkout/dirstate')04:48
lifelessstate2.lock_write()04:49
spivtedg: http://paste.ubuntu.com/280963/04:49
lifelessthe last line should raise something from bzrlib.errors04:49
rbistolfilifeless, Peng_: thanks, I will try to branch from a server I admin connected to another isp, maybe I am being intercepted after all04:49
lifelessyou'll want to state1.unlock(), and you're done.04:49
tedgspiv: Didn't go well: bug 43850904:49
ubottuLaunchpad bug 438509 in bzr "Crash when branching into repo" [Undecided,New] https://launchpad.net/bugs/43850904:49
lifelessI should say, wt4 or newer, anything dirstate based04:50
spivtedg: oh wow, I haven't seen that assert triggered before04:50
tedgI assume I get some kind of award? ;)04:51
spivtedg: I wonder if that's a symptom of the same problem, I suppose it could be...04:51
abentleylifeless: I have 1.2.0dev0 on my Windows box, and it seems to be broken, too.04:51
lifelessabentley: bzrlib is broken, or the python I gave you is broken?04:51
abentleylifeless: bzrlib is broken.  "bzr init foo" fails.04:52
lifelessoh, eep04:52
lifelessabentley: is the tree you have there dirstate based? if so you don't need to init...04:52
abentleylifeless: It is a lightweight checkout from an ext3 partition which has since been reformatted.04:53
lifelessworks for me04:53
lifelessas long as it has a dirstate file the results should be useful04:53
lifelesswindows OS locks will mutually exclude the two locks04:54
lifelessI just need to catch the error so my test for dirstate2 doesn't blowup on windows04:54
spivtedg: I wonder if making a new shared repository ("bzr init-repo --1.9-rich-root") and branching lp:~ted/inkscape/devbuild into that and then your other local branches would work better?04:56
abentleylifeless: I get errors.LockContention04:56
lifelessthank you very much04:56
abentleylifeless: You're welcome.04:56
spivtedg: FWIW, bzr 2.0.0 should be much more aggressive about preventing incomplete data to be committed in the first place.04:57
tedgspiv: No, similar error.  Are the details useful?04:57
spivObviously that doesn't help your existing situation (unless you have a time machine), but I thought I should reassure you a little bit :)04:58
tedgspiv: I am running 2.0 now... should I reimport the repo?04:58
spivtedg: Did it fail on the first branch?04:58
tedgspiv: I had a copy of devbuild locally in a shared repo, I then branch the branch in the new shared repo over.04:59
spivtedg: please use the copy from Launchpad04:59
spivBecause we know that that copy has that missing record in its repo.05:00
spiv"bzr check" on your local repos might be interesting, probably it will report the same issue.05:00
spivI just successfully branched lp:~ted/inkscape/devbuild from Launchpad, so it appears that that copy isn't missing anything that it is supposed to have.05:01
lifelessok, dirstate2 works05:02
lifelesstime to put a tree on it and user-level test it05:02
=== JaredWigmore is now known as JaredW
spivlifeless: nice05:02
lifelessI just wish we'd not been scraping performance issues right up to 2.0.005:03
lifelessthis would have been so nice to have in there05:03
spivlifeless: yeah.05:04
lifelessI've had this in my head for about a year05:04
lifelessas a 'TUIT' problem05:04
rbistolfilifeless, Peng_: well if I tunnel my conection through Miami I can branch it just find, I think that fits well with the proxy theory. I have pretty much the same setup in both machines.05:06
rbistolfis/find/fine/05:06
Peng_You can avoid the issue, and get a speed boost, if you get a LP account and use bzr+ssh.05:07
rbistolfiI will do, tyvm05:07
tedgspiv: Okay, so branching that way makes the error MUCH larger: http://pastebin.ubuntu.com/280979/05:20
tedgspiv: Still running the check.05:20
spivtedg: hmm, looks like text versions from the original SVN import are missing somehow!05:21
spivVery odd.05:21
spivOh, that's interesting; one way the missing text revisions were svn-v4:..., the other they are svn-v3-trunk:...05:22
tedgSo could it be a disagreement between versions of the SVN plugin?05:23
spivI wonder if a "bzr svn-upgrade" somewhere along the line is part of the cause...05:23
tedgI don't think there is a svn-upgrade.05:24
spivHmm, I'm sure there used to be a command that would rebase revisions from an older version of a plugin to use the new mapping.05:26
spivs/a plugin/the svn plugin/05:26
spivYes, there was definitely a "bzr svn-upgrade" in the past, I wonder why it's gone now.05:27
spivAh, it's now "bzr foreign-mapping-upgrade"05:27
tedgspiv: I don't seem to have that command, is it in a plugin?05:33
tedgThe bzr check is still running... is there a point I should give up?05:33
lifelessspiv: your patch landed?05:34
tedgspiv: It seems to be in rebase.  But I can't get it to work.05:39
tedgIt basically says the SVN repository isn't a repository.05:40
igcbbiab05:40
spivlifeless: yes05:40
spivtedg: I'm not very familiar with it, I was just speculating that it may have been involved in the history of this branch.05:41
tedgI think I'm going to try a new import tonight with the new and shiny 2.0 and see if that helps... start fresh tomorrow.05:41
tedgspiv, thanks for your help!05:42
spivtedg: you're welcome, sorry I couldn't be more helpful05:42
lifeless\o/05:55
lifelessWTFormat7 passes interface tests05:55
fullermdDoes that mean it works right, or that the tests have insufficient coverage?  :p05:56
lifelessfullermd: bit of both05:57
lifelessfullermd: I suspect that its possible to make it delete the HASH file for the current pointer with a sufficiently clever flip-flop state change at the moment05:58
lifelessfullermd: so I want to add a random seed to the state files05:58
lifelessfullermd: or tweak that more, before folk are doing more than play with it as a shiny shiny05:58
lifelessfullermd: however, you can do a diff while a commit editor is open06:00
spivlifeless: oh yeah, that reminds me06:02
spivlifeless: I was also going to ask about two concurrent stat cache updates to the same state06:02
spivWhich may be why you want some random bits in the filenames?06:02
lifelessspiv: same issue ;)06:02
* spiv nods06:03
lifelessyes06:03
lifelessin practice, doing 'bzr add foo' 'bzr rm foo' with no other changes can flip flop06:03
lifelessdoing 'bzr diff' and keeping the process alive in a GUI in between could cause something that sees the old state around06:04
lifelessbut I'm /not sure/ you can force destructive behaviour without being able to run stat fingerprints backwards06:04
lifelessI think simply putting the 'lazy delete' inside the 'I own the current file' "mutex" may be sufficient.06:05
lifelessthough if we start doing that I may simply start using regular lockdirs to do the locking, though they will be a lot slower.06:05
lifelessits fun to close 6 bugs with one push :)06:15
lifelessheh, I lied, 706:21
lifelesspoolie: are you here, or is it just a bot?06:31
lifelessspiv: https://code.edge.launchpad.net/~lifeless/bzr/dirstate2 :)06:34
lifelessnote the bug list ;)06:35
lifelessahhh bugspam06:40
vilahi all07:35
igchi vila07:57
igcout for a bit - bbl07:57
bialixhello all07:58
bialix(ru) people asking about comparison of 2a format to hg/git: storage size, speed. Is there already exists one, or planned?07:59
vilahello bialix07:59
bialixbonjour vila07:59
fullermdI'm not aware of a useful existing one.  fast-import probably makes it a lot easier to put one together though.08:00
vilaigc ran tests and should have a few numbers08:00
vilabut, AIUI, there is no absolute rule here, what I understand is that 2a has sizes comparable with hg/git, sometimes better, sometimes worse, but always in a reasonable amount08:01
vilafor speed, things are even more unclear as benchmarks are like statistics...08:02
vilanow, all of that is also highly subjective and on that front people seem quite happy :D08:02
bialixit seems so08:03
bialixbut anyway I'd better asking08:03
fullermdA historical problem with those sort of comparisons is that they're often done on trees with no history.  I'd be very happy to never see such a thing again...08:03
bialixfullermd: IIUC fast-import should be a key here08:04
fullermd("Oh, look, I benchmarked VCS A, B, and C on importing two tarballs of a project.  Now we all know what's faster and smaller.")08:04
bialixconvert the same repo into different systems08:04
bialixtarball is a wrong attempt IMO08:04
fullermdYah.08:04
vilafullermd: hmm, I don't think that's the case anymore but may be the more recent benchmarks need more exposure...08:04
lifelessI saw someone test a single commit benchmark just riday08:05
lifeless*friday*08:05
lifeless:)08:05
fullermdYeah, they come up with painful regularity out around the Interblog.08:05
fullermd'course, historically, we wouldn't want to argue against that, since it painted bzr in a better light than otherwise   :|08:06
lifelessby which you mean only slightly worse than tar?08:07
vilathe last benchmarks igc produced showed that bzr was not the best for all operations, I think that's enough to make it an honest one :D08:07
fullermdBack around 1.0, we had claims of speed and size comparable to brands G and H.  And the benchmarks to back them up; we were of similar overall speed and similar (or better!) size on disk!08:08
fullermd... for projects with one revision...08:08
bialixso, good benchmark will depend on how good and robust fast-import conversion08:11
spivvila: can you help with testing my fix for https://bugs.launchpad.net/bugs/433846 ?08:12
ubottuLaunchpad bug 433846 in bzr "[ssh/sftp] failure to do password auth with paramiko when server only supports 'keyboard-interactive'" [High,Fix committed]08:12
vilaspiv: I still haven't a working windows setup :-/08:12
fullermdYah, without some way of getting as-nearly-as-practical identical sizable histories in both tools, any benchmark is going to be of very limited use.08:12
vilaspiv: that what you need here right ?08:12
fullermdLuckily, fast-import fills that niche nicely   :)08:12
spivvila: that would be ideal08:13
spivvila: it's not really Windows-specific, but it would be nice to test a scenario as close to the actual reporters as possible.08:13
spivvila: if you don't have working Windows I'll do some Windows-less testing myself.  Thanks.08:13
vilaspiv: you're welcome :-/08:14
spivvila: (alternatively, if you can push a button and produce a test Windows installer with that fix we can offer to the reporter, that would do ;)08:14
vilalol08:14
bialixlol08:15
fmi just hit http://pastebin.com/m6fa4b0de08:15
vilaspiv: unfortunately even the installer builds are failing on kerguelen for quite a few days now :-/ And they are outdated anyway AIUI08:15
fmvila: can you look at the backtrace?08:17
bialixfm: bzr unable to version control fifo08:17
fmbut it gives an internal error ...08:17
bialixfile a bug please08:19
bialixbzr should not allow you to add fifo in first place08:19
bialixor maybe some of your entries was plain file/symlink and now fifo08:20
fullermdHm, it'd be fun to be able to 'revert' a FIFO...08:20
vilafm: definitely a bug to be filed, bzr shouldn't backtrace, as a workaround, try to identify which file is a fifo and bzr ignore it08:23
fmbialix: https://bugs.launchpad.net/bzr/+bug/43856908:23
ubottuLaunchpad bug 438569 in bzr "bzr gives internal error on fifo" [Undecided,New]08:24
vilagreat08:24
BjornTjelmer: i'm trying to use bzr-git to branch from github, but after exactly 5 minutes i get this error: http://paste.ubuntu.com/281091/09:00
BjornTjelmer: do you know why that would be? i can access github using git without any problems09:00
jelmerBjornT: bzr/bzr-git doesn't support rsync-style URLs10:45
jelmerBjornT: and it is not yet possible to fetch individual branches (as we have no way to address branches that are not on the filesystem)10:46
jelmerBjornT: you might want to try 'bzr branch git://github.com/bjornt/windmill.git'10:46
jelmerBjornT: or s/branch/git-import/ (for all branches, not just HEAD)10:47
Takjelmer: ping10:51
jelmerTak: pong11:11
Takhi11:11
Takwould you like for me to merge your 2.0 changes before merging 2.0 into ... what is that called, mainline?11:12
jelmerTak: please do11:12
jelmerTak: yeah, mainline/trunk/ whatever you want to call it :-)11:12
Takyeah, I have a habit of referring to my development branch as "trunk", plus there's another one actually labeled "trunk" I think ... :-P11:13
Takok, doing that now11:13
gioeleHello11:20
Takhello gioele11:21
gioeleWhat is the state of keyword expansion? bzr help content-filters does not says nothing specific about keyword expansion. Also, in the wiki there are only old (2004/2005) blueprints11:25
spivgioele: I think you need the bzr-keywords plugin (https://launchpad.net/bzr-keywords)11:27
spivgioele: which hooks into the content filtering feature in core bzr11:27
gioeleDo lightweight checkouts have to be in the same format of the remote branch?11:41
beunogioele, it probably needs to at least be rich-root or non-rich-root11:43
beunoand, different formats will likely make it slower11:43
eLBatihi11:51
eLBatiI can't understand why this happens13:51
eLBati8# bzr checkin -vm "first translation" index.rst13:51
eLBatibzr: ERROR: Cannot lock LockDir(http://bazaar.launchpad.net/~openerp-community/openobject-doc/doc/.bzr/branch/lock): Transport operation not possible: http does not support mkdir()13:51
eLBatilaunchpad-login is set13:51
eLBatibut what is checkin trying to do? shouldn't it do a local checkin?13:55
eLBatiuhm it does so with every command14:17
mzzeLBati: what does "bzr info" say?14:20
vilaeLBati: you created a checkout from a branch you can't commit to14:20
mzzeLBati: I'm guessing you created a checkout where you wanted a branch14:20
Lo-lan-doHi all14:20
Lo-lan-dojelmer, james_w: I'd like to upload loggerhead to unstable and add myself as an uploader if it's all right with you.14:21
mzzeLBati: if that's indeed what happened I think you can use "bzr reconfigure" to turn it into a regular standalone branch you can commit to14:21
Lo-lan-dojelmer, james_w: Also, I'll need to get it into bpo at some point, do you have a procedure for that?14:22
eLBatimzz, yes it's a checkout14:22
eLBatiso, with a checkout I can't commit?14:22
=== ereslibre_laptop is now known as ereslibre
mzzeLBati: you can only commit to a checkout if you can commit to the thing it is a checkout of14:22
mzzeLBati: (it commits to the branch the checkout is "bound" to first, then locally)14:23
mzzeLBati: to avoid this use "bzr branch" (or the alias "bzr get") to create a standalone copy of the remote branch instead of "bzr checkout"14:25
jelmerLo-lan-do: please do14:26
jelmerLo-lan-do: we don't have any procedure for bpo uploads14:26
eLBatithanks mzz14:27
Lo-lan-dojelmer: I don't even know how to do an upload to bpo :-)  I'll read up on that.14:29
james_whey Lo-lan-do14:30
james_wdoes loggerhead now use the system yui correctly?14:30
Lo-lan-dojames_w: It does, but unfortunately the system yui isn't the same as the one expected by loggerhead.14:30
Lo-lan-doLH uses 3.0rc2, whereas sid only has 2.7something.14:31
Lo-lan-doSo unless --use-cdn is used, some of the Ajaxy things are broken.14:32
Lo-lan-doI guess I could add a check for the presence of an appropriate version, and add the --use-cdn switch if needed.14:33
eLBatiwhat is target configuration of bzr reconfigure?14:35
Lo-lan-doeLBati: It's what you want to turn your directory into.14:38
Lo-lan-dojelmer, james_w: Any thoughts about this automated use of remote YUI?14:41
james_wI'm not sure it would go down well in some comments14:42
james_wsome contexts I mean14:42
james_wI'm not sure we should be using the system one if it is the wrong version14:42
james_w2 and 3 are basically different projects as I understand it, so trying to force it seems unnecessary14:43
Lo-lan-dojaldhar tells me he'll upload yui 3 soonish.14:43
eLBatithanks Lo-lan-do14:43
james_wcool14:43
Lo-lan-doI guess I could revert the "use system yui" patch until then…14:44
Lo-lan-doOh well, I'll just document the "feature" until yui3 appears, and then I'll use a versioned dependency.14:52
eLBatimzz, # bzr reconfigure --branch14:54
eLBatibzr: ERROR: Working tree "..." has uncommitted changes14:54
mzzeLBati: --standalone14:54
eLBatiI just did a checkout14:54
mzzeLBati: I know. bzr reconfigure --standalone14:54
mzzor "bzr unbind", actually.14:55
eLBatithanks mzz14:57
eLBatiif I have uncommited changes, how could I undo such changes and get the repository version of files?15:28
dashyou can do "bzr revert" if you want to remove those changes15:29
dashor "bzr shelve" if you want to save them for later15:29
eLBatithanks15:34
igcnight all16:04
Takcan one dpush from an unbound checkout?16:14
jelmerTak: yes16:14
jelmerTak: unbound checkout == standalone branch16:14
Takyeah - I didn't know if there were some internal semantics that would make it work differently16:15
Takthanks16:15
mzzan unbound (heavyweight) checkout *is* a standalone branch, so I don't know what kind of "internal semantics" you mean16:18
mzz(they're not equivalent or the like, unbinding the checkout turned it into exactly a standalone branch)16:19
awilkinsYeesh, --2a might be the New Hotness, but it repacks a lot slower than older formats17:00
awilkinsIt's just taken 15 minutes to repack ~800MB17:01
mathrickhi17:04
mathrickhttp://pastebin.com/m6d14728b17:04
mathrickwhat gives?17:04
mathrickit's not an error that makes any sense to me17:04
Lo-lan-domathrick: You're in a repo, not in a branch inside that repo.17:06
Lo-lan-doThe branches are probably in a subdir?17:07
idnarheh, that's ironic, I just did that myself about 2 minutes ago17:07
mathrickLo-lan-do: oh, so that means I forgot to init that dir. No good :(17:08
mathrickthanks17:08
idnarthe message is a bit confusing17:08
mathrickit is17:08
idnaralthough I immediately figured out my problem when I saw what directory I was in17:08
mathrickI thought I had it init'd already17:09
mathrickhmm17:10
mathrickis there an option to make bzr add symlinks by their pointed-to contents?17:10
mathrickadd/commit, really17:10
mathrickoh, it's the incremental commit plugin interfering17:11
=== sidnei_ is now known as sidnei
Takhooray!17:22
Takmy mysterious bzr-svn crash was being caused by the dbus plugin17:23
awilkinsubottu: #4380517:28
ubottuSorry, I don't know anything about 4380517:28
awilkinsubottu: #43880517:28
ubottuSorry, I don't know anything about 43880517:28
awilkinsGah17:28
mathrickubottu: bug #4380517:28
ubottuLaunchpad bug 43805 in apmd "apm kernel modules are loaded after hal" [Medium,Fix released] https://launchpad.net/bugs/4380517:28
awilkinshttps://bugs.launchpad.net/bzr/+bug/43880517:28
ubottuLaunchpad bug 438805 in bzr "Missing referenced chk root keys" [Undecided,New]17:28
mathrickhmm17:29
mathrickubottu: bug #43805 in bzr17:29
mathrickit doesn't seem to understand that17:29
awilkinsWrong bug number ... they're globally unique per LP instance AFAIK17:29
mathrickoh17:30
awilkinsJust doing a `bzr check` on the repository that's provoking the problem17:30
mathrickright17:30
mathrickokay, thanks for the help, gotta be going17:30
=== EdwinGrubbs is now known as Edwin-lunch
tolstoyAnyone having issues running on Snow Leopard using the installer?18:47
tolstoybzr: ERROR: Unsupported protocol for url "sftp://kirwin@host/path/to/code/": Unable to import paramiko (required for sftp support): No module named paramiko18:48
tolstoyWho put together the installer anyway? No one to email!18:53
kirklandis there a way to pass -uc -us to bzr builddeb ?18:55
kirklandit didn't "just work"18:55
tolstoyjfroy|work: Hi, I'm the one with the snow leopard error from twitter.19:03
jfroy|worktolstoy: hey19:04
jfroy|workso basically I didn't include paramiko in the 10.6 installer.19:04
jfroy|workAnd it seems that was the wrong decision.19:04
tolstoyYeah.19:04
jfroy|workThe initial thought being that the bazaar installer should only install bazaar and nothing else.19:04
tolstoyHeh. ;)19:04
tolstoyWell, you know how people are about dependency hell.....19:05
tolstoySeems like there should at least be enough there to support all the commands.19:06
tolstoyI just tried "bzr miss sftp://me@host:/path/to/project" and it errors out.19:06
jfroy|workwell it's not that it doesn't support all the commands19:06
jfroy|workit just won't support sftp transports19:06
tolstoyIsn't sftp kind of fundamental? (I don't really know. I've always used it, though.)19:06
jfroy|workI don't use it ever.19:07
LarstiQjfroy|work: or ssh in certain cases19:07
jfroy|workI use the smart server or work with svn repositories.19:07
Lo-lan-doIsn't "dependency hell" kind of 1998?19:07
jfroy|workLo-lan-do: unfortunately, Mac OS X doesn't really have a good story w/r to dependency management.19:07
tolstoyExactly.19:07
jfroy|workWell not for binary packages anyways.19:08
jfroy|workIn any case, I'm going to bake another installer.19:08
tolstoyThat would be awesome.19:08
tolstoyHm. The only other thing I could think of is a bzr command to settle dependencies on its own.19:09
tolstoyWhich seems kind of, well, out of scope.19:09
jfroy|workno19:11
jfroy|worka better idea would be for bzr to offer to install those dependencies19:11
jfroy|worksomething like "SFTP support requires Paramiko, which you do not have installed. Would you like to from PyPI? Yes | No", and if yes run sudo easy_install paramiko19:12
jfroy|workdone19:12
jfroy|workthat would be classy19:12
jfroy|workand broken on Linux and Windows, but that's a detail :p19:12
tolstoyHeh. Works for me.19:12
jfroy|workverterok: ping19:13
tolstoyYou could even keep stats, and if practically everyone always installs paramiko, might as well bundle it in the original install.19:13
verterokjfroy|work: pong19:13
jfroy|workverterok: did you push a new packaging branch and all. Might want to rebake the 10.6 installer using that.19:13
verterokjfroy|work: I started working on something, lp:~verterok/+junk/OSX-package19:14
verterokjfroy|work: it adds the "download all stuff before build" script19:15
jfroy|workok, I'll just use my setup for now just to quickly rebake19:15
verterokjfroy|work: ok :)19:15
jfroy|workbaking....19:24
jfroy|workpretty easy to do now once that the infrastructure is in place :)19:24
jfroy|workone further improvements would be to use remote packages for optional installs (to keep the download small)19:25
jfroy|workand sign the packages19:25
jfroy|work*and another to sign19:25
james_wkirkland: "bzr builddeb -S -- -uc -us"19:30
james_wannoying I know19:30
kirklandjames_w: ah, thanks19:30
james_wit will "just work" one day19:30
jfroy|workAnd there we go, new installer up.19:43
jfroy|workEnjoy your paramiko flavored goodness.19:43
jfroy|worktolstoy:19:43
tolstoyI'll give it a try! Thanks.19:43
tolstoyjfroy|work: http://bazaar-vcs.org/MacOSXDownloads, right?19:44
jfroy|workyeah19:44
jfroy|workit's feeding off my blog right now.19:44
tolstoyIt is larger.19:44
jfroy|workwhich scares me :p19:44
=== Edwin-lunch is now known as EdwinGrubbs
tolstoy  from sha import *19:46
tolstoy   /Library/Python/2.6/site-packages/Crypto/Hash/SHA.py:6: DeprecationWarning: the sha module is deprecated; use the hashlib module instead19:46
tolstoy  from sha import *19:46
tolstoyI think it works, but there's that "interesting" output. ;)19:46
tolstoyjfroy|work: This has got to be such a headache for you.19:46
=== mwhudson_ is now known as mwhudson
tolstoyjfroy|work: Maybe link against the Python 2.5 lib? Seems to be installed on my Snow Leopard, anyway.20:05
Pilkytolstoy: I think he links against 2.6 as that allows for 64 bit20:06
Pilkytolstoy: I think 2.5 is only 32 bit on snow leopard20:06
tolstoyAh (drkirwin here). It seems reasonable. Wonder why there's the deprecation warning, then?20:06
Pilkycould be that it is deprecated, but paramiko hasn't been updated to use hashlib?20:07
fullermdNo, that's from pycrypto.  It needs a patch to not throw deprecation warnings against py2.6.20:09
fullermdIt works, it's just noisy.20:09
tolstoyRight. I was able to push my changes.20:10
jfroy|worktolstoy: I target Python 2.6 on SL because it's the default interpreter and because it's 64-bit21:04
jfroy|workand bzr eats memory like candy21:04
tolstoyjfroy|work: Works for me. Well, except for those pesky deprecation warnings.21:09
mwhudsonjelmer: does bzr-git support accessing git over http?21:14
jelmermwhudson: no, not yet21:17
mwhudsonrockstar: ^^21:17
jelmermwhudson: bug 37368821:17
ubottuLaunchpad bug 373688 in dulwich "support for HTTP git repositories" [Wishlist,Triaged] https://launchpad.net/bugs/37368821:17
=== phanatic_ is now known as phanatic
MethsI'm getting a file lock issue using bzr (1.18) shelve on Windows, even after a reboot, are there any known issues with shelve?21:21
tolstoyWell, gotta go.21:30
tolstoyjfroy|work: I'll see if there's a new package later this afternoon (PST) that fixes the deprecation working. I mean, if it's in the works.21:32
jfroy|workThere isn't, it's a problem with PyCrypto.21:32
tolstoyOh. So all snow leopard BZR users will have to see those messages indefinitely?21:33
tolstoySo, bzr, on snow leopard, using the installer, spews deprecation messages for every sftp operation.22:01
tolstoyHow should I report that? Launchpad bug?22:01
tolstoyIt's not an installer issue?22:01
bialixtolstoy: at least you can send message to main bzr ML or to bzr-mac one22:06
tolstoyOkay. I didn't realize there was a bzr-mac list. I'll look it up.22:07
lifelessmoin22:48
RAOFmushi mushi.22:49
lifelessmmm sushi sushi22:50
RAOFNot for breakfast, thanks.22:51
dkobozevhi all. i have a workflow-related question.23:07
dkobozevi'm working on a php website. i have a bunch of php files that should go into public_html folder. plus, i have a database schema file and a db dump with test data.23:08
dkobozevthe latter two shouldn't go into public_html, obviously. what would be the best way to manage these with bzr?23:09
dkobozevcreating two separate branches - one for php files, one for db files - seems very impractical.23:12
fullermdI use a single branch, but use scripts to deploy the files that need to be deployed.23:14
dkobozevlike post-commit hooks in svn?23:15
fullermdNo, like Makefiles.23:15
fullermdI (speaking for nobody but myself, natch) am a firm believer in separation of VCS and deployment.23:16
dkobozevso you would keep both php and db files in public_html in my case?23:17
fullermdNo, I'd keep both in the _bzr branch_.  And the bzr branch out of public_html.23:17
dkobozevgot it.23:17
fullermdThen I do the equivalent of a 'make install' to copy the files into place for deployment.23:17
fullermd(though my dev environment is actually often a symlink into the subdir of the branch where the files are)23:18
fullermdBut that's just local anyway.23:18
dkobozevi like the symlink idea...23:18
fullermdYeah, it streamlines the dev process.23:20
dkobozevare there any security implications to having a symlink to a branch subdir vs copying the files to public_html?23:20
fullermdThough it sometimes requires a little fiddling, since what's in the branch isn't always directly workable (another reason for the install scripts)23:20
fullermdWell, if you copied everything under that subdir, it would be equivalent.23:21
jelmerlifeless: What's the easiest way to get my key in the PQM updated?23:21
fullermdHard to say much beyond that; it's pretty case-by-case what exactly is where.23:21
fullermdBut the root of my branches 'typically' has two dirs, a db/ where the database schema and such live, and a src/ which is roughly a mirror of how the deployed files look.23:22
fullermd(there are differences, e.g. which config files are enabled in different deployments, which the Makefiles handle)23:23
dkobozevyeah, config files is another consideration. i usually do not put them under version control at all, which is not nice sometimes.23:24
fullermdMy default skeleton that I branch from for new projects has a live.conf and a dev.conf.  The install process symlinks one or the other (as appropriate) to the 'real' config file name.23:24
fullermdAnd in manual environments, I .bzrignore the 'real' name and symlink as appropriate, or have the code default to loading the dev if the normal name isn't there, or various other permutations.23:25
fullermdBy not deploying via VCS, I'm freed from having to have the stuff under version control be an exact replica of the deployed state, which gives me flexibility for those sort of customizations.23:26
fullermdThe downside, which people who swing the other way will point out, is that now I have two systems to deal with (and probably one of them to maintain myself).23:26
dkobozevwhat language do you use to write your install scripts? bash?23:27
fullermdFor me, that's trivial overhead with big gains.  I can see that the scales may be reversed for other people.23:27
fullermdAt the moment, they tend to be Makefile's, so the real work is done by gobs of standard *nix utils (mostly install(1)).23:27
fullermdThough special cases sometimes call for more specific sh scripts or throwing something together with awk or perl or...23:28
dkobozevi'd say it would have to be a pretty big project for such heavy machinery :)23:28
fullermdI do my best to slaughter all the special cases, but they keep creeping in under the door at night...23:29
dkobozevyou pointed me in an interesting direction. somehow, i never considered tools such as make for web development.23:32
fullermdAlways look at every possible tool for a job, and ask yourself, "Will using this make people think I'm a giant nerd?"23:34
fullermdIf the answer is 'hell yeah', wallow in it   8-}23:35
lifelessjelmer: make sure its updated on the keyservers, and ping spm23:36
dkobozevtrue enough. but i also dislike killing flies with nukes and napalm :)23:38
dkobozevand thanks for the symlink suggestion. i'll use that or something similar.23:39
jelmerlifeless: thanks23:39
fullermdPfft.  The surest way to kill a fly is to destroy the planet it's on!23:46
abentleylifeless: What's the correct URL to submit to the 2.0 branch?  I tried bzr+ssh://bazaar.launchpad.com/~bzr-pqm/bzr/2.023:47
lifelessabentley: I think its http; its in the docs23:49
lifelessI'll just check my locations, one sec23:49
lifelesshttp://bazaar.launchpad.net/~bzr-pqm/bzr/2.023:49
lifelessabentley: ^23:49
abentleylifeless: Thanks.23:50
dkobozevfullermd: if it's worth doing, it's worth over-doing, eh?23:50
lifelessblack holes23:50
lifelessonly way to be sure23:50
lifelessjelmer: bug 43895923:51
ubottuLaunchpad bug 438959 in bzr-svn "annotate breaks on ghost text revisions" [Undecided,Invalid] https://launchpad.net/bugs/43895923:51
lifelessjelmer: seems valid to me: user does something, gets error.23:51
jelmerlifeless: it's still valid, but assigned to bzr23:51
jelmerlifeless: not bzr-svn23:51
lifelessok23:51
lifelessthanks23:51
jelmerls23:58

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