Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign up[PATCH] Document -l on symlinkless file systems #13695
Comments
This comment has been minimized.
This comment has been minimized.
From @SmylersThis is a bug report for perl from Smylers@stripey.com, Documenting Zefram's reply to Dave M's question about -l: Flags: Site configuration information for perl 5.19.11: Configured by smylers at Fri Mar 28 15:10:22 GMT 2014. Summary of my perl5 (revision 5 version 19 subversion 11) configuration: Locally applied patches: @INC for perl 5.19.11: Environment for perl 5.19.11: |
This comment has been minimized.
This comment has been minimized.
From @Smylers0001-Document-l-on-symlinkless-file-systems.patchFrom e49358ba8408e36cae966dddacd24eac9f173bb6 Mon Sep 17 00:00:00 2001
From: Smylers <Smylers@stripey.com>
Date: Fri, 28 Mar 2014 16:33:05 +0000
Subject: [PATCH] Document -l on symlinkless file systems
We can rely on -l always being false on platforms that don't support
symlinks:
http://www.nntp.perl.org/group/perl.perl5.porters/2014/03/msg214012.html
---
pod/perlfunc.pod | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod
index b8af8ff..754ed17 100644
--- a/pod/perlfunc.pod
+++ b/pod/perlfunc.pod
@@ -378,7 +378,8 @@ other named unary operator. The operator may be any of:
-f File is a plain file.
-d File is a directory.
- -l File is a symbolic link.
+ -l File is a symbolic link (false if symlinks aren't
+ supported by the file system).
-p File is a named pipe (FIFO), or Filehandle is a pipe.
-S File is a socket.
-b File is a block special file.
--
1.8.3.2
|
This comment has been minimized.
This comment has been minimized.
From @iabynOn Fri, Mar 28, 2014 at 09:37:49AM -0700, Smylers wrote:
I don't understand why a new ticket was needed for this; my follow-up -- |
This comment has been minimized.
This comment has been minimized.
The RT System itself - Status changed from 'new' to 'open' |
This comment has been minimized.
This comment has been minimized.
From @SmylersDave Mitchell writes:
Apologies if I've misunderstood, but it looked to me like #72028 is The gap in the current -l documentation appeared to be identified by Hope that makes sense. Cheers Smylers |
This comment has been minimized.
This comment has been minimized.
From @khwilliamsonOn 03/29/2014 04:14 PM, Smylers wrote:
The doc patch seems to me to be a worthwhile addition. Are there |
This comment has been minimized.
This comment has been minimized.
From @ikegamiIt seems self-evident to me that a file can't be symlink on a system I was about to comment "defined false" would be better than false, but it's (It claims that an empty string is returned for false, which is inaccurate. On Sat, Mar 29, 2014 at 11:32 PM, Karl Williamson
|
This comment has been minimized.
This comment has been minimized.
From @SmylersEric Brine via RT writes:
The fact that Dave M posed the question suggests there are at least some
What would be accurate to say instead? We may as well fix that part of Smylers |
This comment has been minimized.
This comment has been minimized.
From @iabynOn Sun, Mar 30, 2014 at 07:19:53PM +0100, Smylers wrote:
For example it occurred to me that on platforms that don't support -- |
This comment has been minimized.
This comment has been minimized.
From @ikegamiOn Wed, Apr 2, 2014 at 7:19 AM, Dave Mitchell <davem@iabyn.com> wrote:
The behaviour is documented: It's documented to return false if it's not a Out of curiosity, what platform supported by Perl doesn't support symlinks? |
This comment has been minimized.
This comment has been minimized.
From @craigberryOn Wed, Apr 2, 2014 at 9:53 AM, Eric Brine <ikegami@adaelis.com> wrote:
VMS 8.3 (released in 2006) and later support symlinks. You have to I think it was Windows where there is a symlink implementation but |
This comment has been minimized.
This comment has been minimized.
From @ikegamiOn Wed, Apr 2, 2014 at 11:15 AM, Craig A. Berry <craig.a.berry@gmail.com>wrote:
So there's a proposed change to clarify what happens on systems without |
This comment has been minimized.
This comment has been minimized.
From @khwilliamsonOn 04/02/2014 10:24 AM, Eric Brine wrote:
This claim doesn't sound right to me. It sounds to me like there are Further, there are subtle differences between Thus, a patch that correctly documents the behavior for this |
This comment has been minimized.
This comment has been minimized.
From @craigberryOn Wed, Apr 2, 2014 at 12:45 PM, Karl Williamson
Me either.
VMS does have symlinks Perl understands, but underlying support is Thus the patch is correct in saying, "false if symlinks aren't
I agree. Now, about all of those blockers we haven't fixed yet.... |
This comment has been minimized.
This comment has been minimized.
From @ikegamiOn Wed, Apr 2, 2014 at 1:45 PM, Karl Williamson <public@khwilliamson.com>wrote:
It shouldn't be returning either!
Good. It doesn't. |
This comment has been minimized.
This comment has been minimized.
From @tonycozOn Fri Mar 28 09:37:49 2014, smylers@stripey.com wrote:
There's a gap in the implementation too, while it would be almost pointless to implement symlink() on Win32[1], perhaps -l should work: J:\>perl -le "print 'link ', -l shift() ? 'yes' : 'no'" test That said, implementing it would require a re-write of win32_stat(), since _stat()/_stati64() doesn't appear to return the appropriate flags. Tony [1] it requires admin access |
This comment has been minimized.
This comment has been minimized.
From @tonycozOn Fri Mar 28 09:37:49 2014, smylers@stripey.com wrote:
I plan to apply this for 5.21.1. Tony |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
@tonycoz - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#121523 (status was 'resolved')
Searchable as RT121523$