|
From: | graydon hoare |
Subject: | [Monotone-devel] Re: file:// protocol for URLs |
Date: | Tue, 30 Mar 2004 21:16:42 -0500 |
User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6b) Gecko/20031205 Thunderbird/0.4 |
Herve Quiroz wrote:
First, monotone won't allow me to use a depot on an USB key, complaining about the lack of large file support in the kernel (the FS on the USB key is FAT32, which I can't change because it is also my MP3 player). Is there a way for me to handle this? So far, I am moving the depot out of the USB device everytime I need to synchronize...
I'm not sure about that. it's possible sqlite can be built without using large files. I'm not sure if it's the default. I've filed a bug to investigate it.
Next, I am forced to use the netsync protocol to synchronize my local depot with my "mobile" depot (the one on the USB key). I am still using monotone 0.10 and I haven't yet printed docs from version 0.11 but I didn't find anything to synchronize two depots without any network access. On the other hand, I am new to monotone (one night aproximatively) so I could have missed some command in the docs. IMHO, the support of file:// protocol for URLs (required for fetch/post operations) would fit nicely in this case.
hmm. yeah, this might still feel a bit awkward. if you look at the 0.11 docs you'll notice all the fetch/post style stuff is removed from the docs and replaced with discussion of the netsync protocol. I have given this some thought and have settled on deprecating the fetch/post style of networking. I'll be removing the code to support it in this release cycle (0.11 -> 0.12). it has too many ways to fail: SMTP and NNTP for example don't guarantee message delivery order; and even if you supposedly have guaranteed order you are much more subject to a remote failure or remote racing on writes. I also prefer netsync from a maintenance and simplicity perspective: less to document, less code to maintain, less confusion for new users, simpler mental model (synchronization), only one program to deal with (no CGI).
that said, you've hit upon one important flaw with the current netsync code: it doesn't yet work over plain stdin/stdout, or pipes. I have every intention of making it do so (so that it can be used over an ssh login for example) but that didn't make it into this version. it'll show up soon.
until then, I'd recommend just using loopback TCP (listen on a local port and connect back to it). it's a bit crude, but it works.
thanks for pointing out these issues. if you discover further ways you'd like to see monotone improved, let me know.
-graydon
[Prev in Thread] | Current Thread | [Next in Thread] |