Project

General

Profile

Actions

Bug #13589

closed

pfSense - Feature #13446: Upgrade PHP from 7.4 to 8.1

PHP Errors during cellular package installation on CE 2.7

Added by Kris Phillips about 2 years ago. Updated almost 2 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Cellular
Target version:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Plus Target Version:
Affected Version:
2.7.x
Affected Plus Version:
Affected Architecture:
All

Description

Full install log:

Installing pfSense-pkg-cellular...

Updating pfSense-core repository catalogue...
pfSense-core repository is up to date.
Updating pfSense repository catalogue...
pfSense repository is up to date.
All repositories are up to date.
The following 3 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
pfSense-pkg-cellular: 1.2.3_2 [pfSense]
py39-pyserial: 3.5_2 [pfSense]
py39-setuptools: 63.1.0 [pfSense]

Number of packages to be installed: 3

The process will require 9 MiB more space.
1 MiB to be downloaded.
[1/3] Fetching pfSense-pkg-cellular-1.2.3_2.pkg: ... done
[2/3] Fetching py39-pyserial-3.5_2.pkg: .......... done
[3/3] Fetching py39-setuptools-63.1.0.pkg: .......... done
Checking integrity... done (0 conflicting)
[1/3] Installing py39-setuptools-63.1.0...
[1/3] Extracting py39-setuptools-63.1.0: .......... done
[2/3] Installing py39-pyserial-3.5_2...
[2/3] Extracting py39-pyserial-3.5_2: .......... done
[3/3] Installing pfSense-pkg-cellular-1.2.3_2...
[3/3] Extracting pfSense-pkg-cellular-1.2.3_2: ......... done
Saving updated package information...
done.
Loading package configuration... done.
Configuring package components...
Loading package instructions...
Custom commands...
Executing custom_php_global_functions()...
Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, string given in /usr/local/pkg/cellular.inc:151
Stack trace:
#0 /etc/inc/pkg-utils.inc(779) : eval()'d code(1): cellular_before_everything()
#1 /etc/inc/pkg-utils.inc(779): eval()
#2 /etc/inc/pkg-utils.inc(891): eval_once('cellular_before...')
#3 /etc/rc.packages(76): install_package_xml('cellular')
#4 {main}
thrown in /usr/local/pkg/cellular.inc on line 151
PHP ERROR: Type: 1, File: /usr/local/pkg/cellular.inc, Line: 151, Message: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, string given in /usr/local/pkg/cellular.inc:151
Stack trace:
#0 /etc/inc/pkg-utils.inc(779) : eval()'d code(1): cellular_before_everything()
#1 /etc/inc/pkg-utils.inc(779): eval()
#2 /etc/inc/pkg-utils.inc(891): eval_once('cellular_before...')
#3 /etc/rc.packages(76): install_package_xml('cellular')
#4 {main}
thrownpkg-static: POST-INSTALL script failed

Cleaning up cache... done.

Success

Actions #1

Updated by Kris Phillips about 2 years ago

Full crash report:

Crash report begins. Anonymous machine information:

amd64
14.0-CURRENT
FreeBSD 14.0-CURRENT #0 devel-main-n255802-8d2600d5897c: Fri Oct 21 06:29:29 UTC 2022 root@freebsd:/var/jenkins/workspace/pfSense-CE-snapshots-master-main/obj/amd64/Q7bZCsJY/var/jenkins/workspace/pfSense-CE-snapshots-master-main/sources/FreeBSD-src-de

Crash report details:

PHP Errors:
[22-Oct-2022 19:47:01 Etc/UTC] PHP Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, string given in /usr/local/pkg/cellular.inc:151
Stack trace:
#0 /etc/inc/pkg-utils.inc(779) : eval()'d code(1): cellular_before_everything()
#1 /etc/inc/pkg-utils.inc(779): eval()
#2 /etc/inc/pkg-utils.inc(891): eval_once('cellular_before...')
#3 /etc/rc.packages(76): install_package_xml('cellular')
#4 {main}
thrown in /usr/local/pkg/cellular.inc on line 151
[22-Oct-2022 19:48:11 Etc/UTC] PHP Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, string given in /usr/local/pkg/cellular.inc:151
Stack trace:
#0 /etc/inc/pkg-utils.inc(779) : eval()'d code(1): cellular_before_everything()
#1 /etc/inc/pkg-utils.inc(779): eval()
#2 /etc/inc/pkg-utils.inc(1088): eval_once('cellular_before...')
#3 /etc/rc.packages(80): delete_package_xml('cellular', 'deinstall')
#4 {main}
thrown in /usr/local/pkg/cellular.inc on line 151

No FreeBSD crash data found.

Actions #2

Updated by aleksei prokofiev about 2 years ago

Yes, I can confirm such bug on 2.7 CE

Actions #3

Updated by Danilo Zrenjanin about 2 years ago

  • Status changed from New to Confirmed
Actions #4

Updated by Jim Pingle about 2 years ago

  • Parent task set to #13446
Actions #5

Updated by Kris Phillips about 2 years ago

This issue is still present in Nov 18th builds.

Actions #6

Updated by Jim Pingle almost 2 years ago

  • Status changed from Confirmed to In Progress
  • Assignee set to Jim Pingle
Actions #7

Updated by Jim Pingle almost 2 years ago

  • Status changed from In Progress to Feedback

Fix committed, it will be in snapshots tomorrow to test. Since the package couldn't even install I tested bits of the code separately but we won't know for sure if it's in a good state until there is a new package build to test.

https://github.com/pfsense/FreeBSD-ports/commit/056eabb6ba70408a576dabcc6a8a5950f6d0e8b6

Actions #8

Updated by Jim Pingle almost 2 years ago

  • Status changed from Feedback to Resolved
  • % Done changed from 0 to 100

Package installs and deinstalls without error. Visting the GUI page and using the widget also do not produce any errors. That said, I don't have an actual cellular modem to test beyond that part.

Closing it since the original complaint is resolved, if there are other functional issues they can go in a fresh issue with more specific details.

Actions

Also available in: Atom PDF