I'm thinking about implementing an application that can browse filesystems (through ssh,ftp etc), databases, snmp mibs, zip/tar/gz files, a little toolbox where you can do all kinds of stuff with an mc like interface. Did anyone implement this already? I've checked the examples on the twistedmatrix site and all protocols like ssh, ftp, imap seem to have their own interface. IMHO, a common interface for browsing would be nice, something like VFS (e.g. Gnome VFS). With Gnome VFS you have the same interface for webdav, ftp, gzip, cdda and others. Also, IMHO, simpleftpclient.py and simplesshclient.py should differ only one or very few lines, the authentication part. Everything else should be the same. Am I making sense? What do you think about this? Tim
Tim Terlegård wrote:
I'm thinking about implementing an application that can browse filesystems (through ssh,ftp etc), databases, snmp mibs, zip/tar/gz files, a little toolbox where you can do all kinds of stuff with an mc like interface. Did anyone implement this already?
Not that I know of.
Also, IMHO, simpleftpclient.py and simplesshclient.py should differ only one or very few lines, the authentication part. Everything else should be the same.
Am I making sense? What do you think about this?
"Yes please".
Also, IMHO, simpleftpclient.py and simplesshclient.py should differ only one or very few lines, the authentication part. Everything else should be the same.
Am I making sense? What do you think about this?
"Yes please".
You're saying that VFS is a good idea and that I should implement it? As I'm no twisted guru I'd like some guidance, please. Has this been thought about before? Is something like this considered for 2.0? Are there any difficulties implementing it? Tim
On Sun, 2005-01-23 at 14:22 +0100, Tim Terlegård wrote:
Also, IMHO, simpleftpclient.py and simplesshclient.py should differ only one or very few lines, the authentication part. Everything else should be the same.
Am I making sense? What do you think about this?
"Yes please".
You're saying that VFS is a good idea and that I should implement it? As I'm no twisted guru I'd like some guidance, please. Has this been thought about before? Is something like this considered for 2.0? Are there any difficulties implementing it?
Tim
At some stage this year I'll be implementing a related thing for work, most probably given back to twisted; A twisted VFS server, the concept will be to provide a simple tree that represents a filesystem, which will then be published via webDAV (which we will implement for twisted), FTP, sambaVFS etc.. I guess this is the opposite of what your takling about, your interested in a client to other existing services. The reason I bring this up is that they seem like two halves of the same project. -tjs
Hmmm ... are you saying there's a webdav-package coming in a soon-to-be-released update of the Twisted-package? Based on akadav or something else? WabDav is probably the only thing I miss in Twisted. Well, that and perhaps better ( if it works at all ) support for ICQ. BTW: Any hint on how to communicate to ICQ-users would be highly interesting. Best regards, Thomas On Mon, 24 Jan 2005 08:38:15 +1100, Timothy Stebbing <tjs@nunatak.com.au> wrote:
On Sun, 2005-01-23 at 14:22 +0100, Tim Terlegård wrote:
Also, IMHO, simpleftpclient.py and simplesshclient.py should differ only one or very few lines, the authentication part. Everything else should be the same.
Am I making sense? What do you think about this?
"Yes please".
You're saying that VFS is a good idea and that I should implement it? As I'm no twisted guru I'd like some guidance, please. Has this been thought about before? Is something like this considered for 2.0? Are there any difficulties implementing it?
Tim
At some stage this year I'll be implementing a related thing for work, most probably given back to twisted; A twisted VFS server, the concept will be to provide a simple tree that represents a filesystem, which will then be published via webDAV (which we will implement for twisted), FTP, sambaVFS etc.. I guess this is the opposite of what your takling about, your interested in a client to other existing services.
The reason I bring this up is that they seem like two halves of the same project.
-tjs
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
-- Mvh/Best regards, Thomas Weholt http://www.weholt.org
On Sun, 2005-01-23 at 22:55 +0100, Thomas Weholt wrote:
Hmmm ... are you saying there's a webdav-package coming in a soon-to-be-released update of the Twisted-package? Based on akadav or something else?
no I'm saying that at 'some stage this year' I'll be doing this stuff for work, The plan was to implement webdav on top of twisted.web2 when it settled down, but if akaDAV does webDAV for twisted already we will just use that :) (I hadn't heard of akaDAV till today, and our focus is VFS not DAV so YAY for whoever wrote this for me) also, I'm not a twisted hacker so I cant say what will/will not be bundled with the twisted package. -tjs
On Mon, Jan 24, 2005 at 11:47:15AM +1100, Timothy Stebbing wrote:
no I'm saying that at 'some stage this year' I'll be doing this stuff for work, The plan was to implement webdav on top of twisted.web2 when it settled down, but if akaDAV does webDAV for twisted already we will just use that :) (I hadn't heard of akaDAV till today, and our focus is VFS not DAV so YAY for whoever wrote this for me)
Only one hint for you, please make sure to run all fs calls with a thread pool, and never do a vfs call that doesn't support poll(2) within the main twisted thread. All I/O calls are synchronous and they block the main thread completely. Best would be to support kernel asynchronous I/O natively in the reactor, but that depends on linux at least, so having a posix threaded abstraction for aio would be ok even if lower performant than kernel aio (note that the kernel is going to use threads too for aio, the only advantage is that they're kernel threads instead of user threads, so with multiple apps and not only twisted running, they can save some tlb flush, plus there is some other advantage, but having threaded aio inside twisted without kernel support would be already pretty good).
On Jan 24, 2005, at 11:42 AM, Andrea Arcangeli wrote:
Only one hint for you, please make sure to run all fs calls with a thread pool, and never do a vfs call that doesn't support poll(2) within the main twisted thread. All I/O calls are synchronous and they block the main thread completely. Best would be to support kernel asynchronous I/O natively in the reactor, but that depends on linux at least, so having a posix threaded abstraction for aio would be ok even if lower performant than kernel aio (note that the kernel is going to use threads too for aio, the only advantage is that they're kernel threads instead of user threads, so with multiple apps and not only twisted running, they can save some tlb flush, plus there is some other advantage, but having threaded aio inside twisted without kernel support would be already pretty good).
I'm working on this, but as an aside from web2, which is an aside from work, so not very quickly. :) James
On Mon, Jan 24, 2005 at 02:10:29PM -0500, James Y Knight wrote:
I'm working on this, but as an aside from web2, which is an aside from work, so not very quickly. :)
Take your time. I first looked into that, but then when I started using sql and now I do all persistence with adbapi.
participants (7)
-
Andrea Arcangeli
-
Itamar Shtull-Trauring
-
James Y Knight
-
Thomas Weholt
-
Tim Terlegård
-
Timothy Stebbing
-
Tommi Virtanen