Skip to content
New issue

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

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

Already on GitHub? # to your account

Add support for PHP 8.4 #2159

Closed
20 tasks done
acelaya opened this issue Jul 23, 2024 · 2 comments · Fixed by #2280
Closed
20 tasks done

Add support for PHP 8.4 #2159

acelaya opened this issue Jul 23, 2024 · 2 comments · Fixed by #2280
Milestone

Comments

@acelaya
Copy link
Member

acelaya commented Jul 23, 2024

Dependencies not yet supporting PHP 8.4 (composer why-not php 8.4):

  • cuyz/valinor No longer a dependency
  • laminas/laminas-code 4.14.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-config No longer a dependency
  • laminas/laminas-config-aggregator 1.15.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-diactoros 3.3.1 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-escaper 2.13.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-filter 2.36.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-httphandlerrunner 2.10.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-inputfilter 2.30.1 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-servicemanager 3.22.1 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-stdlib 3.19.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-stratigility 3.12.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • laminas/laminas-validator 2.62.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • lcobucci/jwt 5.3.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • mezzio/mezzio 3.19.1 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • mezzio/mezzio-fastroute 3.11.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • mezzio/mezzio-problem-details 1.14.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • mezzio/mezzio-router 3.17.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • mezzio/mezzio-template 2.10.0 requires php (~8.1.0 || ~8.2.0 || ~8.3.0)
  • veewee/composer-run-parallel 1.3.0 requires php (^7.4 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0)
@acelaya acelaya added this to Shlink Jul 23, 2024
@acelaya acelaya moved this to Todo in Shlink Oct 16, 2024
@acelaya acelaya added this to the 4.3.0 milestone Oct 16, 2024
@acelaya
Copy link
Member Author

acelaya commented Oct 28, 2024

Deprecation warnings from dependencies:

  • mlocati/ip-lib: (Deprecations with PHP 8.4 mlocati/ip-lib#89)
    1. IPLib\Factory::rangeFromBoundaryAddresses(): Implicitly marking parameter $from as nullable is deprecated, the explicit nullable type must be used instead
    2. IPLib\Factory::rangeFromBoundaryAddresses(): Implicitly marking parameter $to as nullable is deprecated, the explicit nullable type must be used instead
  • mobiledetect/mobiledetectlib: (I'm installing 4.8.x-dev#920c549 as a temp woraround PHP 8.4 - implicit nulls are deprecated serbanghita/Mobile-Detect#960 has been released)
    1. Detection\MobileDetect::__construct(): Implicitly marking parameter $cache as nullable is deprecated, the explicit nullable type must be used instead
  • jaybizzle/crawler-detect: (I forked the package as a temporary solution until Compatability with php 8.4 JayBizzle/Crawler-Detect#543 is merged)
    1. Jaybizzle\CrawlerDetect\CrawlerDetect::__construct(): Implicitly marking parameter $headers as nullable is deprecated, the explicit nullable type must be used instead
  • hidehalo/nanoid-php: (Deprecation warning when used with PHP 8.4 hidehalo/nanoid-php#31)
    1. Hidehalo\Nanoid\Client::__construct(): Implicitly marking parameter $generator as nullable is deprecated, the explicit nullable type must be used instead

@acelaya
Copy link
Member Author

acelaya commented Nov 17, 2024

Deprecation warnings from dependencies of shlink/* packages:

  • php-amqplib/php-amqplib (Deprecation warnings thrown with PHP 8.4 php-amqplib/php-amqplib#1198)
    1. PhpAmqpLib\Connection\AbstractConnection::__construct(): Implicitly marking parameter $io as nullable is deprecated, the explicit nullable type must be used instead
    2. PhpAmqpLib\Wire\AMQPAbstractCollection::__construct(): Implicitly marking parameter $data as nullable is deprecated, the explicit nullable type must be used instead
  • predis/predis (This has been fixed upstream, but not yet released explicitly mark nullable parameters as nullable predis/predis#1448)
    1. Predis\Configuration\Options::__construct(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead
    2. Predis\Client::createPipeline(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead
    3. Predis\Client::createTransaction(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead
    4. Predis\Client::createPubSub(): Implicitly marking parameter $options as nullable is deprecated, the explicit nullable type must be used instead
    5. Predis\Connection\Cluster\PredisCluster::__construct(): Implicitly marking parameter $strategy as nullable is deprecated, the explicit nullable type must be used instead
    6. Predis\Cluster\PredisStrategy::__construct(): Implicitly marking parameter $distributor as nullable is deprecated, the explicit nullable type must be used instead
    7. Predis\Connection\Replication\MasterSlaveReplication::__construct(): Implicitly marking parameter $strategy as nullable is deprecated, the explicit nullable type must be used instead
    8. Predis\Connection\Cluster\RedisCluster::__construct(): Implicitly marking parameter $strategy as nullable is deprecated, the explicit nullable type must be used instead
    9. Predis\Connection\Cluster\RedisCluster::askSlotMap(): Implicitly marking parameter $connection as nullable is deprecated, the explicit nullable type must be used instead
    10. Predis\Cluster\RedisStrategy::__construct(): Implicitly marking parameter $hashGenerator as nullable is deprecated, the explicit nullable type must be used instead
    11. Predis\Connection\Replication\SentinelReplication::__construct(): Implicitly marking parameter $strategy as nullable is deprecated, the explicit nullable type must be used instead
  • akrabat/ip-address-middleware (I forked the package as a temporary solution until Deprecation warning with PHP 8.4 akrabat/ip-address-middleware#46 is merged)
    1. RKA\Middleware\IpAddress::__construct(): Implicitly marking parameter $trustedProxies as nullable is deprecated, the explicit nullable type must be used instead

@acelaya acelaya pinned this issue Nov 20, 2024
@github-project-automation github-project-automation bot moved this from In review to Done in Shlink Nov 24, 2024
@acelaya acelaya unpinned this issue Nov 25, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant