nuxsmin / sysPass

Systems Password Manager
https://syspass.org
GNU General Public License v3.0
958 stars 206 forks source link

PHP 7.4 EoL #1874

Open haderlump22 opened 1 year ago

haderlump22 commented 1 year ago

sysPass Version 3.2.11

Describe the question what is the plan for the expiring php version 7.4

Screenshots

Platform (please complete the following information):

Additional context No

EchedelleLR commented 1 year ago

Related: #1849

ktoczyski commented 1 year ago

Hi,

Is there any plans to support PHP 8+ in the near future? I use FreeBSD and now PHP is only available 8.0, 8.1 (default) and 8.2, other version was dropped.

Now I can't use sysPass because I received this info:

"Required PHP version >= 7.3 <= 7.4"

vmario89 commented 1 year ago

getting the same problem in the future. i guess we simply could modify some configs to allow higher php version. but for a secure system it should be checked against all changed to ensure everything is still working correctly. sadly i am not a PHP dev :-(

vmario89 commented 1 year ago

at least its not just a simple modification. We get more serious errors when chaning to php8.X like mod_fcgid: stderr: PHP Parse error: syntax error, unexpected token "match" in /var/www/vhosts/<redacted>/vendor/phpunit/phpunit-mock-objects/src/Builder/ParametersMatch.php on line 17, referer: https://<redacted>/

nbit-ag commented 1 year ago

same... we are trying to go to php version 8.2 but unfortunately without success... we get quite a lot of dependency errors.... :/

Arash9703 commented 8 months ago

Same here , it doesn't work when the version of php is over 7.4 ! I hope this change is in future planning of syspass.

Xiokar commented 4 months ago

If you want to use sysPass with PHP 8.x then follow those steps :

  1. remove composer.lock and vendor directory
  2. edit composer.json by replacing version of phpunit/phpunit by "^9.3" AND the package "phpunit/dbunit": "^3" by "misantron/dbunit": "^5" image
  3. save your composer.json
  4. launch "composer install"
  5. edit file lib/SP/Util/Checks.php (line 52) to change the max PHP version 7.4 to 9.0 image
  6. save your file
  7. Done, syspass is now fully working on PHP 8.x
ktoczyski commented 4 months ago

If you want to use sysPass with PHP 8.x then follow those steps :

  1. remove composer.lock and vendor directory
  2. edit composer.json by replacing version of phpunit/phpunit by "^9.3" AND the package "phpunit/dbunit": "^3" by "misantron/dbunit": "^5"

Hi,

I changed this in my composer file but I received this errors:

  Problem 1
    - Root composer.json requires php ~7.3 || ~7.4 but your php version (8.1.20) does not satisfy that requirement.
  Problem 2
    - Root composer.json requires doctrine/common ~v2.7.3 -> satisfiable by doctrine/common[v2.7.3].
    - doctrine/common v2.7.3 requires php ~5.6|~7.0 -> your php version (8.1.20) does not satisfy that requirement.
  Problem 3
    - fzaninotto/faker[v1.8.0, ..., v1.9.2] require php ^5.3.3 || ^7.0 -> your php version (8.1.20) does not satisfy that requirement.
    - Root composer.json requires fzaninotto/faker ^v1.8 -> satisfiable by fzaninotto/faker[v1.8.0, v1.9.0, v1.9.1, v1.9.2].

Your composer.json file is from SysPass repo?

eduardomozart commented 4 months ago

Thank you @Xiokar, I was able to follow your steps and make sysPass work on PHP 8.2. @ktoczyski I only followed @Xiokar steps and added plugin-Authenticator to it. You'll still need to apply the patches https://github.com/sysPass/plugin-Authenticator/pull/36 and https://github.com/sysPass/plugin-Authenticator/pull/48 to make the Authenticator plugin works as expected. sysPass-3.2.11+vendor+plugin-Authenticator-2.2.2+PHP8.zip

Xiokar commented 3 months ago

@ktoczyski

Your composer.json file is from SysPass repo?

Yes, I had tested it 3 times on fresh installations of syspass before publishing here. Did you followed the entire step ? Removing .lock file + vendor directory before other steps.

@eduardomozart You're welcome

vmario89 commented 2 months ago

i can confirm that the solution from @Xiokar is working properly. Thank you for investigating.

i think it still will make sense to find a new sucessor as sysPass project is dead now for largely over 2 years. There is also no known active fork and nobody with PHP skills adopted or continued that work :/

nuxsmin commented 2 months ago

Hey guys, sysPass is alive and it will be soon updated to support PHP >= 8.2 among other useful features like CLI, dynamic config using environment variables, full unit testing and performance and code improvements.

Sorry it's being a long and hard work, but it will provide a better and more reliable base to implement new features.

Please check out the open PR about it ;)

El lun, 1 abr 2024, 21:06, Mario Voigt @.***> escribió:

i can confirm that the solution from @Xiokar https://github.com/Xiokar is working properly. Thank you for investigating.

i think it still will make sense to find a new sucessor as sysPass project is dead now for largely over 2 years. There is also no known active fork and nobody with PHP skills adopted or continued that work :/

— Reply to this email directly, view it on GitHub https://github.com/nuxsmin/sysPass/issues/1874#issuecomment-2030372589, or unsubscribe https://github.com/notifications/unsubscribe-auth/AANRRHX6RE4WOIJMQMCT22DY3GV25AVCNFSM6AAAAAARAYYIMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZQGM3TENJYHE . You are receiving this because you are subscribed to this thread.Message ID: @.***>