psysh: bug: Laravel tinker won't start because of a missing Termfile?

I’ve just tried to start tinker in my Laravel 8 project, I’m working on a Windows 10 PC with Mamp, I’m running PHP 7.4 and when running php artisan tinker I get the following error:

Terminfo file does not exist

I originally posted this on a Stackoverflow and it seems that this is a recent change of this library that has been made to look for a terminfo file?

I’ve tried manually installing the dev branch into my project as a dependency with as part of a suggestion:

composer require psy/psysh:@dev

But this doesn’t resolve my issue and I continue to experience the same error. Furthermore, I have tried changing PHP versions from 7.4 to 7.3 and still get the same error, I’ve also checked that I have the php_pdo_sqlite extension installed and active and I do. 7G5sX

My production site on a Cent OS 8 machine running PHP 7.4 doesn’t experience this error.

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 38 (21 by maintainers)

Most upvoted comments

dev-main#93d6a05

In console it works for me even without the dev version, but in laravel plugin tinker window I have an error and with this dev version another error: PHP Fatal error: Uncaught ErrorException: file_exists(): Unable to find the wrapper “hoa” - did you forget to enable it when you configured PHP? \vendor\psy\psysh\src\Readline\Hoa\ConsoleTput.php:791

I’ve added additional check if hoa stream wrapper registered

but this is the library which registers the hoa stream wrapper so … how is it not present?

https://github.com/bobthecow/psysh/blob/77fc7270031fbc28f9a7bea31385da5c4855cb7a/src/Configuration.php#L822 isSupported() called statically, so stream wrapper is uninitialized at this stage.

https://github.com/bobthecow/psysh/blob/77fc7270031fbc28f9a7bea31385da5c4855cb7a/src/Configuration.php#L795 Stream wrapper actually registers here.

P.S. I think adding static::bootstrapHoa(); into isSupported() function will do the job.

Okay, so this is v0.11.5, which is known to have this issue. From here, please run composer require psy/psysh:dev-main#93d6a05, and see if the issue persists.

It should be @dev. If you start a new project and only require psy/psyh:@dev you’ll get the current main:

Screen Shot 2022-06-01 at 8 33 07 AM

My guess is that you have another constraint somewhere preventing PsySH from updating.