/srv/irclogs.ubuntu.com/2009/06/17/#bzr.txt

lifelessmoin00:02
lifelessthumper: fixed in trunk I think00:02
jelmer'morning lifeless00:02
jmlhello everybody00:04
pooliehello all00:04
mwhudsonlifeless: that means, if thumper uses bzr.dev he'll be able to upgrade?00:05
garyvdmHI00:05
mwhudsonhi jelmer, thanks for the cscvs comments00:05
jmlshould that fix go into 1.16final?00:05
garyvdmIs there a mirror of bzr.dev in a bzr 1.3 compatible format?00:05
garyvdmFor Richard Wilbur (see mailing list)00:06
lifelessjml: np00:06
lifelessjml: no00:06
lifelessjml: dev7->2a should be exceedingly rare00:07
lifelessjml: and multiple fixes are needed00:08
lifelessthumper: init a 2a tree somewhere else00:08
jmllifeless: cool.00:08
lifelessthumper: copy the repo/format file across; dev7 and 2a are identical00:08
RenatoSilvais lp: bzr+ssh?00:12
RenatoSilvais bzr+ssh on port 22?00:12
jelmermwhudson: you're welcome00:13
lifelessRenatoSilva: lp: is an XMLRPC query, done on port 80, and then bzr+ssh on port 22 *or* http on 8000:14
jelmerdoes bzr do any sort of normalization on symlink paths?00:15
thumperlifeless: ok, I'll try that00:16
thumperlifeless: bzr trunk still fails the upgrade00:16
RenatoSilvalifeless: so lp: is 80 then bzr+ssh, which is 22 or 80 (in this case httpS don't?)00:16
wgrantjml: Is there a 6 year delay for bzr 1.16, or did you mess up the date?00:17
lifelessRenatoSilva: no, 80 then either 22 or 8000:17
RenatoSilvalifeless: that's what I said don't?00:18
RenatoSilvalifeless: but the latter 80 is over https right?00:19
jmlwgrant, oops!00:19
mwhudsonwgrant: he means wednesday in the us00:19
RenatoSilvaHow do I brz branch behind a proxy and with no access to external SSH?00:19
* mwhudson hides00:20
RenatoSilvaI'm trying bzr branch lp:~renatosilva/+junk/moin.theme.solenoid00:20
RenatoSilvawith HTTP_PROXY=http://aaaa00:20
thumperlifeless: is it branch format 6 or 7 that enables stacking?00:20
RenatoSilvaand HTTP_PROXY_PORT=123400:20
mwhudsonthumper: 700:20
thumperwhy then are new branches still being created with 6 FFS00:21
mwhudsonthumper: all the new formats look like they should be branch700:22
thumper--development7 wasn't00:22
thumperor...00:23
thumperwhen I branched from another branch that was in format 6 it kept it00:23
mwhudsonit is ow00:23
mwhudson*now00:23
thumperI've upgraded the branches now to 2a00:23
thumperI've not tried bzr 1.16, just bzr.dev00:23
* thumper gets lp:bzr/1.1600:23
lifelessthumper: there is a bug open; in a shared repo 'bzr init' creates the default format not the repos matching format.00:25
lifelessthumper: secondly, branching existing projects preserves formats.00:25
lifelessthumper: if you aren't running 'bzr init' then you simply need to upgrade all your branches.00:25
thumperlifeless: do we have a nice command to upgrade all branches in a repo?00:25
jelmerlifeless: does bzr do any sort of normalization on symlink target paths?00:29
RenatoSilvaGuys the port and host must be in one var, solved00:29
RenatoSilvabzr branch http://bazaar.launchpad.net/bzr-email/bzr-email --> bzr: ERROR: Not a branch: "http://bazaar.launchpad.net/bzr-email/bzr-email/".00:35
RenatoSilvabut lp:bzr-email?00:35
lifelesshttp://bazaar.launchpad.net/bzr-email/bzr-email isn't a branch00:35
RenatoSilvaTried one bzr-email, trunk in the end (which is a series)00:36
RenatoSilvanone worked00:36
lifelesshttp://bazaar.launchpad.net/~bzr/bzr-email/trunk is the branch00:36
RenatoSilvaI wonder what lp:bzr-email does00:36
lifelessI don't know where you got http://bazaar.launchpad.net/bzr-email/bzr-email from.00:37
RenatoSilvasure it's the project, but how does it find the branch00:37
wgrantIt asks the Launchpad XML-RPC RPC server for the real path.00:37
lifelessthumper: igc has been working on making upgrade more capable00:37
wgrants/ RPC//00:37
RenatoSilvalifeless: from my mind hehe00:37
RenatoSilvawgrant: ah ok!00:37
lifelessRenatoSilva: lp:bzr-lp does an XMLRPC call, as I said when you asked about half an hour ago :)00:37
RenatoSilvalifeless: I'm missing the ~bzr00:38
lifelessjelmer: ECONTEXT. Inside inventories?00:38
RenatoSilvalifeless: sorry00:38
lifelessnp00:41
pooliehi lifeless00:42
pooliehi spiv, if any00:42
pooliejesus, this progress bar thread...00:42
mwhudsonpoolie: :)00:45
mwhudsoni think i'm on fullermd's side00:45
poolieme too, but that's a lot of heat00:45
jelmerlifeless: yeah00:50
jelmerlifeless: If I add a random byte string as symlink_target, will bzr modify it in any way?00:51
lifelessjelmer: depending on layer; it must be either unicode or utf800:53
RenatoSilvalifeless: I sucessfully installed it here00:54
RenatoSilvathanks00:54
RenatoSilvahowever I get this error: bzr: ERROR: socket.sslerror: (1, 'error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure')00:55
lifelessjelmer: but we won't randomly change it00:55
RenatoSilvais bzr-email trying to use ssh with smtp by default?00:55
RenatoSilvaour internal server doesn't require auth to send mails00:55
lifelessemail servers can request TLS00:56
lifelesswhich is like SSL00:56
RenatoSilvasure the server doesn't request any kind of auth00:59
RenatoSilva File "C:/Arquivos de Programas/Bazaar/plugins\email\smtp_connection.py", line 84, in _create_connection00:59
RenatoSilvait is  try:  self._connection.starttls()00:59
RenatoSilvahttp://www.mibbit.com/pb/qpen8101:00
lifelessRenatoSilva: it looks like your server is offering TLS but doing it badly01:06
lifelessyou could comment out that line if you like01:06
RenatoSilvalifeless: humm01:08
RenatoSilvalifeless: ha, that's what I did, I commented the try block01:09
RenatoSilvalifeless: I would expect it to raise an exception to be catched tough01:09
RenatoSilvalifeless: it seems that another kind of error happens01:09
RenatoSilvais post_commit_url a bzr option or bzr-email option?01:11
lifelessits for bzr-email, but only needed if your public url is set incorrectly01:13
RenatoSilvaI don't have one01:15
RenatoSilvaActually I hacked the option to put a friendly title for the email01:15
RenatoSilvapost_commit_url = My Project Name01:15
garyvdmRenatoSilva: btw - launchpad sends email when you push to a branch on launchpad.01:17
RenatoSilvahum maybe I could just branch bzr-email to do my customizations :)01:18
jelmerlifeless: not even removing double backslashes and that sort of thing?01:18
garyvdmRenatoSilva: People who want email should click on the "subscribe to this branch" button on the branch page.01:18
RenatoSilvagaryvdm: I can't push to launchpad at work: ssh blocked and lp does not support http push01:19
garyvdmOK01:19
jelmerlifeless: kirkland seems to've hit a problem importing from git that suggests it does, but it'll probably be a bzr-git bug01:19
lifelessjelmer: I'm pretty sure we don't normpath or anything01:23
RenatoSilvagaryvdm: does lp uses bzr-email01:35
=== jfroy is now known as jfroy|reborn
RenatoSilvais tehre any work on pretty html emails?01:35
garyvdmRenatoSilva: I don't know. You could ask at #launchpad, or may be someone here will know01:36
jmlit doesn't.01:36
jelmerlifeless: ok, I'll keep looking in bzr-git then. Thanks01:38
RenatoSilvajml: do you know what they use?01:41
jmlRenatoSilva, some custom stuff that integrates with the Launchpad web application.01:43
RenatoSilvajml: maybe bzr-email wouldn't exist if they released such component01:44
jmlRenatoSilva, I think it would.01:45
fullermdmwhudson, poolie: A lot of heat over wildly unimportant details is my specialty  ;p01:52
RenatoSilvajml: why02:00
RenatoSilvawold that be easy if I had a rev_id and a branch object, to get the committer?02:01
RenatoSilvaInside a bzr plugin02:01
lifelessRenatoSilva: branch.repository.get_revision(rev_id).committer02:01
spivlifeless: beat me to it :)02:02
lifelessRenatoSilva: there is another email sender for bzr branches, I don't remember the name offhand. Anyhow, it has a template system available.02:02
lifelessspiv: ;)02:02
garyvdmIs it possible to get a inventory from a WorkingTree that includes unknown items?02:02
RenatoSilvalifeless: oh, thank you so much!02:03
RenatoSilvalifeless: another better mail plugin?02:03
jmllifeless, I'll be a bit later than 1ish to yours if that's ok02:03
jmlIf I don't clean the dishes soon they will stage a bloody revolution.02:04
lifelessRenatoSilva: a different one02:07
lifelessjml: Sure.02:07
* thumper doesn't like projects with broken trunks02:24
thumpernot bzr02:24
thumperPlease note that code you get from this repository is not intended for productive use (unless it's tagged as a released version, of course, in which case the usual alpha/beta disclaimers apply ;-)). We like to break our codebase, config files, database schemas and all kinds of stuff. We sometimes commit non-compiling revisions to facilitate collaborative development. Running such an unstable version might trash your settings, your backlog and ma02:24
thumper your computer. You have been warned!02:24
thumperI like bzr's concept of a good trunk02:24
thumperwhy do people do this to themselves?02:25
RenatoSilvais branch.conf fetched when I copy a branch?02:26
RenatoSilvaI want to use bzr-email at work, bring branch home, stop using bzr-email, work, commit, and push02:26
lifelessRenatoSilva: branch.conf isn't copied around02:33
RenatoSilvaoh nice, then I can use bzr-email at work only02:33
lifelessRenatoSilva: you can configure bzr-email in locations.conf, then the config would be specific to that machine02:33
lifeless(as another option)02:34
RenatoSilvayou mean in my app data?02:34
RenatoSilvain my ~02:35
lifelesswhereever your bazaar.conf is you can also have locations.conf02:36
lifelessbzr --version02:36
lifelesswill tell you the place that is stored02:36
RenatoSilvathis way it will work for any branches in my machine right02:37
RenatoSilvaI think it's better for now leave it for the branch itself02:37
pooliehello spiv? what are you up to today?02:38
RenatoSilvabut it's good to know of locations.conf, thanks!02:38
garyvdmHi poolie - Please can you help me or point me to some who can.02:40
pooliegaryvdm: with what?02:40
garyvdmI want to get an inventory from a WorkingTree that includes unknown items?02:40
garyvdmand merge that with information from iter_changes02:41
poolieoh i see02:41
pooliegaryvdm: at the moment no, you need to call .unknowns() (??) separately and merge that02:41
pooliei think02:42
pooliefullermd: maybe you can ease off on it a bit?02:42
* garyvdm looks02:42
poolieoh02:43
poolieactually there is iter_changes(want_unversioned=True)02:43
pooliewill that do it?02:43
RenatoSilvaIs there a way to change history to replace the committer for some commits02:47
garyvdmpoolie: I'm going to merge iter_changes into a inventory. That would help if there was also iter_changes(.., want_ignored=True)02:47
RenatoSilvabzr log --replace-commiter "Renato Silva mail@company" "Renato Silva mail@other"02:48
RenatoSilvaIs this possible?02:48
AfCNo02:48
lifelessgaryvdm: want_unversioned=True02:49
lifelessgaryvdm: and then filter the unversioned files02:49
lifelessoh poolie already answered :P02:50
garyvdmpoolie: But there is not, so I think I'm going to use tree.extras which I found from you .unknowns() pointer02:50
garyvdmlifeless: I also may need to get ignored to.02:50
lifelessHave you checked that want_unversioned doesn't include ignored files?02:50
* garyvdm checks02:51
garyvdmlifeless: it doesn't.02:51
lifelesshmm02:51
lifelesswell, I thin it would be reasonable to add a want_ignored then02:52
=== rocksta`` is now known as rockstar
lifelessif your use case is at all common02:52
garyvdmlifeless: yes - maybe I should submit a patch.02:53
garyvdmpoolie, lifeless: I also will want to drill into a dir (only when the user expands it in the gui)02:54
garyvdmis there anything that will help me with this?02:55
pooliegaryvdm: i see iter_changes lets you specify a directory to list02:57
pooliei'm not sure if there's a way to say "but don't go any deeper"02:57
spivpoolie: hi, currently (after sleeping in...) I'm looking at landing http://bundlebuggy.aaronbentley.com/project/bzr/request/%3C20090424063000.GA29688%40steerpike.home.puzzling.org%3E, which has been approve (tweak) for ages.02:57
poolieperhaps there should be02:57
garyvdmpoolie: ok - let me look at that02:58
poolielifeless: re bug 351459 would i be right in thinking subunit is used in the implementation of parallel testing?02:58
ubottuLaunchpad bug 351459 in bzr "Error in parallel selftest: cannot import name ConcurrentTestSuite" [Undecided,Incomplete] https://launchpad.net/bugs/35145902:58
pooliespiv, jolly good03:01
garyvdmpoolie: Last question: To merge the information from iter_changes into a Inventory, I need to create a in memory copy of the inventory, and then add the unversioned items into that?03:04
garyvdmwould that be possible, or should I create my on Inventory like object to do that?03:05
garyvdms/on/own03:05
pooliethere's a create_by_apply_delta function on inventory03:06
pooliei think you can use that03:06
lifelessgaryvdm: re: single dir expansion03:07
lifelessgaryvdm: we found via testing that its faster to do all at once03:07
lifelessgaryvdm: its a lot simpler and more consistent.03:07
lifelessgaryvdm: I think igc has some patches towards making a nonrecursive flag; I'm not at all convinced that this is needed.03:07
lifelessor in fact beneficial03:07
lifelessgaryvdm: re: Inventory - generally as a client of bzrlib you shouldn't be mutating inventories; what is the goal/use case you're working towards03:08
garyvdmlifeless: Goal: I have a widget that displays a inventory03:09
garyvdmand a widget that displays iter_changes.03:09
garyvdmAnd I want to merge them into one.03:09
garyvdmlifeless: re: single dir expansion - I only want to expand into a dir only when, and if the user specifically asks for it (by expanding the dir on the widget)03:11
lifelessgaryvdm: sure. consume the whole iterator and then only show the bits you want03:11
* garyvdm looks at create_by_apply_delta03:12
lifelessI don't quite follow the widget combining though03:12
garyvdmlifeless: We have a widget that shows you the tree for a revision (run bzr qbrowse). This consumes a inventory.03:14
garyvdmlifeless: I want to extend that to something that can show you the working tree, where you can say show unknown, show ignored, hide unchanged03:16
jelmerkirkland: hi03:17
kirklandjelmer: howdy03:17
garyvdmlifeless: To make the code that gets that data from the inventory simple, I want to just add the unknown/ignored into the inventory03:18
jelmerkirkland: the bug in bzr-git importing live-helper you were seeing should be fixed now03:18
kirklandjelmer: rolled out to LP?03:19
garyvdmlifeless: but I guess that I can make it just get data from both the inventory, and what we got from iter_changes at the same time.03:19
jelmerkirkland: no, it'll only work for manual imports03:19
jelmerkirkland: I can upload my personal import though, if that would be useful03:19
lifelessgaryvdm: you should make it show a 'Tree' not an 'Inventory'03:22
lifelessgaryvdm: Inventories cannot have unknowns/ignored03:22
kirklandjelmer: hmm03:22
lifelessgaryvdm: inventories in the bzr 2 format are immutable, you can't change them.03:23
kirklandjelmer: glad to hear you have the bug fixed03:23
kirklandjelmer: I'm mainly interested in this from a vcs-imports into LP perspective03:23
lifelessgaryvdm: and if you just want it to show the working tree, using the working tree extras and unknowns methods are much better than doing iter_changes03:23
lifelessiter_changes is a delta operation, and you aren't describing a need to do a delta.03:23
jelmerkirkland: Ah, ok. I'm not a lp dev, mwhudson, jml or thumper should be able to tell you when this would/could land.03:24
garyvdmlifeless: But I also need to show a status for a changed item.03:24
kirklandjelmer: so i'll lean on those guys to get it rolled out to LP :-)03:24
kirklandjelmer: thanks for your help, as always03:24
mwhudsonit shouldn't be a big deal03:24
lifelessgaryvdm: oh ok. Well then yes iter_changes is appropriate03:24
mwhudsonjelmer: did you have to change dulwich too?03:24
jelmermwhudson: no, just bzr-git03:24
mwhudsondead easy then03:25
kirklandmwhudson: sweet03:25
kirklandfwiw, this is the broken import: https://code.edge.launchpad.net/~vcs-imports/qemu/git03:25
jelmerkirkland: Oh, I was actually talking about the live-helper one, not sure about qemu03:26
kirklandjelmer: oh, hmm, i'm confused03:26
kirklandjelmer: pointer?03:27
jelmerkirkland: I'm sorry, I messed up two bug reports :-(03:27
kirklandjelmer: heh!03:27
jelmeralthough I guess my last round of fixes could've taken care of the qemu one as well03:28
* jelmer checks03:28
jelmercody-somerville: hi03:29
jelmercody-somerville: the live-helper imports should work now.03:30
cody-somervillejelmer, w00t03:30
kirklandjelmer: cool, let me know!03:30
cody-somervillejelmer, Is this with the latest bzr-git or with the version launchpad uses?03:33
jelmercody-somerville: latest bzr-git as of a few minutes ago, not yet on lp03:35
jmlas a rule we don't run few-minutes-old code on lp :)03:40
garyvdmjml: $ bzr qannotate .  >  bzr: ERROR: bzr qannotate only works for files (got 'directory')03:44
garyvdm</brag>03:45
garyvdmjml: would be cool if that was in bzrlib.03:45
ablmfWhich proxy does bazaar use on windows? IE or default browser's setting?03:54
lifelessI think it only uses the http_proxy environment variable setting03:56
abadger1999Any bzr-gtk people about?04:01
abadger1999I just want to know what I need to package to go along with our bzr-1.16 release (a snapshot?  Which tree?  A patch?  Where?).04:02
jelmerabadger1999: we should do a release at some point, but for now I'd package a snapshot of trunk04:02
jelmerat least that's what I expect to end up doing for debian04:03
jelmerkirkland: confirmed that qemu also imports fine now04:03
kirklandjelmer: \o/04:03
kirklandjelmer: thanks04:04
kirklandmwhudson: cool, that getting rolled out to edge anytime soon?04:04
abadger1999jelmer: lp:bzr-gtk ?04:04
jelmerabadger1999: yep04:04
abadger1999jelmer: Thanks!04:05
mwhudsonkirkland: no, there's no edge for code imports04:06
kirklandmwhudson: ah04:06
mwhudsonkirkland: you'll have to wait for the rollout in c. a week04:06
kirklandmwhudson: cool, thanks.04:06
jelmermwhudson: so, the only bug I'm aware of now is that submodules don't work. All other import bugs I'm aware of should be fixed now.04:11
mwhudsonjelmer: sounds good04:11
mwhudsonjelmer: what are submodules?04:12
lifelessnested trees04:12
jelmermwhudson: gitspeak for nested trees04:12
mwhudsonah ok04:12
mwhudsoni can understand why they don't work yet then :)04:12
igchi all04:19
ablmfOh,  I use "set http_proxy=http://10.0.0.3:80" to set the enviroment variable, but bzr still can not reach the repository.04:46
ablmfWeb access is OK.04:46
mwhudsonit seems to take bazaar quite a while to figure out that it needs to download all revisions when getting a branch for the first time05:08
mwhudsonit seems to be sending 30k get_parent_map requests :/05:09
mwhudson(this is launchpad, so plenty of ghosts and all that)05:09
lifelessmwhudson: bzr versions?05:10
mwhudsonlifeless: 1.16rc1 on both sides05:10
lifelessodd05:10
lifelessits meant to cache misses05:10
lifelessfile a bug, gather data, etc.05:11
spivmwhudson: also, I guess you're fetching into an empty shared repo rather than into a new standalone branch?05:11
mwhudsonspiv: you are correct05:12
mwhudsonspiv: i can try standalone in a bit if you like05:12
spivWell, that explains why it's doing walk_to_common_revisions, although why it's so slow is a bit of a mystery.05:12
spivmwhudson: standalone will be much faster; bzr in that case just asks the branch what the last_revision is, then asks the repo to send a complete stream for that revision.05:13
spivFor that revision's ancestry, I should say.05:13
mwhudsonspiv: presumably the streaming itself will be the same05:14
spivRight, it should be.05:14
mwhudsonbah, seems to have stalled05:16
lifelessmwhudson: we still want a bug05:16
lifelessthe 'shared repo is slower' is a defect we need to fix.05:17
spivlifeless: just need an "is_empty" method on Repository ;)05:17
mwhudsonlifeless: i was thinking of posting a .bzr.log when it's done05:17
mwhudsonlifeless: which it isn't yet05:17
lifelessspiv: ENOTAFIX05:17
lifelessmwhudson: start with a bug :)05:18
lifelessspiv: or rather, EYETANOTHERPARTIALFIX05:18
spivYeah.05:18
ablmfMy bzr refused to use proxy.  Nothing seems to work.  I set IE proxy.  I "set HTTP_PROXY=10.0.0.3:80", I "set HTTP_PROXY=10.0.0.3:80"05:25
ablmfIt just ignore all this and try to connect directly.05:26
lifelessit should be in lower case, like 'http_proxy=http://10.0.0.3:80/05:26
spivablmf: set http_proxy=http://10.0.0.3:80/05:26
lifelessablmf: note that 'lp:' URL's won't use the proxy05:26
lifelessablmf: its a known bug in the python xmlrpc library, which we haven't [yet] worked around05:26
ablmflifeless: Ah, then there is no work around now?05:26
lifelessyou can go to the elaunchpad website and get the bzr+ssh or http equivalent url for branches05:27
ablmfOK.  I will try05:27
spivablmf: use http://bazaar.launchpad.net/... URLs (or bzr+ssh://...) rather than lp: URLs.05:27
ablmfBut what is the full url of a lp:xxx ?  I can not find it on their web site05:35
lifelessablmf: go to code.launchpad.net/xxx05:36
mwhudsonspiv, lifeless: https://bugs.edge.launchpad.net/bzr/+bug/38826905:36
ubottuLaunchpad bug 388269 in bzr "getting a branch into an empty shared repository takes a long time to figure out revisions to send" [Undecided,New]05:36
spivmwhudson: thanks05:36
lifelessablmf: once on that web page, lcok on the branch  - the lp:xxx link there05:38
lifelessthen you'll be at05:38
lifelesscode.launchpad.net/<user>/<xxx>/<branchname>05:38
lifelessin bzr you should use http://bazaar.launchpad.net/<the rest the same>05:38
ablmfOK.  finally I found I should use "bzr info https://code.launchpad.net:443/oah"05:44
ablmfSeems that 443 is required05:45
ablmfIt starts to downloading!05:47
ablmfThanks a lot.  But I really think it should be included in the "trouble shooting" in bazaar's document.05:47
pooliemwhudson or others: do you care about the 'dots' progress bar type?06:01
mwhudsonpoolie: no06:01
mwhudsonpoolie: by 'mwhudson' do you mean launchpad?06:02
poolieheh06:02
mwhudson(either way the answer is still no)06:02
poolieeither way06:02
=== abentley1 is now known as abentley
pooliehello abentley06:04
RenatoSilvaHow to apply a merge directive into a branch?06:27
poolieRenatoSilva: cd ~/my/branch; bzr merge /tmp/mergedirective06:28
RenatoSilvathanks, I'll try that06:28
RenatoSilvabzr branch lp:bzr-email: FATAL ERROR: Disconnected: No supported authentication methods available06:29
RenatoSilvawhy is it trying to authenticate?06:30
pooliei think it's trying to pull from launchpad over ssh06:30
RenatoSilvaif I'm not logged then it should use http06:30
RenatoSilvaunless bzr launchpad-login is persistent06:31
=== abentley1 is now known as abentley
poolieit is persistent06:40
RenatoSilvapoolie: http://pastie.org/51474306:41
RenatoSilvasomething like bzr branch --annonymous, and bzr lp-logout would be nice06:42
poolieinteresting point06:42
pooliesee bug 34914306:42
ubottuLaunchpad bug 349143 in bzr "no lp-logout command" [Low,Confirmed] https://launchpad.net/bugs/34914306:42
RenatoSilvanice06:43
poolieit shouldn't be an option to branch06:43
poolieit could be eg lp+anon://blah06:43
RenatoSilvaor lpa:06:44
RenatoSilvawhat'sa this message: Preview patch does not match changes06:47
RenatoSilvawhen bzr merge06:47
pooliethe diff in the bundle is not what the metadata says it should be06:47
pooliemaybe because06:47
poolie1- someone edited the diff after running bzr send06:47
RenatoSilvaoh I just cleaned the screen :(06:47
poolieok06:47
RenatoSilvaI missed your 1s msg06:48
poolie?06:48
pooliemaybe because06:48
poolie1- someone edited the diff after running bzr send06:48
poolie2- you copy-and-pasted it and that messed it up slightly06:48
RenatoSilvaI created a branch and applied the directive06:49
RenatoSilvaoh I edited the diff!!06:49
poolie:)06:49
RenatoSilvait seems that it was applyed tough06:49
RenatoSilvaPreview patch does not match changes --> is this some kind of hash check?06:50
RenatoSilvapreview patch == the hash06:50
RenatoSilvachanges == the actual patch06:50
RenatoSilva?06:50
poolieyes06:51
SuperMMXI got this error after C-c "bzr shelve", bzr 1.14. http://paste.ubuntu.com/197472/ , any idea ?06:52
RenatoSilvapoolie: ah ok06:55
SuperMMXanyone /06:58
SuperMMXmy dirstat get corrupted ?07:04
=== abentley1 is now known as abentley
RenatoSilvaHey! https://code.launchpad.net/~renatosilva/bzr-email/mail-customization :)07:08
SuperMMXcan anyone see my problem? (13:52:03) SuperMMX: I got this error after C-c "bzr shelve", bzr 1.14. http://paste.ubuntu.com/197472/ , any idea ?07:09
SuperMMXI can't do anything useful now with my tree.07:10
vilahi all07:14
Peng_SuperMMX: Beloved dirstate got screwed up. I'd move .bzr/checkout out of the way and run "bzr checkout". I'm pretty sure it won't clobber your working tree, but not 100%.07:14
vilajml: ping07:15
vilajml: Where should I land https://code.edge.launchpad.net/~vila/bzr/284038-push-strict/+merge/7373 ? 1.16 or trunk ? It should apply cleanly in both (modulo NEWS conflicts)07:16
pooliehello vila07:16
SuperMMXPeng_, thanks, I will try07:18
jmlvila, busy right now, gimme a few minutes -- sorry07:21
poolievila, hi?07:22
vilajml: np as long as you reply before the end of your day :)07:22
vilapoolie: hi !07:22
* vila swears about losing sound support in its VM...07:22
poolievila did you see my pm?07:23
* vila meant curse07:23
vilaho !07:23
poolie'swears' means what i think you think it means there :)07:24
SuperMMXPeng_: yes, it works, except some modified files are moved.07:25
jmlvila, I'll do that.07:28
lifelessvila: if its not a regression, it should only be landed in trunk07:34
lifelessvila: standard policy07:34
lifeless[regression or otherwise deemed 'really important'07:34
ablmfA problem when downloading code by brz : http://pastebin.com/d15ad9e8907:44
lifelessI would guess you have in intercepting proxy where you are,  one that is broken (e.g. older versions of squid)07:46
lifelessvila: ^ we *do* handle a 200 response to a range request correctly don't we?07:46
lifelesspoolie: EODing07:48
jmlvila, what lifeless said.07:49
pooliebye lifeless07:50
vilalifeless: 99% sure, want 100% ?07:51
lifelessvila: huh?07:51
vilalifeless: 200 response is a while file even if range was requested right ? So without looking at the code, I'm 99% sure07:52
vilas/while/whole/07:52
lifelessvila: good enough for me07:52
lifelesssugguests that whatevere made it into a 200 broke on a subsequent request07:52
vilalifeless, jml: Ok, I'll land to trunk then07:52
Peng_I can confirm that getting the whole file is handled properly. I don't remember if the response was 200 or 206, though.07:53
lifelessvila: you should only ever land to trunk FWIW. cherrypicks to release branches are separate ;)07:53
jmlvila, thanks.07:53
Peng_(I mean, it's inefficient as hell, but it won't break anything.)07:53
lifelessPeng_: if you ask for ranges and get 200, is the specific case.07:53
lifeless206 *is* a range response.07:53
Peng_lifeless: Yeah, but it could be a range over the whole file. Or something.07:53
* Peng_ shrugs.07:53
vilalifeless: right, you want 100%, let me look at when we issue that message :)07:54
Peng_I am 100% sure -- I did it a few weeks ago.07:54
ablmfAh, it seems that the only way to bzr work for me is to find a computer which doesn't need a proxy to access internet.07:55
ablmfHope some day bazaar will be stable enough to avoid these kind of small problems. :)07:56
Peng_(When testing Loggerhead's server, FWIW. Paste's static file server doesn't support Range requests -- or at least the version I have.)07:58
vilalifeless: so that message is issued when we realized the problem and we warn only once08:00
vilalifeless: if realized you EODed, but I'm not sure I understand: "sugguests that whatevere made it into a 200 broke on a subsequent request". Hmm, in fact I'm sure I don't understand :-)08:08
vilaPeng: can you shed some light ? The warning intent is to help people realize they get poor performance because their server... sucks :)08:10
lifelessvila: see the pastebin ablmf linked08:10
lifelessablmf: bzr doesn't generally have trouble with http proxies; its just some proxy versions are broken.08:10
Peng_vila: Me? It's dark over here. :P08:11
vilaPeng: sorry for the noise then08:11
vilalifeless:  The warning intent is to help people realize they get poor performance because their server... sucks :) As in: without ranges many bzr optimizations are useless. Other than that the processing should be fine. Modulo broken proxies detection for which we never found a reliable way (AFAIR).08:12
lifelessvila: yes, I know.08:13
lifelessvila: but *see the pastebin*08:13
RenatoSilvabug 38830008:13
ubottuLaunchpad bug 388300 in bzr-eclipse "Error after installing bzr-xmloutput" [Undecided,New] https://launchpad.net/bugs/38830008:13
RenatoSilvawhat could that be?08:13
vilalifeless: I have already read it twice, hoooo, the second part, invalid boundary, I need a -Dhttp for that, it may be two different requests08:14
vilabah, launchpad involved, good server, so that's a broken proxy, 90% sure08:14
vilaablmf: I'm pretty sure you have a broken proxy, as far as I recall, even issuing whole file requests may not be enough to cure your problem,08:15
vilaablmf: try issuing the same command but adding '-Dhttp' so that we get more precise informations in .bzr.log08:16
vilalifeless: sorry, I need one more coffee :-)08:17
ablmfvila: ok, I am trying.08:19
ablmfvila: Maybe I met a bad proxy, but it's good enough for surf internet.  And it also works fine with other version control tools.08:20
vilaablmf: It will help if you can find what proxy software you're using, each time that bug has been hit in the past, upgrading the proxy was the true solution08:20
ablmf:(  That's out of my control08:21
Peng_ablmf: Bazaar over HTTP makes uncommonly large range requests, which some broken proxies can't handle.08:21
Peng_ablmf: If you register on Launchpad, you can use bzr+ssh.08:22
vilaPeng: nope. the bug is triggered by small requests over very large files08:22
Peng_vila: Oh. That's weird.08:22
vilaablmf: and that's why it has such an impact on perfs, it will consume a lot more bandwidth08:23
vilaablmf: knowing that may help address 'not under your control' by providing a really good reason to upgrade08:23
vilaablmf: it's a company proxy right ?08:24
ablmfvila: yeah, it's my company's proxy08:24
vilaablmf: anyway, even if you can't upgrade, it will be good for us to *know* what software/version causes that (if only to report the problem008:25
vilaablmf: bzr triggers the bug, but the bogus proxy behavior (downloading whole files instead of ranges) can be experienced by other softwares without trigerring the bug08:27
ttyTypehi all08:48
vilahi alone ;)08:49
ttyTypei am new to bazaar, having used SVN previously. i have read some stuff, and am wondering, is it possible for two people to "push" to the same branch server location(sftp)08:49
vilattyType: sure08:50
ttyTypeah, hmm08:50
ttyTypeok08:50
ttyTypety08:50
vilattyType: additionally, if bzr is installed there, using bzr+ssh instead of sftp may provides better performances08:50
ttyTypevila: is that similar to the svn+ssh system, whereby an svnserve-like program is invoked on the server?08:51
AfCttyType: yes08:52
ttyTypeah, could be an issue. you see, my server has 32MB of RAM08:52
ttyTypeand a 150MHz CPU08:52
ttyTypeand no swap space08:52
lifelessyes, could well be an issue ;)08:53
ttyTypewith svnserve -t, it was just running out of memory08:53
AfC(The same code is also invoked if you run bzr as a full-time standalone [read-only] server, bzr://)08:53
ttyTypei'm using one of these jobbies: http://bifferos.bizhat.com/08:54
ttyTypeit's a little power hungry for it's MIPS, but it was £3008:54
vilattyType: forget bzr+ssh then :)08:54
ttyType:)08:55
* vila notes that dumb server support rocks ;-)08:55
Peng_So, um. I'm messing around with bzr+http's jailing, and I want to make sure I didn't screw up and make it horribly insecure. How do you think I should do that?08:56
ttyTypew00t08:56
AfCttyType: that looks like fun to play with08:57
ttyTypeAfC: indeedy. sure it's not a powerful as a gumstix board, but doodd!!!! £30!!08:57
AfCI was just going to suggest gumstix08:59
ttyTypeactually, if i wanted that kind of power, i would probably use a beagleboard09:00
ttyTypesame guts as teh gumstix09:00
ttyType*th09:00
ttyType*the09:00
* ttyType fails at typing09:00
ttyTypeyeah, get a beagleboard, run a windows CE server :D09:01
=== abentley1 is now known as abentley
ttyTypeit's a shame the beagleboard has no ethernet :-/09:03
Peng_spiv: ping09:05
spivPeng_: pong09:06
spivPeng_: about bzr+http jailing?  A good way to experiment would be with hitchhiker.09:08
spivPeng_: see if it lets you access unexpected stuff.09:08
Peng_spiv: I wrote an evil monkeypatch that works (just for me, not for other users), and was hoping you could tell me if it's horribly unsafe.09:08
Peng_spiv: http://paste.pocoo.org/show/123617/09:09
* igc dinner09:11
spivPeng_: that looks ok off the top of my head, please add it to the bug09:18
Peng_spiv: FWIW, I made it a bit more paranoid by making sure it is a ChrootTransport.09:19
lifelessPeng_: I don't know that that is beneficial, for all that its typical.09:20
Peng_Paranoia is fun.09:20
Peng_lifeless: Unless you meant something else?09:20
lifelessit could be a ReadOnlyDecorator09:20
lifelesslegitimately I mean, you have three layers: t, readonly+, chroot+09:21
lifelessand I don't know that forcing the chroot to the top is good09:21
Peng_So, get rid of the paranoia?09:21
lifelessI would09:22
Peng_OK.09:22
=== KX__ is now known as KX
Peng_spiv & lifeless: Thank you! :)09:24
Peng_This was only a few minutes of work. I really should've thought to do it 3 months ago. :\09:24
vilaPeng_: But shouldn't you add part of that 3 months of though to the few minutes of work ?09:27
lifelessvila: ?!09:41
lifelesswhat are you doing to bug 38802009:41
ubottuLaunchpad bug 388020 in bzr "UnknownErrorFromSmartServer when pushing (or committing to a bound branch) with 1.16rc1 " [High,Confirmed] https://launchpad.net/bugs/38802009:41
vilalifeless: it was assigned to bzr-search, I've seen it without bzr-search, doesn't make sense to leave assigned to bzr-search, no ?09:42
lifelesscheck the back traces09:42
lifelessyou have a different bug09:42
lifelessUnknownError just means its an error that can't be translated09:42
lifelessyou really do need more coffee I think09:43
AfCEINSUFFICIENTCAFFEINE09:45
vila2 backtraces out of the 3 doesn't involve bzr-search09:46
vilaLet me look my .bzr.log, right, mine seems to be triggered by bzr-email instead :-) ...09:49
lifelessvila: then yours is a bzr-email bug09:50
lifelessvila: my rule of thumb is 'file new bugs'09:50
lifelessdups are easier to deal with than conflated bugs09:50
vilalifeless: yeah, sorry, doing that right now09:50
vilaI didn't realize the error was generic (as mentioned, it was lost in the noise)09:51
ttyTypelo, all09:56
ttyTypeis there a way to make bzr push via HTTP?09:56
ttyTypeor any other protocol for that matter, just nothing that involves invoking something on the server that will suck up memory like svnserve does09:57
lifelessttyType: sftp:// is your best bet09:58
lifelessyou could use webdav if you want, but thats in a plugin09:58
ttyTypethat's what i was going to do, but the only ftp servers in the opkg repo are vsftpd and pure-ftpd09:59
wgrantsftp is over SSH.09:59
wgrantIt's not real FTP.09:59
ttyTypevsftpd fails, and pure-ftpd doesn't wanna do ssl for some reason09:59
ttyTypehmm09:59
wgrantOpenSSH implements SFTP by default.09:59
wgrantSo you should just need an SSH server on there.09:59
wgrantWhich I presume you already have.09:59
ttyTypewgrant: indeed i do, but i tried doing svn+ssh before, and it just nommed all of my memory(32MB)10:00
wgrantttyType: svn+ssh and bzr+ssh actually execute svn or bzr on the server. sftp doesn't.10:00
wgrantsftp just pushes the files up.10:00
ttyTypewgrant: ah! this sounds like what i want10:01
ttyTypeso how do i set up the server to take sftp?10:01
ttyTypea link to a guide would be fine10:01
wgrantttyType: You don't need to do anything.10:01
wgrantJust try pushing.10:01
wgrantIt should work.10:01
ttyTypewgrant: ah, hmmm10:01
ttyTypeawesomes :)10:01
Peng_ttyType: SSH servers usually have SFTP enabled by default.10:01
ttyTypewgrant: so where on the server's filesystem does the push go to?10:02
Peng_ttyType: It's relative to the root.10:02
wgrantttyType: The root.10:02
ttyTypeah..hmmm10:02
ttyTypethis sounds like a good idea10:02
wgrantSo, 'bzr push sftp://some.server/home/user/blah' would work.10:02
* ttyType disables pure-ftpd on his teeny linux SBC10:02
Peng_ttyType: You can use sftp://server/~/relative/to/your/home10:02
=== LenZGr_ is now known as LenZ
=== LenZ is now known as LenzGr
fullermdpoolie: Already [not] done.10:27
ttyTypehi again, people10:29
ttyTypeafter pushing a revision via sftp to a server, how would i go about updating another branch to that?10:29
ttyType(without redownloading the whole thing10:30
ttyType)10:30
ttyTypelike if it was on another computer10:30
pooliecheers, goodnight fullermd10:30
fullermdGood morning  ;p10:31
lifelessttyType: in that other branch, bzr pull <url>10:38
=== kkubasik_ is now known as kkubasik
ttyTypelifeless: ah...hmm, well, i just googled around some more and found "bzr merge, and that seems to do it"10:39
ttyTypehere's the output from my script, could i have a free sanity check from one of you people who knows what they are doing? http://pastebin.com/m5bb7ae3710:39
lifelessyou can use pull or merge depending on your needs10:40
lifelessif you're moving from one machine to the other and back, push + pull is likely whast you want10:40
lifelessif you're making concurrent edits you'll want to be doing push then merge+commit10:40
ttyTypelifeless: commit first, i imagine, otherwise merge gets upset about uncommitted changes10:40
lifelessttyType: doing a merge doesn't commit what it merged,11:05
lifelessttyType: so if you had uncommitted changes before merging, yes you should commit them first, but still do the commit after the merge.11:05
ttyTypeyou just said two opposite things i think :-S11:06
ttyTypelifeless: so..i would do commit -> merge  -> commit -> push11:08
spivttyType: probably, yes.11:18
spivttyType: the reason why you need to commit after merge is that merge *creates* uncommitted changes (the changes that are being merged in from the other branch).11:19
ttyTypespiv: i see11:20
ttyTypethanks11:20
ttyTypespiv: the commit after the merge is giving this:11:23
ttyTypeaborting commit write group: PointlessCommit(No changes to commit)11:23
ttyTypebzr: ERROR: No changes to commit. Use --unchanged to commit anyhow.11:23
ttyTypeshould i just ignore that11:23
lifelessttyType: then you had nothing to merge11:24
lifelessttyType: and the merge would have told you that11:24
ttyTypelifeless: isee11:25
ttyTypewhat is the difference between bzr branch and bzr checkout?11:50
lifelessttyType: branch makes a new branch [and sets you up to edit it]. checkout lets you edit an existing branch11:55
ttyTypelifeless: but both commands pull the repo from a server, and edit it, don't they?11:56
ttyTypes/and edit it/and let you edit it/11:57
lifelessyes. In a new branch when yo ucommit the original branch isn't altered. In a checkout when you commit the origin branch *is* altered.11:58
lifelessI'm heading off now11:59
ttyTypeok, bye11:59
ttyTypethanks11:59
fullermdttyType: For a checkout, you can think of the repo it pulls as just a local cache, to speed some things up.  It's not an independant branch, even though it has everything it needs to be.12:02
=== sabdfl1 is now known as sabdfl
fullermdMan, I speak up, and everybody quits or loses connection...   :(12:04
ttyTypefullermd: ah, i see12:05
ttyTypeso what is bzr pull?12:05
ttyTypemy synchronization process involves: add -> commit -> merge -> commit -> push12:06
ttyTypewhy would i need a pull?12:06
fullermdpull is for updating one branch to contain what another does; think of it as 'mirror'.12:06
fullermdThis is as opposed to merge, which brings over the revisions from the other branch, and prepares them as a merge into your branch (which may have additional changes not in the other)12:06
fullermdSo, generally speaking, if you want to keep up a local mirror of another branch, you'd use 'pull'.  If you're doing work separate from another branch, but want to keep bringing in its changes and combining them with yours, you'd use merge.12:08
ttyTypeah ok, thanks12:09
ttyTypevery helpfulz12:10
fullermdI have my moments  :)12:10
ttyType:D12:10
ttyTypeok, i have a problem12:36
ttyTypewhen i push to the server, it repushes all the files12:37
ttyTypeis there a way to make it only push what it needs?12:37
fullermdIt generally does.  What makes you think it's repushing everything?12:39
ttyTypefullermd: because i moved 1 file into a folder, and when i ran push, it transferred 1530 or something12:41
ttyTypeoh...wait, it appears to be not doing that now12:42
ttyTypei think it's because i have to do it once12:42
ttyTypeok, we are all done :D12:46
ttyTypeand my script is working too :D http://pastebin.com/m23361a0312:46
=== mrevell is now known as mrevell-lunch
=== mrevell-lunch is now known as mrevell
ttyTypehi again14:40
ttyTypean odd thing i have noticed - if i have modified my main repository, and i merge to it on a different computer, the next push i do UPLOADS all that stuff to the server i merged from14:42
ttyType:-S14:42
vilattyType: s/i merge to it /I merge *from* it/ ? 'all that stuff' what do you mean ?14:44
ttyTypevila: yeah,  i mean merge from it. and by all that stuff, i mean what came down in the merge14:45
ttyTypebzr for some reason sees a need to push it to the server14:45
ttyTypeeven though it's definitely present on there, because i merged from there.14:46
vilabzr should push only the revisions that are not know on the remote server14:46
ttyTypevila: that's what i thought14:46
vilaif you commit locally, you create a new revisions, it should be pushed14:46
ttyTypeindeed14:46
vilaso only that new revision is pushed, not the ones you merged14:46
ttyTypei committed to the remote host from another computer, and merged that host's repository with the local one of another computer14:47
ttyTypenow, if i ask the other computer to do a push, it pushes everything that came down in the merge14:47
ttyTypewhich takes ages14:47
ttyTypeif i do the push once, that seems to make it happy, and future pushes are only stuff the remote host DOESN'T have(like it should)14:48
ttyTypebut the push itself is insanely long, and seems to take up extra space on my server!14:48
ttyTypes/server/remote host/14:49
ttyTypethis is the sequence of steps i perform leading up to the push, which, if never done before, pushes everything: merge -> commit -> push14:50
ttyTypeshould i be using a pull command in there somewhere??14:51
=== CardinalFang is now known as statik-puppet
=== statik-puppet is now known as CardinalFang
Keybukbzr: ERROR: File exists: '/srv/bazaar.launchpad.net/push-branches/00/00/17/d0/backup.bzr'15:14
Keybukhmmm... ;)15:14
beunoKeybuk, yes, Launchpad isn't incredibly upgrade-friendly15:16
beunolftp into it, and delete the backup.bzr15:16
vilajam: lp:~vila/bzr/gdfo-heads, I'll appreciate a reality check before going further and/or any talk about it and related impacts15:18
jamvila: downloading now15:19
Keybukbeuno: lftp into what?15:19
beunoKeybuk, bazaar.launchpad.net15:20
Keybukbeuno: with what protocol?15:20
Keybukquest scott% lftp sftp://bazaar.launchpad.net15:20
Keybuklftp bazaar.launchpad.net:~> cd /srv/bazaar.launchpad.net/push-branches/00/00/17/d0/backup.bzr15:20
Keybukcd: Access failed: No such file: '/srv/bazaar.launchpad.net/push-branches/00/00/17/d0/backup.bzr'15:20
jamvila: it is still a 2-pass15:20
jamdict.fromkeys(nodes.keys()) == 1 pass15:20
* beuno tries to remember the magic encantation15:20
beunomthaddon, around?15:21
beunoPeng_, ?15:21
vilajam: not really all I need is *a* size, I don't process the nodes15:22
jam'dict.keys()" == 1 pass15:22
jamit has to walk all the nodes to get the names15:22
beunorockstar`, do you remember how to lftp into Launchpad to delete a backup dir?15:22
vilajam: strictly speaking, yes, but there alternates implementations for C15:22
vilajam: alternatively I can use an attribute in each node, but doing that didn't change the perfs15:23
jamvila: was it actually faster?15:24
jamwell, I guess you are competing with the C version15:24
vilajam: not really, I tried to compare to your python version, but mostly I wanted to avoid processing a node more than once (do it right)15:25
jamoh, and your impl is still a > 1 pass15:25
jamfor gdfo15:25
jamsince you walk all of "nodes.itervalues()"15:25
jam and *then* you walk all of pending + children15:25
jamstill 2 pass15:25
vilajam: yes, but again, that could be pre-calculated for free at __init__ time if needed15:26
jamvila: we only "_find_gdfo" 1 time during init15:26
vilajam: right, but initializing pending can be done there without additional cost15:27
jamvila: so ultimately, optimizing _find_gdfo is not the best spent time, though it is interesting, I'll admit15:27
jamit is <800ms on OOo, and we are spending many *seconds* in heads()15:27
jamso I would focus on making heads() faster.15:27
vilajam: then have a look at heads then :)15:27
jamFor _find_gdfo() as long as it is correct, I don't really mind15:27
jamWhatever method is reasonably fast, and easy to maintain.15:28
jam(I realize I'm guilty of it, too :)15:28
jamvila: does you're new version of heads() pass the whole test suite still?15:28
jamI'm also guessing that our >2 heads tests are a bit incomplete15:29
vilayes (the only failures are unrelated, one I mentioned while reviewing your patch, the other is about assertion (not mine :-P))15:29
jamvila: KnownGraph has landed in bzr.dev, btw15:29
jamso I think the main difference here is the "min_gdfo" change15:30
jamand the fact that you don't track *which* parents have been seen at a node15:30
=== ttyType is now known as bizarrefish
vilajam: my fear too about >2 heads (but in other parts of the code)15:30
jamjust that it has been seen by someone15:30
vilatime_graph.py says: 0.220s instead of the previous 7.350s, what does that represent in terms of code validation ?15:31
jamso... node.parent_keys can be None if the node is a ghost, I'm not sure that you would get that for a *candidate* node15:31
abentleyjelmer: For some reason, your merge directive for lp:~jelmer/trac-launchpad-migrator/merge didn't cause a branch to be created.  Do you mind sending me a copy of that email?15:31
vilajam: I added tests for it15:31
vilajam: but more importantly my question was did you leave parent_keys at None on purpose at __init__ time ? Or can we do that and get rid of the checks15:32
jamvila: you have to explicitly walk the list again to set them to something else15:33
=== bizarrefish is now known as leeguy92
jamI think it is *useful* to have a way to know that a node is a ghost rather than just has no parents15:33
jamas for "time_graph"15:34
=== leeguy92 is now known as TheFeIIow
jamwe do assert the value is the same as the slow path15:34
jambut only for the 'last' method15:34
jamjust a sec15:34
=== TheFeIIow is now known as bizarrefish
jamI'll run it again and see15:35
jamseems to still be correct for the bzr.dev revs15:36
vilajam: so, should I try a pyrex version or cancel the pyrex version ? or do you want more tests for corectness ?15:38
jamvila: so just adding "min_gdfo" to the pyrex version drops the time down to 0.137s15:40
jamfrom 0.453s15:40
jam(of the python version)15:40
jelmerabentley: sure15:40
jamso the pyrex version seems still a bit worthwhile15:40
jelmerabentley: I sent a unsigned version of that merge request earlier that was refused, perhaps that's relevant?15:41
abentleyjelmer: Seems unlikely to be relevant.15:41
vilajam: Err, I don't understand what modification you made. Just min_gdfo into your heads() version ?15:42
vilajam: not the new algorithm ?15:42
jamvila: just adding the "if parent.gdfo < min_gdfo: skip"15:42
jamI sent you a patch15:43
vilajam: ok15:43
jamnote that this doesn't seem to have a big impact on 'time bzr annotate' times, but it probably has a much more significant impact on the ancestry graph stuff15:44
jamsince you know you have unique heads there15:45
jamI take that back. 11.2s => 10.1s for NEWS15:45
jamvila: nice catch15:45
jamthe pure python version is 11.9s15:46
jamso slower than the existing pyrex version for NEWS15:47
jamthough only just15:47
vilajam: and there are more tricks I can do in C...15:47
jamvila: btw, you should have "seen" be a *set* not a dict15:47
jamno reason to set True everywhere15:47
jamsince you never set anything *but* true15:48
vilajam: nice catch ! :-) I did two implementations, the first one was buggy :)15:48
jamso thinking about using 'seen' rather than using the list of ancestors15:48
vilajam: and more complicated...15:48
jamlet me think if I can come up with a way to break it15:48
jamIt does make things simpler15:49
jambut I'm thinking of a case where you have 3-candidates that share some nodes, etc.15:49
vilajam: Yes please ! The huge perf difference makes me more nervous than happy so far :-)15:49
jamalso, you don't use linear_dominators anymore15:49
jamwhich is... maybe unimportant?15:49
vilajam: I have no idea so far... it's just that I was cautious and could still be a useful optimization15:50
jamwell, it is more important when you are walking more ancestry15:50
jammin_gdfo caps how far back you go, which is good15:50
vilaThe more I think about them the less reason I see to break the new algorithm15:51
jamI think it would be worthwhile to instrument to see how much linear_dominators, etc give us now that we have min_gdfo15:51
mthaddonbeuno: hi15:51
jamand see if it is worthwhile15:51
jamI can say that pyrex is faster than your implementation, but I don't know *why* :)15:51
jam(something like 4x faster still... :)15:52
vilajam: and was about my implementation in pyrex ? ;P15:52
vilajam: I didn't try because: 1) I wanted some rough validation, 2) I've yet to deep dive in pyrex ;-)15:52
jamso... I think your algorithm is always *correct* but in some cases it walks more of the graph than it needs to15:53
jammaybe15:53
jamwe may need to always walk to min_gdfo anyway15:53
jamin which case, it is minimal anyway15:53
jamyeah, I think we do15:54
vilathe basic assumption is: a node can't appear in another node ancestry if they have the same gdfo15:54
jambecause you have to walk until you know that your current tips could not be children of all heads15:54
jamand that is min_gdfo15:54
vilayes15:54
jamso even if 2 heads converge, if you have a third you have to walk until you know you don't have convergence15:54
vilajam: yes, at first I thought about soring pending by gdfo, but it's useless anyway, then is difference the best way to exclude the seen keys ?15:56
vilas/soring/sorting/15:56
=== bizarrefish is now known as leeguy92
=== leeguy92 is now known as bizarrefish
jamvila: so avoiding pop() only to push() is a 'niceity' that helps for very linear histories15:56
jamwhich is one of the heapreplace tricks15:57
jamotherwise you're right that sorting isn't particularly helpful15:57
jamseen() grows with the size of the graph15:57
jamwhile nodes.ancestor_of() doesn't15:57
jamnot a big deal15:57
jamit is nice to use a structure that cleans up itself15:57
jamrather than having to track "_cleanup"15:57
jam(which grows with how much you walked anyway... :)15:57
=== Kissaki^0ff is now known as Kissaki
vilajam: One C trick I have in mind is that I can malloc(size(graph)) and free() at the end, (or even alloca() if available)15:58
jamvila: easier to do in C than in Pyrex, since it wants to manage objects a bit differently15:59
jamI have that comment "# slab allocate"15:59
vilajam: since there is really no python involved in that method, may be C is relevant ?15:59
jamvila: however, realize that PyMalloc does slab allocation as well15:59
jamIIRC it does 256k allocations for objects < 256 bytes in size16:00
vilajam: ha, that's the meaning of slab... I should have ask :-/16:01
jamvila: "a slab" is a large chunk16:01
jamhttp://www.google.com/search?q=define%3Aslab&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a16:01
jamat least in my head :)16:02
vilajam: hehe, my dictionary gave me at least 6 different meanings, you usage in context was far more enlighting ;)16:03
jamvila: sure, though realize that is how *I* use it, which may not conform to English standards :)16:04
vilajam: ok :)16:05
jamI think of a slab as something like a large block of concrete16:05
jamsort of the key being "bigger than normal" and "all one big piece"16:06
jamwhich seems to fit "slab allocate"16:06
jamhttp://en.wikipedia.org/wiki/Slab_allocation16:06
jamActually, I think that fits just fine :)16:06
jamSo I guess it is standard terminology16:07
jamAnd I wasn't just making it up16:07
vilalol, once again, I reinvented the wheel (16 years ago in that case ;-)16:07
vilathis was, indeed, my silver bullet against fragmentation16:07
fullermdWell, if people would stop making square wheels, we'd stop having to reinvent them  ;p16:08
jamfullermd: but I like the way they go "bounce bounce bounce" down the road16:08
fullermdThat can be reproduced with round wheels and explosives...16:11
vilaor sinusoidal roads16:11
vilajam: so, if the approach sounds conceptually sound, I'd like to continue with a pyrex version, submit that and then see about topo_sort16:14
jamvila: I think the approach is quite good16:15
jamI'm curious about linear dominators16:15
vilajam: You're damn right ! Gee, I almost forget16:15
* vila still needs to optimize his revision belief system16:16
=== gdmfsob is now known as mishok13
vilajam: turning seen into a set is... slower 8-/16:33
vilajam: argh, no, bad measure (aanotate NEWS is too big to be relevant)16:34
alaa_hey guys. So silly question. I want to set up a central repo on a server where everyone has accounts. The repo needs to have universal write permissions, right? If we're using bzr+ssh?16:55
fullermdalaa_: It'd have to have write to everybody one way or another.  Group probably beats world...17:03
alaa_fullermd: thanks.17:11
=== Muttley_ is now known as Muttley
Muttleyhi, I currently have a wordpress plugin in the bzr repository on launchpad. However I want to host the plugin with wordpress.org. Part of that is you have to use their subversion repository. I know I can use bzr to push my changes to SVN. However I'd still like to have them on Launchpad too17:23
Muttleyis it possible to push them to both?17:23
fullermdProbably.  You can use bzr-svn to push a mirror of the bzr branch into svn, and just keep using bzr and updating that mirror 'once in a while'.17:26
fullermdThat's pretty simple.  It gets more complex if there's intended to actually be development happening in svn at the same time, but...17:27
MuttleyI suppose I could just push to svn when I have a new release17:27
Muttleyso to switch between where I want to push to I just put that on the command line? e.g. bzr push lp:blahplugin17:28
Muttleyor the svn address when i want to push to svn17:28
Muttleyand it remember the last one?17:28
fullermdIt remembers what you push --remember (or push when there isn't one rememeber yet).  You could type it manually when you want to do the svn mirror, you could bang up a bzr or shell alias for it, you could have a separate branch that you use just to gateway...   number of possibilities.17:30
Muttleycool, thanks17:31
MuttleyI guess best option is to just use the svn when I'm doing a new release17:31
Muttleyhappy enough keeping currently development in launchpad, it's just a requirement by wordpress for hosting your plugin17:32
fullermdOh, it probably wouldn't be too hard to just do it every few days, or whenever you've done a far bit of work.  A shell/bzr alias would make it pretty easy; "bzr push ; bzr push-to-svn"17:32
Muttleyfair enough17:33
Muttleythanks for the help17:33
vilajam: no list().extend() in pyrex ?18:10
jamvila: nope18:14
jamwell, you can do 'foo.extend()'18:14
vilahaa18:14
jambut no PyList_Extend18:14
vilaand sets ? http://docs.python.org/c-api/set.html says new in 2.5 ? wtf ?18:15
dashbefore that, there was the 'sets' module18:15
jamI'm pretty sure it is 2.418:15
vilajam: ok, not a big deal, it's only for 'seen' anyway18:16
=== bizarrefish is now known as ttyType
jamwell, try it, see if it fails on PQM :)18:16
vilajam: hehe, *you* are my pyrex PQM ;-)18:17
=== ttyType is now known as bizarrefish
eydaimonhow can I show what files were modified in a particular rev?18:21
fullermdeydaimon: `bzr stat -cREV`18:22
eydaimonthanks18:22
alaa_So looking for opinions. I want to keep a php website under bzr. So typically, apache would be serving the working tree. Is there anyway i can hide the .bzr dir?18:22
eydaimonwhy is it using -c for the rev instead of -r?18:22
mario__alaa_: htaccess? :p18:23
beunoalaa_, you can use bzr-upload18:23
fullermdeydaimon: A lot of commands have a -c.  -cREV is shorthand for -rparent:REV..REV.18:23
eydaimonok, thanks18:23
beunoalaa_, which will just upload the files, not the repostory18:23
eydaimonfullermd: understanding helps me remember :)18:23
fullermdeydaimon: It doesn't make sense to say things like 'stat REV' or 'diff REV', since stat/diff/etc are for comparison between TWO revs.18:24
fullermdeydaimon: So since you often want to ask "what changed in X relative to its parent", -c gives a convenient shorthand.18:24
alaa_beuno: yes, i've used that before. i don't know why i'm thinking i'd like to do a bzr up within the working tree that is being served, but without the branch itself...that doesn't seem possible, right?18:25
eydaimonfullermd: oh, I've been using just -r anyway, especially with diff. doesn't it default to the current head if nothing is specified?18:26
fullermdeydaimon: Well, for stat/diff, with no arg given, it compares the base rev of the WT (which usually means the head of the branch) against the current working files.18:26
beunoalaa_, right18:26
fullermdeydaimon: Doing "stat -r5" would compare rev 5 against the current tree.  "stat -r5.." is the same as "stat -r5..-1", comparing 5 against the current head.18:27
alaa_beuno: alright thanks.18:27
alaa_mario__: thank you too18:28
eydaimonfullermd: thank you much for taking the tim eto explain. I appriciate it :)18:28
=== mario__ is now known as pygi
volodyaCan I somehow make bzr-svn not do this "analyzing repository layout" step on each pull? Making cache enabled caused it to try fetch something about every single revision, eating >500MB of disk space.18:59
SamBvolodya: what version of SVN are you using?19:13
SamBhow did you create your working tree?19:13
SamBand do you have commit access?19:13
bizarrefishhi people19:14
volodyagood question. It is 1.5.1 locally. It is supposed to be 1.5 remotely (and I took extra painful steps to that effect), but I still got warning about "upgrade to 1.5", so maybe the repository is not upgradeted19:14
volodyaI've used "bzr branch URL trunk"19:14
volodyaI do have commit access.19:14
SamBvolodya: did you do a dump and reload of the repository ?19:14
volodyano, that's why I suggest it's 1.4 still.19:15
volodyait's probably not gonna happen soonish19:15
* SamB wonders if that can possibly be done incrementally19:15
volodyaunlikely, I'd guess.19:15
SamBI find it rather easy to imagine how that could be done19:16
bizarrefishi want to use bazaar to keep a personal repository for a few computers. i need to come up with a 'syncing' method, to synchronize each computer's repository with the master repository.19:17
bizarrefish so far i have this script for each machine: add -> commit -> merge with master repo -> commit -> push to master repo over sftp19:17
alaa_Another question. I am using the upload plugin, and it is not preserving group ownership bits. Does anyone know why?19:17
SamBalaa_: not preserving them between what and what ?19:18
volodyaSamB: but, do you expect 1.5 on server will stop bzr from analysing repository layout all over?19:18
bizarrefishthe problem is, say if during the merge, a file came down, when i do the final "push", that file would be re-uploaded to the master19:18
SamBvolodya: not sure19:18
volodyaor just make it so fast as to be unimportant?19:18
SamBvolodya: it's not the only way to get it tolerable, though19:19
alaa_SamB: I need my files with www-data group and they are. but when i bzr upload them, it creates the files with my group.19:19
volodyaalternatively, maybe those 1000 revisions it analyzes can be cached -- without grabbing metadata of all 250K of revisions19:19
SamBjelmer: is it possible to add a "bzr help svn-faq" topic?19:20
SamBjelmer: or perhaps just include the FAQ's web address in "bzr help svn" ?19:20
=== AnMaster is now known as Because
=== Because is now known as AnMaster
volodyaSamB: FWIW, the bzr svn faq is unhelpful. Unless there is more than one FAQ19:23
jelmervolodya: what's the problem exactly?19:25
jelmerSamB: Perhaps a help topic would be useful I guess, though it'd be annoying to keep up to date19:26
volodyajelmer: I've done "bzr branch URL trunk", and I had no-cache set for SVN repository at this time. Now, 'bzr pull' spends a minute analysing reposiotry layout. If I try to enable caching back, bzr pull appears to try get metainfo for every revision, which takes huge time.19:27
volodyaAnd in my earlier tries, caching of metainfo ate 500MB, and were not even half-way through19:27
jelmervolodya: what version of bzr-svn?19:27
jelmervolodya: do you have python-tdb installed?19:27
volodyaBazaar (bzr) 1.15. I guess latest release in ppa.19:28
volodyaI don't have python-tdb19:28
hufhi. how do i debug errors like this: [Wed Jun 17 18:28:53 2009] [warn] mod_fcgid: read data timeout in 40 seconds19:30
hufi'm running a bazaar server with apache + mod_fcgid + a bzr-smart.py19:30
jelmervolodya: I would recommend trying with python-tdb installed, that should reduce the size of the cache19:30
hufand this python script seems to be dying hard19:30
jelmervolodya: Do you have a slow svn server perhaps? The only thing that's done to guess the repository layout is basically 'svn log -v <url> --limit 300'19:31
volodyajelmer: it appears to fetch around 2000 revisions; the server is across the globe. Why can't bzr remember guessed layout?19:34
jelmervolodya: newer versions do19:36
volodyajelmer: I assume those versions not in PPA yet?19:37
jelmervolodya: actually, only development snapshots (also reduces the number of revisions that is fetched to 300)19:39
jelmervolodya: the remembered guessed layout is used now, if the location you're pulling from matches that layout19:39
jelmervolodya: you can set the layout to use explicitly and it won't try to guess it19:40
jelmervolodya: even in 0.6.1 (which is what's in PPA I think)19:40
volodyajelmer: command line option or config file?19:40
alaa_Is it safe to expose the .bzr of a lightweight checkout on the web? I wouldn't want anybody to see the code or the history.19:42
jelmervolodya: e.g. "layout = trunk0" in the right section in ~/.bazaar/subversion.conf19:42
volodyajelmer: where are possible values are documented?19:45
jelmervolodya: "bzr help svn-layout" has some explanation19:46
jelmervolodya: actually, "bzr svn-layout" may be a better way to set this value19:46
jelmervolodya: but at the moment it's readonly19:46
volodyajelmer: thanks. Putting "branches = ..." in the subversion.conf stops guessing of layout from happening19:49
volodyaI'll now trying using bzr for real.19:50
hufis there some place a bazaar smart server would log errors?19:50
jelmervolodya: is this a very large repository? It seems quite unusual to have such a large cache file19:57
jelmervolodya: e.g. the cache file for OpenOffice.org (270k revisions, 75k files in each tree) is "only" 380Mb19:58
volodyajelmer: there's 250K revisions, it's hard to estimate the number of files.19:59
hufwhat do you people do when a bazaar repo just shits itself and you can no longer commit to it?20:00
volodyajelmer: but given that linux tree is just one of the components kept there, I'd imagine the total number of files to be fairly high20:02
jelmerhuf: why would you no longer be able to commit?20:02
hufthe only solution i know is to ssh to the server, remove the dir and push the whole thing from another mirror)20:02
hufjelmer: how should i know? the smart server dies hard, and all i get back is a useless error msg20:02
hufbut even that is from the fcgi level, so it's just a timeout20:02
hufwe run into this once every few months20:03
fullermdNever had such a thing happen.  But have you tried 'check'ing it?20:04
hufbzr: ERROR: Generic bzr smart protocol error: Invalid http response for http://host/branch/.bzr/smart: Unable to handle http code 500: Internal Server Error20:04
hufbzr check? on the server or remotely?20:04
fullermdOn the server, since remotely things are being questionable.20:05
jelmerhuf: nothing about the actual error in the apache logs?20:05
fullermdCut down the number of variables.20:05
hufjelmer: nope. just that fcgi timed out and got no headers20:05
fullermdHow big a repo are we talking about?20:05
huf25M20:06
hufso pretty small20:06
fullermdSo, somewhere between disk and bzr+http client, things are going screwy.  Doing a 'check' on the server would give you a pretty good guess as to whether the problem is in the branch/repo there.20:07
fullermdIf that's good, I'd try doing something with sftp:// or [non-bzr+]http://.  Then try bzr+ssh (to try the SS without the Apache/FCGI layers).  Add on layers until it dies.20:07
hufif i rm the entire dir on the server and re-push it from a local branch, it works again20:09
hufbut i'm running the check now20:09
hufcheck didnt report any errors20:15
fullermd'k.  So the branch/repo is itself probably fine.20:17
fullermdWhat dies over the SS?  push, pull, commit, branch, anything you do?20:18
huffullermd: commit and push died, missing and up worked21:05
fullermdHm.  So, maybe the problem is just things that write?21:08
=== omichael is now known as omichael_afk
fullermdTry a push over bzr+ssh, see if cutting out the CGI layer does anything.21:09
GPHemsleyIs there a specific format for tags?21:15
jelmerGPHemsley: all modern formats support tags21:19
GPHemsleyI meant for tag names21:19
jelmerGPHemsley: ah21:20
jelmerGPHemsley: there are some conventions in use21:20
GPHemsleyhmm... can you not push tags?21:20
jelmerGPHemsley: The two most common ones seem to be using the version number as the tag or using PROJECT-VERSION21:20
jelmerGPHemsley: "bzr push" will push tags21:20
GPHemsleyeven if there aren't any new revisions?21:20
GPHemsleybecause that's what it says21:21
GPHemsleyit doesn't mentiont ags21:21
GPHemsleytags21:21
jelmerthe message could be clearer21:21
jelmerit did actually push the tags21:21
GPHemsleyOK, thanks21:21
GPHemsleyIs there a way to see them in Loggerhead?21:22
jelmerGPHemsley: afaik not yet21:22
GPHemsleyk21:22
GPHemsleyjelmer: BTW, are you in charge of bzr-svn?21:23
jelmerGPHemsley: yeah21:23
GPHemsleyor, subvertpy?21:23
* GPHemsley forgets21:23
GPHemsleybecause I haven't been able to get it set up21:24
GPHemsleysubvertpy causes trouble21:24
jelmerGPHemsley: in what way?21:24
GPHemsleyit doesn't compile21:25
GPHemsleyno matter what way I try to install it21:25
jelmerGPHemsley: what platform are you on?21:28
jelmerwhat errors do you get?21:28
GPHemsleyMac OS X 10.421:28
GPHemsleyoh21:33
GPHemsleyum21:33
GPHemsleyhang on21:33
GPHemsleyjelmer: Exception: Subversion development files not found. Please set SVN_PREFIX or (SVN_LIBRARY_PATH and SVN_HEADER_PATH) environment variable.21:35
jelmerGPHemsley: do you have the subversion development libraries installed?21:35
GPHemsleythis is where I was getting into trouble21:35
GPHemsleythey're somewhere21:35
GPHemsleybut setting SVN_PREFIX via export doesn't do anything21:35
GPHemsleyand/or no, I don't, and I don't know where to get them21:37
GPHemsleyI've been through this a number of times that I don't even remember anymore21:37
jelmerI don't know much about Mac OS X so I can only give you some generic pointers21:37
GPHemsleyah, OK21:37
GPHemsleyalso, I'm using Python 2.521:38
jelmerOn Linux the distributions usually provide packages that include the Subversion development files, not sure if there's anything like that on Mac OS X21:38
jelmerFor Windows, you can download the headers from the Subversion web site21:38
GPHemsleyfink and MacPorts are the two main ones, I think21:38
GPHemsleybut I can't seem to find the right dev files21:38
jelmerI think one of them was also packaging bzr-svn21:38
GPHemsleyit's possible, but even that wasn't installing because it couldn't compile21:39
GPHemsleyI think that's what I tried at first, using macports21:39
GPHemsleybut that installation errored out21:39
GPHemsleyso I tried to do things manually, with no more luck21:39
jelmerGPHemsley: Sorry, I'm afraid I can't provide much help here. This sounds like it is Mac OS X-specific. :-(21:42
GPHemsleyYeah, I think so21:42
GPHemsleythanks, though21:42
jelmerI know there's various people using bzr-svn on Mac OS X21:42
GPHemsleyI'm sure... but, for one thing, how many of them are on 10.4?21:43
GPHemsleymost are probably on 10.521:43
jelmerSome are on 10.421:44
GPHemsleyah, well, then IDK21:46
GPHemsleyExported releases do not contain any bzr information, correct?22:03
=== phinze_ is now known as phinze
=== ttyType is now known as bizarrefish
bizarrefishhi all22:33
bizarrefishwhen i run "bzr push", it complains about not specifying a push location, how do i specify it?22:33
bizarrefishis there a config file somewhere?22:33
fullermdJust specify it on the command line.22:34
bizarrefishi know i can just provide it like "bzr push sftp://someaddr/apath", but for some reason, that makes it PUSH the whole repository to the place i just branched it from :S22:35
beunobizarrefish, bzr push LOCATION22:35
fullermdWell, pushing to the location you specify is what it's supposed to do  ;p22:35
bizarrefishfullermd: but how can i make it just push changes?22:35
bizarrefishrather than update the whole repo22:36
bizarrefishthe weird thing is that all subsequent pushes do just that22:36
bizarrefishbut the first push the branch ever does, pushes the whole thing, and that's.....annoying22:36
fullermdIf it's pushing the whole history, then you're pointing at at a location that doesn't already have a repo with the history.22:36
bizarrefishfullermd: but i used that location to do bzr branch.22:37
bizarrefishthat's how i got hold of the local repo in the first place22:37
awilkinsDoes SFTP still try packing once in a while?22:39
fullermdWell, if you're just pushing back to the same location, you could shortcut the command line with 'bzr push :parent'...22:39
fullermdIt's certainly _possible_ there's a bug that causes it to push the whole history into a repository that already contains it.  It seems unlikely though.22:40
bizarrefishah, ok i have got it working.....somehow22:40
bizarrefishthe trick seems to be to do a push RIGHT after you create the branch22:40
bizarrefishno adding, commiting, merging beforehand22:41
bizarrefishthen you can do all the adding, committing etc... you like, and the push works22:41
* fullermd is pretty sure something different is going on than you think.22:41
bizarrefishfullermd: so am i22:41
bizarrefishthere is another interesting problem though - i have broken off a few big transfers in the past, and these half-revisions appear to be taking up some space on the filesystem22:43
bizarrefishi know git has a prune thingy for this22:44
bizarrefishis there an equiv for bzr@?22:44
bizarrefish*bzr?22:44
=== omichael_afk is now known as omichael
fullermdNot builtin, no.22:47
bizarrefishright, ok....22:47
fullermdIn-progress uploads go into a staging dir somewhere and can probably be deleted manually.  Not sure, I've never had it happen.22:47
fullermdPresumably the smart server will clean up stuff from broken connections, though that doesn't help when you're using dumb protocols.22:48
bizarrefishfullermd: hmm, you are right, something different WAS going on22:50
bizarrefishit seems i was simply creating the branch with a different hostname to which i was doing the push22:51
bizarrefisheven though they both point to the same host22:51
fullermdThat hardly seems that it would matter.22:52
bizarrefishwell, i'm giving them the same now, and it's not doing the peculiar "push everything" thing22:52
bizarrefishfullermd: you are right again, i am incorrect22:55
bizarrefishi just tried adding a file to the local repo, committing, then pushing to the server, and it's deciding to push everything there22:56
fullermdWhat makes you think it's pushing everything?22:56
bizarrefishit seems it only refrains from pushing everything as long as the local repo is the same as the remote repo22:56
bizarrefishfullermd: because i added an empty file, and it's transferring dozens of megabytes22:57
bizarrefishthe whole thing is about 100MB at the moment22:57
awilkinsHow big is the repository?22:57
awilkinsIs it because you are using SFTP?22:57
bizarrefishawilkins: that would cause it?22:57
fullermdCheck the repository after the push is finished, I suspect you'll find one new smallish pack, not a new huge one.22:57
awilkinsCan you use the smart server? If you have SFTP access you are likely to also have SSH access? Can you get bzr installed on server?22:58
fullermdIt may well have to transfer a very large amount of information over a dumb protocol to figure out what it need to push.  And I think there's some bugorother that makes them worse than they have to be.22:58
bizarrefishawilkins: the server itself has 32MB of RAM22:59
bizarrefishfullermd: i see22:59
bizarrefish:-/22:59
awilkinsWell, that could be awward22:59
bizarrefishindeed22:59
awilkinswakward22:59
awilkinsaGah, typing. Tired.22:59
fullermdIt has WHAT?22:59
bizarrefishthe server is about 1 x 2.5 inches big22:59
bizarrefishit has a 1GB flash drive for a filesystem, and a 150MHz CPU23:00
awilkinsIt's one of those wallplug things with a HD attached, yes?23:00
bizarrefishnah, they don't make them for the UK23:00
bizarrefishand those plug thingies have WAY more grunt than this23:00
awilkinsRouter with a USB port?23:00
bizarrefish(also more expensive)23:00
bizarrefishthis doohicky: http://bifferos.bizhat.com/23:01
bizarrefish£3023:01
* bizarrefish couldn't let that pass23:01
bizarrefishalas, it's x86, so it chomps 1 watt23:01
bizarrefishfor only 50bogomips23:01
bizarrefishit's just sitting in my lounge at the moment, being warm23:03
* bizarrefish mutters something about ARM supremacy23:03
bizarrefishaaanyway, i gotta be up early tomorrow. 'nite all.23:04
=== Kissaki is now known as Kissaki^0ff

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