vimeo / vimeo.php

Official PHP library for the Vimeo API.
https://developer.vimeo.com
Apache License 2.0
450 stars 210 forks source link

Drupal 9 on PHP 8 Symfony/console incompatability issue (Interim transition issues between PHP 7 and 8 on Drupal 9) #334

Open mestrega opened 11 months ago

mestrega commented 11 months ago

Library should be made usable with PHP 8.x

aaronm67 commented 11 months ago

This library is usable with PHP 8.x, the only php 7.x requirements are in require-dev libraries.

mestrega commented 11 months ago

The issue is that this is not compatible with Drupal 9 on PHP 8 as it also pertains to ankitpokhrel/tus-php. Still in the process of getting all the requirements before adding more information to this.

The issue is that D9 requires symfony/console 4.4, but the PHP8 compatible version of this requires a version of tus-php that requires symfony/console 5 and fails to build. There needs to be an intermediate step that allows for symfony/console 4.4 on PHP 8.

mestrega commented 11 months ago

I am currently working on an intermediary fork that would address both of these issues.

aaronm67 commented 11 months ago

Sounds good -- I'll reopen pending details, but that sounds like it's a normal library incompatibility, not anything with this library or php8.

If it's a symfony/console incompatibility, it's most likely related to Drupal 9 being EOLed and using outdated libraries, as tus-php uses symfony/console 5|6, so we wouldn't be able to merge any fixes in this regard.

mestrega commented 11 months ago

You are correct. This is really a temporary fix to bridge the gap between upgrading to PHP8 and then Drupal 10. It may not even need to be merged in, but could benifit from having a patch that could be accessed here and applied via a dev-* branch for others in similar circumstances. Thank you very much!

mestrega commented 11 months ago

For reference on Work in Progress, the Forked Branches being worked on are as follows:

For vimeo/vimeo.php: https://github.com/mestrega/vimeo.php/tree/PHP-8-Compat

For ankitpokhrel/tus-php: https://github.com/mestrega/tus-php/tree/Feature/Make-Compat-With-EOL-D9

mestrega commented 11 months ago

I attempted to create a PR to link my changes to this ticket, but am unable to link it to this ticket . Can I get guidance on that?

The desired branch to attach is https://github.com/mestrega/vimeo.php/tree/PHP-8-Compat

aaronm67 commented 11 months ago

I think in the current state, this is probably best maintained as a fork - there's a significant amount of risk in pointing to a dev-* library. If the tus-php maintainers will officially support a drupal 9 branch, we'd be happy to also support one.

This is a unnecessary, >=7.1.0 includes ^8.1.0. this branch is a "Drupal 9" support branch, not a PHP 8 compatibility branch.