-
Notifications
You must be signed in to change notification settings - Fork 81
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
Tests/GH Actions: allow for upstream issue which prevented the PHP 8.1 builds from passing #131
Conversation
149edbd
to
23be95f
Compare
Once WP Core ticket https://core.trac.wordpress.org/ticket/54504 has been actioned, the temporary test skipping for the one test can be removed again. As for the PHP 8.2 tests showing deprecation notices - all of those are related to upstream ticket https://core.trac.wordpress.org/ticket/56034 |
@@ -281,6 +281,11 @@ public function test_slashes_should_not_be_stripped() { | |||
* Note: this test doesn't test anything else of the functionality in the `WP_Import::fetch_remote_file()` method! | |||
*/ | |||
public function test_fetch_remote_file_php81_deprecation() { | |||
// Temporary until WP updates to Requests 2.0.0. | |||
if ( PHP_VERSION_ID >= 80100 ) { | |||
$this->markTestSkipped( 'Test will fail on PHP 8.1+ until WP has upgraded to Requests 2.0.0. Temporarily skipping the test.' ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This doesn't seem like the best fix - Yes, it'll make the tests pass, but that's it.
We can wait on trunk to fix the notices, or add a workaround into the test structure that allows for discarding the deprecation notices.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, the fix for Core (upgrade Requests) has been available since November 2021 and it doesn't look like anything is happening there for now, so that can be a long wait.
The reason I choose this (simple) work-around is to safeguard that no new PHP 8.1/8.2 incompatibilities will be introduced in the plugin in the mean time while we're waiting for Core.
A "known to fail" build will be disregarded by most devs, which means that new incompatibilities can slip in a little too easily - as they have in Core -.
The test which is being skipped is a specific one, which only tests for a specific PHP 8.1 deprecation to not be thrown. It doesn't actually test the functionality in the plugin, which is why IMO this is the simplest way to safeguard the plugin for PHP 8.1/8.2 right now.
Also see: #113
So yes, I agree it may not be the best fix, but it is not meant to be. It is meant to only be a temporary measure,
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
WP 6.2 includes Requests 2.0.0, so when testing with WP 6.2, the tests should now pass without the first commit.
23be95f
to
2bd53b6
Compare
Rebased the PR and added a second matrix update commit to allow for WP 6.2 and PHP 8.2 having been released. |
2bd53b6
to
721f5b0
Compare
This should allow the PHP 8.1 build to pass.
... and test against the highest and lowest support WP version.
721f5b0
to
eb99e5b
Compare
As the build is now passing, the first commit of this PR (what this PR was about) is no longer needed, so I'll close this PR. I will open a new PR for the GH Actions matrix updates. |
Tests: temporarily skip a test until WP updates the Requests library
This should allow the PHP 8.1 build to pass.
GH Actions: do not allow the PHP 8.1 build to fail anymore
... and test against the highest and lowest support WP version.
GH Actions: update the matrix for latest WP/PHP