A couple more plugins incompatible with migration

I’m sorry to inform you I’ve tested on two websites and it failed.
Test results and error log included below.

Test Wordpress 5.8 -> ClassicPress 1.3

Wordpress 5.8

-> all plugins up to date;
-> Theme: Make PLus (with plugin)
-> Security: Wordfence, 2FA enabled
-> imagick not installed (sitediagnose “warning”)

Production server running Debian 10 (Debian 4.19.194-2 (2021-06-21) x86_64), PHP 7.4, MySQL 5.7.33
Server = VPS, Hetzner{dot}com, 4Core, 16GB RAM.
Live website, copied to staging environment


First website (www.brinkhost.nl -> staging -> conversion)

Test

  • install latest plugin to switch to classicpress
    (pasting the zipfile URL into the “Advanced” section of the migration plugin)

Result:

Installation failed

De update kon niet worden geïnstalleerd omdat we sommige bestanden niet konden kopiëren. Dit komt meestal door inconsistente bestandsrechten.: wp-admin/includes/update-core.php

Installatie mislukt.

Using regular “switch to classicpress” option:

Result:

Shows a blank screen in admin as well as frontend.


Second website, personal blog at www.bijbelstudie.info

Same procedure, same errors.


Error logging

[Wed Aug 25 18:07:37.588744 2021] [proxy_fcgi:error] [pid 3930:tid 139962093885184] [client 84.83.143.xxx:57512] AH01071: Got error 'PHP message: PHP Warning:  copy(/home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-content/upgrade/1.3.0-rc2-3rzh8T/wordpress/wp-admin/includes/update-core.php): failed to open stream: No such file or directory in /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-admin/includes/class-wp-filesystem-direct.php on line 309', referer: https://bijbelstudie.info/wp2cp/wp-admin/tools.php?page=switch-to-classicpress
[Wed Aug 25 18:09:04.223223 2021] [proxy_fcgi:error] [pid 3930:tid 139961598715648] [client 84.83.143.xxx:57520] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function wp_set_script_translations() in /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-content/plugins/contact-form-7/includes/block-editor/block-editor.php:36\nStack trace:\n#0 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-includes/class-wp-hook.php(284): wpcf7_init_block_editor_assets()\n#1 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters()\n#2 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action()\n#3 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-settings.php(456): do_action()\n#4 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-config.php(78): require_once('/home/username1/...')\n#5 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-load.php(37): require_once('/home/username1/...')\n#6 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-b...', referer: https://bijbelstudie.info/wp2cp/wp-admin/update-core.php?action=do-core-upgrade&_migrate=classicpress
[Wed Aug 25 18:09:04.271282 2021] [proxy_fcgi:error] [pid 3930:tid 139962253346560] [client 84.83.143.xxx:57520] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function wp_set_script_translations() in /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-content/plugins/contact-form-7/includes/block-editor/block-editor.php:36\nStack trace:\n#0 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-includes/class-wp-hook.php(284): wpcf7_init_block_editor_assets()\n#1 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters()\n#2 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action()\n#3 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-settings.php(456): do_action()\n#4 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-config.php(78): require_once('/home/username1/...')\n#5 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-load.php(37): require_once('/home/username1/...')\n#6 /home/username1/domains/bijbelstudie.info/public_html/wp2cp/wp-b...', referer: https://bijbelstudie.info/wp2cp/wp-admin/update-core.php?action=do-core-upgrade&_migrate=classicpress
1 Like

I edited your error log to remove your cPanel username for privacy/security, and replaced it with username1.

As for the issue. The fatal error was caused by Contact Form 7, which requires WordPress 5.5 + and will not work in ClassicPress. Block related code is causing this, I believe.

So if you disable CF7 and try migration again, it should work. Unless there are more incompatible plugins.

2 Likes

What is the exact URL that you pasted into the Advanced section of the migration plugin? I think one problem may be that you used the wrong file.

The link as provided in this topic (https://github.com/ClassicPress/ClassicPress-release/archive/1.3.0-rc2.zip)

1 Like

Thanks for the edit. On the second site I use Contact Form 7, but not on the first one. Apart from that, the migration plugin didn’t mark any issues/errors.

If this would be released ‘in the wild’ you’d have a lot of frustrated users for sure. The last thing people want to hear is “yeah, turn off your plugins” – it’s the default answer for many issues posted on the WP-forums. And that is frustrating for people. If it is known that CF7 crashes CP, it should be mentioned straight away in the migration plugin.

1 Like

Right, that won’t work. The Advanced Controls section shows this warning which is worth paying attention to:

Use this form to switch to other versions of WordPress, or ClassicPress migration builds!
Official release builds of ClassicPress will not work.

The remaining issue is that the latest version(s) of Contact Form 7 are not compatible with ClassicPress. I’ve reported this in our list of development tasks: https://github.com/ClassicPress/ClassicPress-Migration-Plugin/issues/84

1 Like

Can you send the error log for the second site also? It is probably a different issue then.

1 Like

This I don’t understand. It says above:

I followed these instructions, didn’t I?

2 Likes

The error log was from the 2nd one.

Here’s the error logging from the 1st site. Clearly it points to a plugin, but as with the 2nd site, the migration tool doesn’t show this upfront. You can’t do this to John Doe who wants to upgrade his website…

[Wed Aug 25 17:55:42.231597 2021] [proxy_fcgi:error] [pid 3930:tid 139961623893760] [client 2a02:a457:8033:1:xxxxx:0] AH01071: Got error 'PHP message: PHP Warning:  copy(/path/user/domains//brinkman.it/public_html/wp2cp/wp-content/upgrade/1.3.0-rc2-Xe1e60/wordpress/wp-admin/includes/update-core.php): failed to open stream: No such file or directory in /path/user/domains//brinkman.it/public_html/wp2cp/wp-admin/includes/class-wp-filesystem-direct.php on line 309\n', referer: https://brinkman.it/wp2cp/wp-admin/tools.php?page=switch-to-classicpress
[Wed Aug 25 17:58:22.605940 2021] [proxy_fcgi:error] [pid 3928:tid 139961892460288] [client 2a02:a457:8033:1:xxxxx:0] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Class 'WP_Block_Type_Registry' not found in /path/user/domains//brinkman.it/public_html/wp2cp/wp-content/plugins/review-widgets-for-trustpilot/trustindex-plugin.class.php:2128\nStack trace:\n#0 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(286): TrustindexPlugin->register_block_editor('')\n#1 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array)\n#2 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action(Array)\n#3 /path/user/domains//brinkman.it/public_html/wp2cp/wp-settings.php(456): do_action('init')\n#4 /path/user/domains//brinkman.it/public_html/wp2cp/wp-config.php(92): require_once('/home/admin/dom...')\n#5 /path/user/domains//brinkman.it/public_html/wp2cp/wp-load.php(37): require_once('/home/admin/dom...')\n#6 /path/user/domains//brinkman.it/public_html/wp2cp/wp-admin/admin.php(31): require_once('/home/admin/dom...')\n#...\n', referer: https://brinkman.it/wp2cp/wp-admin/update-core.php?action=do-core-upgrade&_migrate=classicpress
[Wed Aug 25 17:58:22.862120 2021] [proxy_fcgi:error] [pid 3928:tid 139962354059008] [client 2a02:a457:8033:1:xxxxx:0] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Class 'WP_Block_Type_Registry' not found in /path/user/domains//brinkman.it/public_html/wp2cp/wp-content/plugins/review-widgets-for-trustpilot/trustindex-plugin.class.php:2128\nStack trace:\n#0 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(286): TrustindexPlugin->register_block_editor('')\n#1 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array)\n#2 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action(Array)\n#3 /path/user/domains//brinkman.it/public_html/wp2cp/wp-settings.php(456): do_action('init')\n#4 /path/user/domains//brinkman.it/public_html/wp2cp/wp-config.php(92): require_once('/home/admin/dom...')\n#5 /path/user/domains//brinkman.it/public_html/wp2cp/wp-load.php(37): require_once('/home/admin/dom...')\n#6 /path/user/domains//brinkman.it/public_html/wp2cp/wp-cron.php(33): require_once('/home/admin/dom...')\n#7 {main...\n', referer: https://brinkman.it/wp2cp/wp-cron.php?doing_wp_cron=1629907101.5354890823364257812500
[Wed Aug 25 17:58:31.685579 2021] [proxy_fcgi:error] [pid 3928:tid 139962354059008] [client 2a02:a457:8033:1:xxxxx:0] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Class 'WP_Block_Type_Registry' not found in /path/user/domains//brinkman.it/public_html/wp2cp/wp-content/plugins/review-widgets-for-trustpilot/trustindex-plugin.class.php:2128\nStack trace:\n#0 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(286): TrustindexPlugin->register_block_editor('')\n#1 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array)\n#2 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action(Array)\n#3 /path/user/domains//brinkman.it/public_html/wp2cp/wp-settings.php(456): do_action('init')\n#4 /path/user/domains//brinkman.it/public_html/wp2cp/wp-config.php(92): require_once('/home/admin/dom...')\n#5 /path/user/domains//brinkman.it/public_html/wp2cp/wp-load.php(37): require_once('/home/admin/dom...')\n#6 /path/user/domains//brinkman.it/public_html/wp2cp/wp-admin/admin.php(31): require_once('/home/admin/dom...')\n#...\n', referer: https://brinkman.it/wp2cp/wp-admin/update-core.php?action=do-core-upgrade&_migrate=classicpress
[Wed Aug 25 17:58:41.412384 2021] [proxy_fcgi:error] [pid 3928:tid 139962354059008] [client 2a02:a457:8033:1:xxxxx:0] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Class 'WP_Block_Type_Registry' not found in /path/user/domains//brinkman.it/public_html/wp2cp/wp-content/plugins/review-widgets-for-trustpilot/trustindex-plugin.class.php:2128\nStack trace:\n#0 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(286): TrustindexPlugin->register_block_editor('')\n#1 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array)\n#2 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action(Array)\n#3 /path/user/domains//brinkman.it/public_html/wp2cp/wp-settings.php(456): do_action('init')\n#4 /path/user/domains//brinkman.it/public_html/wp2cp/wp-config.php(92): require_once('/home/admin/dom...')\n#5 /path/user/domains//brinkman.it/public_html/wp2cp/wp-load.php(37): require_once('/home/admin/dom...')\n#6 /path/user/domains//brinkman.it/public_html/wp2cp/wp-admin/admin.php(31): require_once('/home/admin/dom...')\n#...\n'
[Wed Aug 25 17:58:48.958258 2021] [proxy_fcgi:error] [pid 3928:tid 139962354059008] [client 2a02:a457:8033:1:xxxxx:0] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught Error: Class 'WP_Block_Type_Registry' not found in /path/user/domains//brinkman.it/public_html/wp2cp/wp-content/plugins/review-widgets-for-trustpilot/trustindex-plugin.class.php:2128\nStack trace:\n#0 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(286): TrustindexPlugin->register_block_editor('')\n#1 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array)\n#2 /path/user/domains//brinkman.it/public_html/wp2cp/wp-includes/plugin.php(453): WP_Hook->do_action(Array)\n#3 /path/user/domains//brinkman.it/public_html/wp2cp/wp-settings.php(456): do_action('init')\n#4 /path/user/domains//brinkman.it/public_html/wp2cp/wp-config.php(92): require_once('/home/admin/dom...')\n#5 /path/user/domains//brinkman.it/public_html/wp2cp/wp-load.php(37): require_once('/home/admin/dom...')\n#6 /path/user/domains//brinkman.it/public_html/wp2cp/wp-blog-header.php(13): require_once('/home/admin/dom...')\n#...\n'
1 Like

OK, I see what you mean, I’ve updated the release post to make this a bit clearer.

We rely on reports like yours to mark plugins as incompatible with ClassicPress. This is not an easy problem to solve, and this is the reason there are so many warnings about making a backup in the migration plugin.

I’ve made a development task to add this second plugin to the incompatible list also: https://github.com/ClassicPress/ClassicPress-Migration-Plugin/issues/84#issuecomment-905748210 Once this is done, users will receive a warning that indicates that these specific plugins are not compatible with ClassicPress.

3 Likes

BTW, when CF7 started to demand WP5, I found the Smart Forms from Rednao is a much better plugin, than CF7. It supports WP4.9 and works in ClassicPress without problems.

1 Like

Sure a list of incompatible plugins has to exists, but why not to use the list just for plugins that states to work with WP 4.9 but don’t work and automatically excluding those requiring WP 5+?

Sorry if I’m wrong but I totally miss how the migration plugin works.

1 Like

That is how it is supposed to work.

  1. The remote List stores plugins that for some reason cannot be detected as incompatible by our migration plugin already
  2. The migration plugin checks both readme and main plugin files for requirements. If it finds a WP 4.9+ instance, it tells so to the user. If it finds nothing, it keeps warning there might be still issues but we didn’t find any
  3. It works the same for themes

Thus there is no need whatsoever to add plugins or themes to any list unless they do not declare any version requirement and do fail on 4.9+, or do declare 4.9 compatibility but fail for whatever reason.

Also each such item added to the list should be quickly confirmed to really fail, and to really fail due to 4.9, and not for some other weird reason. Otherwise we will end up having a list of “incompatible” software where really it is just not working for (some) users. That is a difference, of course.

CF7 requires WordPress Version: 5.5 or higher - thus it should never even allow the user to activate CP (Migrate to) when that plugin is active. If that does not work, the migration plugin has a bug. There is definitely no need to add CF7 to said list. Our plugin must detect it, instead.

2 Likes

The latest release of the migration plugin only works based on the incompatible plugins list stored on our API server.

This part has been developed on GitHub but not released in a new version of the migration plugin yet. I would like to test it a bit more first.

In the meantime, there is still some benefit to adding plugins to our “incompatible” list because that will help everyone now.

Finally there are also plugins that declare compatibility with WP 5+ but actually work fine with WP 4.9 and ClassicPress. I would expect this to be the exception rather than the rule, though.

1 Like

Darn! You are right, I forgot the PRs for that are slated for 1.4 and yet we did release only 1.3.1…

Updated the Git issue as well.

1 Like

I checked on one of the CP sites I run and CF7 works fine on that one btw. No issues at all.

1 Like

What version of CF7 is on this site that works fine?

What version of CF7 is on your site that failed to migrate with the CF7-related error message?

Version: 5.1.9. On a site that has been running CP since 1.0 and never was a Wordpress website before

5.4.2 – that will probably be the difference. Never noticed that on the first site it was outdated since it doesn’t notify there are updates available.

Yes, once a plugin moves to WP5+ you stop getting updates (including any security updates). I wonder how many CP users think their plugins are up to date when they are actually way behind.

If CP is going to develop the Site Security/Site Health area then this would be a good check to run automatically. Maybe the same sort of code could be used as described here:

1 Like

A post was split to a new topic: WP 5+ plugin updates and security concern