Tcl Source Code

View Ticket
Login
Ticket UUID: 450340
Title: fs updates to improve vfs support
Type: Patch Version: None
Submitter: nobody Created on: 2001-08-12 20:54:12
Subsystem: 37. File System Assigned To: vincentdarley
Priority: 5 Medium Severity:
Status: Closed Last Modified: 2001-08-24 01:30:16
Resolution: Accepted Closed By: vincentdarley
    Closed on: 2001-08-23 18:30:16
Description:
The attached patch makes a small changes to the new 
(vfs-tip17) APIs provided in 8.4a3 so that filesystems 
which support the operation can provide not only 
a 'readlink' command (as before) but also can make 
links.  The patch renames 'Tcl_FSReadLink' 
to 'Tcl_FSLink', with a changed signature, which is 
now capable of both actions.  The patch introduces an 
incompatibility with 8.4a3, but not with anything 
older.  Nothing changes at the Tcl level (although of 
course it would be good to expose this to Tcl 
eventually)

Impacted files are tclIOUtil.c, tclTest.c, tcl
(Mac|Win|Unix)File.c and an entry in the stub tables.
User Comments: vincentdarley added on 2001-08-24 01:30:16:
Logged In: YES 
user_id=32170

Applied patch to cvs head.

dgp added on 2001-08-23 23:28:43:

File Deleted - 9867: 



File Added - 9900: vfs.patch

Logged In: YES 
user_id=80530

Woo hoo!  No more test suite failures than 
an unpatched Tcl.  I think that's it.

I'm attaching a alternate version of the same
patch, vfs.patch, for those who prefer an
uncompressed patch with Unix line endings.

vincentdarley added on 2001-08-23 22:44:35:

File Deleted - 9850: 



File Added - 9897: vfsUpdate5.patch.gz

Logged In: YES 
user_id=32170

Attached newer patch which should, I think, fix those cross-
platform test suite bugs (there are some interesting 
subtleties when the test suite asks one platform to pretend 
to be another).

Also updated patch for latest cvs head.

dgp added on 2001-08-23 05:21:34:

File Added - 9867: test.results

dgp added on 2001-08-23 05:20:05:

File Added - 9866: vfs.patch

dgp added on 2001-08-23 05:20:04:
Logged In: YES 
user_id=80530

After patching with vfsUpdate4.patch, Tcl doesn't
build.  Compiler errors in unix/tclUnixFileCmd.c.

Here is vfs.patch, a corrected version of the patch
that compiles and links.  However, the resulting
Tcl fails 12 tests.  See attached file test.results.
It looks like the failing tests have to do with
platform-specific differences in parsing of path names.
Perhaps the tests just need to be limited to appropriate
platforms?

vincentdarley added on 2001-08-22 23:36:16:

File Deleted - 9848: 



File Added - 9850: vfsUpdate4.patch.gz

vincentdarley added on 2001-08-22 23:36:15:
Logged In: YES 
user_id=32170

The cvs head changed again, so I updated the patch.  The 
latest tclvfs package can now manipulate things 
like 'ftp://ftp.scriptics.com/readme.txt' as real paths 
once this patch has been applied.

vincentdarley added on 2001-08-22 22:32:33:

File Deleted - 9638: 



File Added - 9848: vfsUpdate3.patch.gz

Logged In: YES 
user_id=32170

Attached new patch which should pass all tests.

vincentdarley added on 2001-08-17 23:13:07:

File Deleted - 9610: 



File Added - 9638: vfsUpdate2.patch

vincentdarley added on 2001-08-17 23:13:06:
Logged In: YES 
user_id=32170

Adding further use of objectified APIs.  Still passes all 
tests on Windows.

vincentdarley added on 2001-08-17 01:00:19:

File Deleted - 9478:

vincentdarley added on 2001-08-17 01:00:18:

File Added - 9610: vfsUpdate.patch

Logged In: YES 
user_id=32170

Updating with patch which generally updates and fixed parts 
of the FS code.  While nothing was specifically broken 
before (i.e. test suite worked), this update allows for 
more flexible vfs support and improves efficiency.  It 
passes the test suite on Win, but needs testing on Unix and 
MacOS.

vincentdarley added on 2001-08-13 03:56:12:

File Added - 9478: fslink.patch

Logged In: YES 
user_id=32170

patch attached (sourceforge had some odd .class error last 
time!)

Attachments: