Skip to content

make tests pass with spaces in $^X - #82

Open
mauke wants to merge 1 commit into
pmqs:masterfrom
mauke:fix-tests-spaces-in-path
Open

make tests pass with spaces in $^X#82
mauke wants to merge 1 commit into
pmqs:masterfrom
mauke:fix-tests-spaces-in-path

Conversation

@mauke

@mauke mauke commented Aug 11, 2026

Copy link
Copy Markdown

Comment thread t/011-streamzip.t

my $Perl = ($ENV{'FULLPERL'} or $^X or 'perl') ;
$Perl = qq["$Perl"] if $^O eq 'MSWin32' ;
$Perl = qq["$Perl"];

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code has been like this for a very, very long time without any issues being raised against it.

Is this change fixing a real issue that you have found or is it just a robustness fix?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the linked bug report:

If the path to the working directory containing the source which Perl is being built from has a space in it, Perl's build process fails.

On darwin since the earliest releases, if you have 2 volumes with the same name, darwin will automatically add a space followed by a number to the mount point to resolve the conflict so even if you ensure not to use spaces, it doesn't mean the operating system will not automatically add it to the mount point.

I didn't find the issue myself, but it is real and I was able to replicate it.

IO::Compress is included in the perl core. If the the path to the perl build directory contains any spaces, those spaces will show up in $^X during make test. Quoting $Perl makes make test pass.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants