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

Drop PHP 7 support, add PHP 8.2 support #48

Merged

Conversation

weierophinney
Copy link
Contributor

Q A
Documentation no
Bugfix no
BC Break no
New Feature yes
RFC no
QA yes

Description

This patch adds support for PHP 8.2, while dropping support for PHP 7. Additionally, it bumps the laminas-servicemanager dependency to 3.11, dropping support for container-interop.

- Remove support for PHP 7
- Add support for PHP 8.2
- Bump laminas-api-tools deps to versions that work with 8.2

Signed-off-by: Matthew Weier O'Phinney <[email protected]>
First release removing container-interop.

Signed-off-by: Matthew Weier O'Phinney <[email protected]>
Makes a few properties nullable, as they were operating that way already.
Stuffs remaining issues into baseline.

Signed-off-by: Matthew Weier O'Phinney <[email protected]>
@weierophinney weierophinney added this to the 1.8.0 milestone Jul 11, 2023
@weierophinney weierophinney added the Enhancement New feature or request label Jul 11, 2023
Signed-off-by: Matthew Weier O'Phinney <[email protected]>
Signed-off-by: Matthew Weier O'Phinney <[email protected]>
@weierophinney
Copy link
Contributor Author

weierophinney commented Jul 11, 2023

Blocked by laminas-api-tools/api-tools-oauth2#42.

Picks up PHP 8.2 support.

Signed-off-by: Matthew Weier O'Phinney <[email protected]>
Copy link
Member

@gsteel gsteel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see the upstream types are out of whack in laminas-authentication, so the psalm issues should go in the baseline, but other than that 👍

@weierophinney
Copy link
Contributor Author

weierophinney commented Jul 11, 2023

Failures are from Psalm, and I cannot reproduce them locally, even with the --no-cache flag.

From what I can tell, Laminas\ApiTools\Authentication\HttpAdapter::provides() is calling on its composed Laminas\Authentication\Adapter\Http instance to determine if either of a basic or digest provider is available, using the getBasicResolver() and getDigestResolver() respectively.

Psalm is complaining that when calling these methods, we are checking to see if null is returned, claiming that neither method is nullable. However, this is not true; in the locked version used, 2.13.0, these each are nullable methods, so the checks are correct.

Since I cannot reproduce, I'm not sure how to exclude these in order to resolve the issue.

Update: I'd made changes to the laminas-authentication libraries locally, which is why I could not recreate. Resolved now.

Laminas authentication resolvers are nullable, but not explicitly so currently.

Signed-off-by: Matthew Weier O'Phinney <[email protected]>
Copy link
Member

@Ocramius Ocramius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@Ocramius Ocramius self-assigned this Jul 11, 2023
@Ocramius Ocramius merged commit 3986e1a into laminas-api-tools:1.8.x Jul 11, 2023
@weierophinney weierophinney deleted the feature/php-8.2-support branch July 11, 2023 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants