Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error on OSX 14.0 #61

Open
BenoitOClock opened this issue Oct 17, 2023 · 7 comments
Open

Error on OSX 14.0 #61

BenoitOClock opened this issue Oct 17, 2023 · 7 comments
Assignees
Labels

Comments

@BenoitOClock
Copy link

Hey,

I'm working with Sqitch almost daily, but it suddenly stopped working. I tried reinstalling Perl, Sqitch, I have even uninstalled and reinstalled homebrew but i keep facing the same error, whatever sqitch command i try to execute

I'm on a 2019 intel MBP running Sonoma 14.0

Array found where operator expected (Do you need to predeclare "say"?) at /usr/local/Cellar/sqitch/1.4.0/libexec/../lib/perl5/App/Sqitch.pm line 566, near "say @_"
syntax error at /usr/local/Cellar/sqitch/1.4.0/libexec/../lib/perl5/App/Sqitch.pm line 566, near "say @_"
Execution of /usr/local/Cellar/sqitch/1.4.0/libexec/../lib/perl5/App/Sqitch.pm aborted due to compilation errors.
Compilation failed in require at /usr/local/Cellar/sqitch/1.4.0/libexec/sqitch line 15.
BEGIN failed--compilation aborted at /usr/local/Cellar/sqitch/1.4.0/libexec/sqitch line 15.

How can i fix that please ?

@BenoitOClock
Copy link
Author

I finally solved the issue by adding use feature qw(say); to /usr/local/Cellar/sqitch/1.4.0/lib/perl5/App/Sqitch.pm

@theory
Copy link
Collaborator

theory commented Oct 21, 2023

I don't understand this issue, because this line enables say. What version of Perl are you using? The first line of /opt/homebrew/bin/sqitch should tell you, and if the path doesn't include a version, copy the path to the terminal and add --version.

I'm using 5.38.0, which is the latest, and do not have this issue. Very strange.

@theory theory reopened this Oct 21, 2023
@theory theory self-assigned this Oct 21, 2023
@theory theory added the bug label Oct 21, 2023
@BenoitOClock
Copy link
Author

I’m on the same perl version as you are. On my side bug is reproductible. To tell you the truth before finding the fix, i tried installing a fresh sonoma on an external drive with homebrew only, to be sure it was not some conflict with another piece of software… and even then, the bug was present.

@theory
Copy link
Collaborator

theory commented Nov 6, 2023

This is the Homebrew-installed Perl?

@BenoitOClock
Copy link
Author

Yes it is

@theory
Copy link
Collaborator

theory commented Dec 31, 2023

Finally getting back to this. Just upgraded Homebrew Perl to 5.38.2 and reinstalled Sqitch v1.4.0. I do not get the error:

❯ /opt/homebrew/bin/sqitch --version
sqitch (App::Sqitch) v1.4.0

The --version option causes Sqitch to call emit here, and emit uses say at line 566.

I don't understand what could be causing this. What does the sqitch command look like? Run:

cat /opt/homebrew/bin/sqitch

@Ovid
Copy link
Collaborator

Ovid commented Jan 1, 2024

Also, directly under use feature 'say';, I'd add this say "Perl version is '$^V'";

Even if you think you're running the correct version of Perl, it's possible that something under the hood is dispatching to a version you're not expecting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants