Yuval Kogman wrote:
On Fri, Sep 30, 2005 at 00:56:09 -0400, John E. Malmberg wrote:


The logic is problematic...

On OSX, for example, I could mount an HFS file system that is case
sensitive or not, interact with SMB on windows which is not, SMB on
samba which i suspect is, FAT-xx and NTFS which is not, and other
file systems.

VMS is also able to mount multiple file systems, so has the same issue.

I should update the documentation to indicate that this is for information about what is considered the "default" file system for running the script.

Currently actual scripts that I and others need to run on VMS will not run because core modules are making incorrect assumptions about the properties of the VMS file systems.

This is all under one tree, to make things more yucky.

That may also be a problem for VMS. Currently there is one method on some versions to simulate having many of the file systems under a single tree, and in the future there will be a second method, which is what the posix_mode method exposes to the few things like Cwd that need to know.

And I have not checked to see if someone has created an xs IO module based on smbwrapper. Doing so would add the abilities for perl scripts to access SMB file systems on platforms that do not otherwise have that ability.

The current interface is good enough for the default filesystem, I
guess, but you should  be able to ask about a specific file system,
e.g.:

        my $x = File::System::Spec->new(File::Spec->catfile(.. the path  ...));

        $x->case_tolerant; # asks about the filesystem hosting the path

I envisioned that this module would be for setting or reading properties, so a 'new' method does not seem to fit in with that.

It might be possible that a second optional argument could be added that would allow getting the specific properties of that file system.

I supposed the platform overrides can detect if they get a numeric argument or a string argument, and if it was a string argument to use it to look up the properties for that path, but that starts adding complications to the implementation.

Having a single call return all or set specific properties is an interesting idea, but not one that I am sure that I know how to write.

And I expect that more methods to expose properties of file systems will end up being added to this module as the maintainers of other platforms add their contributions.

-John
[EMAIL PROTECTED]
Personal Opinion Only

Reply via email to