Go to main content

Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2018-12-11 19:21:20

gaekwad
Server grease monkey
From: People's Republic of Cornwall
Registered: 2005-11-19
Posts: 4,733
GitHub

Request for testers: PHP 7.3 compatibility

December 2018 is a key month in PHP Land:

Textpattern will run OK on PHP 5.4.0 or later, but newer PHP is recommended for improved performance and security.

I’ve updated the Textpattern dev demo site to run PHP 7.3.0 so we can test the upcoming 4.7.2 release for compatibility. I’ve had a non-exhaustive test of Textpattern on PHP 7.3.0 and things appear to run smoothly.

If you have time, energy and inclination: it would be great to get your feedback on your experience with Textpattern on PHP 7.3.0.

What doesn’t work? Was any behaviour unexpected? Were any PHP warnings or errors shown? That kind of feedback is very useful.

All you have to do is go to the demo site landing page, get your login credentials, and use the development site links to test out the front-side and admin-side functionality.

Please reply with any issues here, or on the PHP 7.3.0 compatibility issue at GitHub.

Thank you.

Last edited by gaekwad (2018-12-11 19:23:06)

Offline

#2 2018-12-11 20:45:25

michaelkpate
Moderator
From: Avon Park, FL
Registered: 2004-02-24
Posts: 1,379
Website GitHub Mastodon

Re: Request for testers: PHP 7.3 compatibility

Interesting. I just checked at Dreamhost and the available options are: 5.6, 7.0, 7.1, and 7.2 with 7.0 being the recommended choice.

The Dreamhost PHP support page links to the PHP.Net page that lists the current status.

Offline

#3 2018-12-11 21:03:22

gaekwad
Server grease monkey
From: People's Republic of Cornwall
Registered: 2005-11-19
Posts: 4,733
GitHub

Re: Request for testers: PHP 7.3 compatibility

michaelkpate wrote #315539:

Interesting. I just checked at Dreamhost and the available options are: 5.6, 7.0, 7.1, and 7.2 with 7.0 being the recommended choice.

At-scale web hosting providers tend to be much more small-c conservative on that front. They’ll likely have approved versions, change control, all kinds of stuff. Their focus is on stability, otherwise thousands of people will swamp the support desk and/or move elsewhere.

Me? I tweak, break, fix, optimise and fine-tune servers like it’s a sport. Nothing I use in production is running 7.3 at the moment, and I won’t use it in anger until probably 7.3.2 or so, but it’s useful to know if Textpattern works with it. So far, so good.

Offline

#4 2018-12-11 21:38:49

jakob
Admin
From: Germany
Registered: 2005-01-20
Posts: 5,204
Website GitHub

Re: Request for testers: PHP 7.3 compatibility

Cool! Nice to know. Thanks for testing that out.

MAMP doesn’t yet offer 7.3 but I’ll try it when it arrives. More often, it’s plugins that hiccup with new versions of php…


TXP Builders – finely-crafted code, design and txp

Offline

#5 2018-12-13 11:13:05

gaekwad
Server grease monkey
From: People's Republic of Cornwall
Registered: 2005-11-19
Posts: 4,733
GitHub

Re: Request for testers: PHP 7.3 compatibility

jakob wrote #315543:

More often, it’s plugins that hiccup with new versions of php…

Actually, yes – good point, well made. I haven’t managed to break core Textpattern on PHP 7.3, which is encouraging.

Offline

#6 2019-03-10 13:56:32

whocarez
Plugin Author
From: Germany/Ukraine
Registered: 2007-10-08
Posts: 305
Website GitHub Twitter

Re: Request for testers: PHP 7.3 compatibility

Updated from 4.6.2 to 4.7.3 and use now on two installations PHP version: 7.3.3-1+0~20190307202445.32+jessie~1.gbp32ebb2. For now without problems.


Textpattern version: 4.7.3 (c8bb3a17e536fc1f29cece6ec336c240)
Last update: 2019-03-10 13:10:12/2019-02-25 23:22:30
Textpattern path: __TXP-ROOT/textpattern
Article URL pattern: title_id
Production status: live
Temporary directory path: __TXP-ROOT/textpattern/tmp
PHP version: 7.3.3-1+0~20190307202445.32+jessie~1.gbp32ebb2
GD Graphics Library: 2.2.5; Supported formats: GIF, JPEG, PNG, WebP.
Server timezone: Europe/Berlin
Server local time: 2019-03-10 14:49:44
Daylight Saving Time enabled?: 0
Automatically adjust Daylight Saving Time setting?: 1
Time zone (GMT offset in seconds): Europe/Kiev (7200)
MySQL: 5.5.5-10.2.22-MariaDB-10.2.22+maria~jessie-log (mariadb.org binary distribution) 
Database server time: 2019-03-10 14:49:44
Database server time offset: 0 s
Database server timezone: SYSTEM
Database session timezone: SYSTEM
Locale: de_DE.UTF-8
Site / Admin language: de / de
Web server: nginx/1.14.2
PHP server API: fpm-fcgi
RFC 2616 headers: 0
Server OS: Linux 3.16.0-042stab134.8
Admin-side theme: hiveneutral 4.7.3
Active plugins: 
	adi_gps-0.4
	aks_article-0.3.2
	aks_cache-0.3d
	aks_header-0.4.1 (modified)
	arc_twitter-4.5.0
	chh_if_data-0.10 (modified)
	com_connect-4.6.0-beta.3
	css_rating-0.1b (modified)
	dzd_counter_view-0.2 (modified)
	etc_pagination-0.5.0
	fly_excerpt-1.01 (modified)
	ied_plugin_composer-1.2.1
	jnm_no_reset_time-0.1
	klp_word_count-0.2 (modified)
	mka_simplepie-0.8.0 (modified)
	mkp_if_amp-1.0
	pap_comconnect-0.1.2
	pap_xpoll-0.2b (modified)
	rah_custom_feed-0.2
	rah_function-0.7.1 (modified)
	rah_metas-1.5 (modified)
	rah_privileges-0.1.2
	rah_replace-0.4.2
	rah_runtime-0.4
	rah_sitemap-1.2
	rah_textile_bar-0.7
	rah_time-0.1
	s2l_bio-0.3
	smd_article_stats-0.30
	smd_gallery-0.62 (modified)
	smd_lib-0.37
	smd_pagicle-0.2
	smd_query-0.50
	the_video-0.8 (modified)
	tru_tags-3.9 (modified)
	upm_pending_notify-0.1.3
	wan_pdf-0.30 (modified)
	wcz_disqus-0.0.1b (modified)
	wcz_utf8_url-0.1.6 (modified)
	wdm_update_url-0.1
	wet_haystack-0.6
	wet_peex-1.0
	wet_quicklink-0.8.2 (modified)

Pre-flight check: 
------------------------

Some Textpattern files have been modified: 
	__TXP-ROOT/textpattern/include/txp_prefs.php, 
	__TXP-ROOT/textpattern/lib/txplib_misc.php, 
	__TXP-ROOT/textpattern/lib/txplib_publish.php, 
	__TXP-ROOT/textpattern/publish.php
------------------------

Charset (default/config): utf8/utf8mb4
character_set_client: utf8mb4
character_set_connection: utf8mb4
character_set_database: utf8mb4
character_set_filesystem: binary
character_set_results: utf8mb4
character_set_server: utf8
character_set_system: utf8
character_sets_dir: /usr/share/mysql/charsets/
collation_connection: utf8mb4_general_ci
collation_database: utf8mb4_unicode_ci
collation_server: utf8_general_ci
19 database tables: OK

10 custom fields: custom_1, custom_2, custom_3, custom_4, custom_5, custom_6, custom_7, custom_8, custom_9, custom_10 (10)
p. and the second one:

bc..
Textpattern version: 4.7.3 (7c46d1f4c8ac79e62a7d5e54a9ddac53)
Last update: 2019-03-09 21:05:46/2019-02-25 23:22:30
Textpattern path: __TXP-ROOT/textpattern
Article URL pattern: title_only
Production status: live
Temporary directory path: __TXP-ROOT/textpattern/tmp
PHP version: 7.3.3-1+0~20190307202445.32+jessie~1.gbp32ebb2
GD Graphics Library: 2.2.5; Supported formats: GIF, JPEG, PNG, WebP.
Server timezone: Europe/Berlin
Server local time: 2019-03-10 14:50:40
Daylight Saving Time enabled?: 0
Automatically adjust Daylight Saving Time setting?: 1
Time zone (GMT offset in seconds): Europe/Berlin (3600)
MySQL: 5.5.5-10.2.22-MariaDB-10.2.22+maria~jessie-log (mariadb.org binary distribution) 
Database server time: 2019-03-10 14:50:40
Database server time offset: 0 s
Database server timezone: SYSTEM
Database session timezone: SYSTEM
Locale: de_DE.UTF-8
Site / Admin language: de / de
Web server: nginx/1.14.2
PHP server API: fpm-fcgi
RFC 2616 headers: 0
Server OS: Linux 3.16.0-042stab134.8
Admin-side theme: hive 4.7.3
Active plugins: 
	aks_header-0.4.1 (modified)
	com_connect-4.6.0-beta.3
	pap_comconnect-0.1.2
	rah_metas-1.5 (modified)
	rah_repeat-1.0.1
	rah_replace-0.4
	rah_runtime-0.4 (modified)
	rah_sitemap-1.2
	rah_textile_bar-0.7
	rah_time-0.1 (modified)
	smd_gallery-0.62 (modified)
	smd_if-1.0.0 (modified)
	smd_lib-0.37
	wdm_update_url-0.1
	zem_cache-0.51 (modified)

Charset (default/config): utf8/utf8mb4
character_set_client: utf8mb4
character_set_connection: utf8mb4
character_set_database: utf8mb4
character_set_filesystem: binary
character_set_results: utf8mb4
character_set_server: utf8
character_set_system: utf8
character_sets_dir: /usr/share/mysql/charsets/
collation_connection: utf8mb4_general_ci
collation_database: utf8mb4_unicode_ci
collation_server: utf8_general_ci
18 database tables: OK

10 custom fields: custom_1, custom_2, custom_3, custom_4, custom_5, custom_6, custom_7, custom_8, custom_9, custom_10 (10)

Working now on the third one, but I expect only problems with plugins ….

Offline

#7 2019-03-10 15:21:30

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 12,456
Website GitHub

Re: Request for testers: PHP 7.3 compatibility

whocarez wrote #316962:

Some Textpattern files have been modified

Any reason for this in the first site? Anything we can do in core or any suggestions we can make so you don’t need to hack the files?

Good to know about the 7.3 compatibility though, thanks for the report.


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Hire Txp Builders – finely-crafted code, design and Txp

Online

#8 2019-03-10 15:34:31

whocarez
Plugin Author
From: Germany/Ukraine
Registered: 2007-10-08
Posts: 305
Website GitHub Twitter

Re: Request for testers: PHP 7.3 compatibility

That’s for my “title_id” permanent links mode … I’m to stupid and lazy to write a plugin, so I’m patching this site every time. Title before ID because of SEO – putting the keywords to the front – and ID is needed because of Google News. They want a unique article id of at least four digits, as far as I remember.
So I couldn’t use neither “id_title” nor “title_only” for this site.

Offline

#9 2019-03-10 15:51:22

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 12,456
Website GitHub

Re: Request for testers: PHP 7.3 compatibility

whocarez wrote #316969:

That’s for my “title_id” permanent links mode … I’m to stupid and lazy to write a plugin, so I’m patching this site every time.

Oh okay, no worries.

FWIW, we have plans to open up the permlink schemes in an upcoming version so hacking core or requiring a plugin may well be unnecessary one day.


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Hire Txp Builders – finely-crafted code, design and Txp

Online

#10 2019-03-11 01:59:30

neptho
Member
From: A cold, dark place.
Registered: 2006-02-01
Posts: 51

Re: Request for testers: PHP 7.3 compatibility

Hi.

I’d be happy to sponsor a testing area for TXP folks to play in; I have a dedicated 5420 (ancient Xeon) that I only pay about $1/day on, but I only have 10TB for each month. I might need 500MB, honestly.

If anyone core can stay within those means, I’ll be happy to set you up with a KVM (completely isolated virtual computer) with ssh and both IPv4 and IPv6 IP addresses.

Offline

#11 2019-11-06 15:24:47

hilaryaq
Plugin Author
Registered: 2006-08-20
Posts: 335
Website

Re: Request for testers: PHP 7.3 compatibility

Hi guys I have found an incompatibility with php 7.3 on a live site, it works with 7.2 with no issues. Upgrade to Txp 4.7.3 that I tested, errors below just removed the domain info, fatal error just gives error and white page:

Warning: Use of undefined constant MYSQLI_CLIENT_FOUND_ROWS – assumed ‘MYSQLI_CLIENT_FOUND_ROWS’ (this will throw an Error in a future version of PHP) in /home/user/public_html/textpattern/lib/txplib_db.php on line 194

Fatal error: Uncaught Error: Call to undefined function mysqli_init() in /home/user/public_html/textpattern/lib/txplib_db.php:201 Stack trace: #0 /home/user/public_html/textpattern/lib/txplib_db.php(245): DB->__construct() #1 /home/user/public_html/textpattern/publish.php(45): include_once(‘/home/user/…’) #2 /home/user/public_html/index.php(107): include(‘/home/user/…’) #3 {main} thrown in /home/user/public_html/textpattern/lib/txplib_db.php on line 201


…………………
I <3 txp
…………………

Offline

#12 2019-11-06 15:31:32

gaekwad
Server grease monkey
From: People's Republic of Cornwall
Registered: 2005-11-19
Posts: 4,733
GitHub

Re: Request for testers: PHP 7.3 compatibility

hilaryaq wrote #319953:

Fatal error: Uncaught Error: Call to undefined function mysqli_init() in

[…]

My money is on mysqli (required) being disabled / not present.

If you call phpinfo(), does mysqli show itself? Make a file called hilaryiscool.php, upload to site, view in browser:

<?php phpinfo(); ?>

Last edited by gaekwad (2019-11-06 15:33:27)

Offline

#13 2019-11-06 16:11:02

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 12,456
Website GitHub

Re: Request for testers: PHP 7.3 compatibility

First time I’ve heard of mysqli being disabled or missing, but as it’s an extension, there’s very little we can do in Txp (besides put defensive conditionals around every DB call in our library). But as it’s a required component for the CMS it seems overkill. No database driver = no database access = no website.

FWIW, even when we (eventually) move to PDO, that’s an extension as well, so there’s still a slim chance some hosting environments might not have it available.


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Hire Txp Builders – finely-crafted code, design and Txp

Online

#14 2019-11-06 16:52:43

hilaryaq
Plugin Author
Registered: 2006-08-20
Posts: 335
Website

Re: Request for testers: PHP 7.3 compatibility

gaekwad wrote #319954:

My money is on mysqli (required) being disabled / not present.

If you call phpinfo(), does mysqli show itself? Make a file called hilaryiscool.php, upload to site, view in browser:

<?php phpinfo(); ?>...

I’m cool yay! :D

Looks like it is there, details from info page below:

mysqli
MysqlI Support enabled
Client API library version mysqlnd 5.0.11-dev – 20120503 – $Id: 76b08b24596e12d4553bd41fc93cccd5bac2fe7a $
Active Persistent Links 0
Inactive Persistent Links 0
Active Links 0
Directive Local Value Master Value
mysqli.allow_local_infile On On
mysqli.allow_persistent On On
mysqli.default_host no value no value
mysqli.default_port 3306 3306
mysqli.default_pw no value no value
mysqli.default_socket /var/lib/mysql/mysql.sock /var/lib/mysql/mysql.sock
mysqli.default_user no value no value
mysqli.max_links Unlimited Unlimited
mysqli.max_persistent Unlimited Unlimited
mysqli.reconnect Off Off
mysqli.rollback_on_cached_plink Off Off


…………………
I <3 txp
…………………

Offline

#15 2019-11-06 17:04:47

hilaryaq
Plugin Author
Registered: 2006-08-20
Posts: 335
Website

Re: Request for testers: PHP 7.3 compatibility

No wait, I haven’t tested this but realised I’m an idiot as there’s a php.ini file in there that’s possibly misconfigured, I’ll report back.


…………………
I <3 txp
…………………

Offline

Board footer

Powered by FluxBB