Server: Wrong PHP 7.2 warning after upgrade to NC 20 beta 2

Created on 31 Aug 2020  ·  11Comments  ·  Source: nextcloud/server

How to use GitHub

  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Steps to reproduce

  1. Have php 7.2 installed
  2. (Try to) upgrade to NC 20 beta 2

Expected behaviour

If NC 20 does not support php 7.2 anymore, an upgrade should not be possible.
If NC 20 does still support php 7.2, the warning should either disappear or read "NC 21 requires at least php 7.3"

Actual behaviour

After successful upgrade, the settings page shows a warning "NC 19 is the last version which supports php 7.2, NC 20 requires at least php 7.3". This warning doesn't make sense and should be changed.
If necessary, I can also provide logs, but I don't think it is.
Related: https://github.com/nextcloud/server/issues/19341

I think, the warning should just be changed to account for the deprecation with NC 21.

Server configuration detail

Operating system: Linux 4.15.0 #1 SMP Tue Jun 9 12:58:54 MSK 2020 x86_64

Webserver: Apache/2.4.29 (Ubuntu) (apache2handler)

Database: mysql 10.1.44

PHP version:

7.2.24-0ubuntu0.18.04.6
Modules loaded: Core, date, libxml, openssl, pcre, zlib, filter, hash, Reflection, SPL, sodium, session, standard, apache2handler, mysqlnd, PDO, xml, apcu, apc, bcmath, calendar, ctype, curl, dom, mbstring, fileinfo, ftp, gd, gettext, gmp, iconv, imagick, intl, json, exif, mysqli, pdo_mysql, Phar, posix, readline, shmop, SimpleXML, sockets, sysvmsg, sysvsem, sysvshm, tokenizer, wddx, xmlreader, xmlwriter, xsl, zip, Zend OPcache

Nextcloud version: 20.0.0 Beta 2 - 20.0.0.4

Updated from an older Nextcloud/ownCloud or fresh install: updated

Where did you install Nextcloud from: zip package

Signing status

Array
(
[core] => Array
(
[INVALID_HASH] => Array
(
[core/js/mimetypelist.js] => Array
(
[expected] => 23a3fa45757b26795f5cf8f94d9e5bce76fc916288a6458679311b312c167adcf4158ccb2c5c3db791fa0b87703b6c5863afb6c9d790b8cbac5ab3ae8c3418fb
[current] => 248b1c46827f16075a92457d368b5f8c1c6d39c8dc8569e248b35443ac035501b86b8f46785cc6fb3f12fc8445284829c1e27aa82097a53d2688040b1de7da26
)

            )

    )

)

List of activated apps

Enabled:
 - accessibility: 1.6.0
 - activity: 2.13.1
 - cloud_federation_api: 1.3.0
 - cms_pico: 1.0.9
 - comments: 1.10.0
 - contactsinteraction: 1.1.0
 - dashboard: 7.0.0
 - dav: 1.16.0
 - deck: 1.0.5
 - event_update_notification: 1.1.0
 - external: 3.6.0
 - federatedfilesharing: 1.10.1
 - federation: 1.10.1
 - files: 1.15.0
 - files_pdfviewer: 2.0.O
 - files_rightclick: 0.17.0
 - files_sharing: 1.12.0
 - files_trashbin: 1.10.1
 - files_versions: 1.13.0
 - files_videoplayer: 1.9.0
 - firstrunwizard: 2.9.0
 - issuetemplate: 0.6.0
 - logreader: 2.5.0
 - lookup_server_connector: 1.8.0
 - mail: 1.4.1
 - nextcloud_announcements: 1.9.0
 - notes: 3.6.4
 - notifications: 2.8.0
 - oauth2: 1.8.0
 - password_policy: 1.10.1
 - photos: 1.2.0
 - privacy: 1.4.0
 - provisioning_api: 1.10.0
 - recommendations: 0.8.0
 - richdocuments: 3.7.3
 - richdocumentscode: 4.2.602
 - serverinfo: 1.10.0
 - settings: 1.2.0
 - sharebymail: 1.10.0
 - spreed: 10.0.0-beta.1
 - systemtags: 1.10.0
 - tasks: 0.13.3
 - text: 3.1.0
 - theming: 1.11.0
 - twofactor_backupcodes: 1.9.0
 - twofactor_totp: 5.0.0
 - updatenotification: 1.10.0
 - user_status: 0.0.2
 - viewer: 1.4.0
 - weather_status: 1.0.0
 - workflowengine: 2.2.0
Disabled:
 - admin_audit
 - announcementcenter
 - apporder
 - calendar
 - circles
 - contacts
 - drawio
 - encryption
 - files_automatedtagging
 - files_external
 - files_mindmap
 - forms
 - groupfolders
 - impersonate
 - polls
 - ransomware_protection
 - support
 - survey_client
 - user_ldap
 - user_usage_report
 - workflow_pdf_converter

Configuration (config/config.php)

{
    "instanceid": "***REMOVED SENSITIVE VALUE***",
    "passwordsalt": "***REMOVED SENSITIVE VALUE***",
    "secret": "***REMOVED SENSITIVE VALUE***",
    "trusted_domains": [
        "domain.xy"
    ],
    "datadirectory": "***REMOVED SENSITIVE VALUE***",
    "overwrite.cli.url": "https:\/\/domain.xy",
    "htaccess.RewriteBase": "\/",
    "dbtype": "mysql",
    "version": "20.0.0.4",
    "dbname": "***REMOVED SENSITIVE VALUE***",
    "dbhost": "***REMOVED SENSITIVE VALUE***",
    "dbport": "",
    "dbtableprefix": "oc_",
    "dbuser": "***REMOVED SENSITIVE VALUE***",
    "dbpassword": "***REMOVED SENSITIVE VALUE***",
    "installed": true,
    "memcache.local": "\\OC\\Memcache\\APCu",
    "mail_smtpmode": "sendmail",
    "mail_smtpauthtype": "LOGIN",
    "mail_from_address": "***REMOVED SENSITIVE VALUE***",
    "mail_domain": "***REMOVED SENSITIVE VALUE***",
    "default_language": "de",
    "default_locale": "de_DE",
    "logtimezone": "Europe\/Berlin",
    "theme": "",
    "loglevel": 2,
    "updater.release.channel": "beta",
    "skeletondirectory": "\/var\/www\/default-files",
    "maintenance": false,
    "mysql.utf8mb4": true,
    "data-fingerprint": "01ab1f439dc59f5b900a4be407aad640",
    "activity_use_cached_mountpoints": "true",
    "app_install_overwrite": [
        "external",
        "issuetemplate"
    ]
}

Are you using external storage, if yes which one: no

Are you using encryption: false

Are you using an external user-backend, if yes which one: no

Client configuration

Browser: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:79.0) Gecko/20100101 Firefox/79.0

Operating system:

Logs

Web server error log

Insert your web server log here 

Nextcloud log

Insert your Nextcloud log here

Browser log

Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log
c) ...

0. Needs triage 20-feedback bug

Most helpful comment

so yeah 20 will still run on php7.2 Basically we say you can run it as long as it is support when it is released.
So yeah maybe we change the warning to 21.
But still urge people to upgrade.

Let's change the warning and then we are good to fully drop it with 21.

All 11 comments

cc @rullzer @MorrisJobke @ChristophWurst

If I'm not mistaken, this info is from the updater server. We might send out the wrong info.

Ah no, my bad. So we require 7.2 but the warning is indeed in this code base. Let me dig it up …

Ref https://github.com/nextcloud/updater_server/blob/3a4014ab0ec9b87ee68a3678b91f9a803d4c0619/config/config.php#L418 for the updater

I can't find the code, but I'm pretty sure I remember that we added this check/warning. @MorrisJobke?

If NC 20 does not support php 7.2 anymore, an upgrade should not be possible.

I'm not sure what is not working on PHP 7.2, but according to the version check it is still not excluded:

https://github.com/nextcloud/server/blob/master/lib/versioncheck.php#L28

The warning was added in https://github.com/nextcloud/server/pull/19580.

If NC 20 does still support php 7.2, the warning should either disappear or read "NC 21 requires at least php 7.3"

As we are quite late in the release cycle I would say that we change it to "20 is the last that supports PHP 7.2 and 21 will be 7.3 and higher"

Opinions @kesselb @nickvergessen @rullzer @nickvergessen ?

Your plan is to release Nextcloud 20 at 2020-10-03 (https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule).
The security support for PHP 7.2 ends at 2020-11-30 (https://www.php.net/supported-versions).

Is there a good reason to keep support for PHP 7.2? It's (at least on Debian/Ubuntu) super easy to php7.2 and php7.3 in parallel. Also most hosting providers support it nowdays.

I would say bump the versioncheck.php and close this issue.

Is there a good reason to keep support for PHP 7.2? It's (at least on Debian/Ubuntu) super easy to php7.2 and php7.3 in parallel. Also most hosting providers support it nowdays.

There are potentially quite some beta installations out there that are on 7.2. But the updater server could reflect that. Let me think about it.

Just looking at the updater server: 1 % of the NC 17-20 instances are on PHP 7.1 and 21 % are on PHP 7.2. 6 % are on 19 and on PHP 7.2 (those are the directly affected ones). If we go for the 7.3 bump then we should backport #19580 to 19 as well to show it early. We can show also a warning via the updater server, but better show it earlier than when the update to 20 is planned.

19580 is 19 already.

so yeah 20 will still run on php7.2 Basically we say you can run it as long as it is support when it is released.
So yeah maybe we change the warning to 21.
But still urge people to upgrade.

so yeah 20 will still run on php7.2 Basically we say you can run it as long as it is support when it is released.
So yeah maybe we change the warning to 21.
But still urge people to upgrade.

Let's change the warning and then we are good to fully drop it with 21.

Was this page helpful?
0 / 5 - 0 ratings