1
0
mirror of https://github.com/nicoverbruggen/phpmon.git synced 2025-11-07 05:10:06 +01:00

⬆️ Modernize test suite files

This commit is contained in:
2025-09-25 17:05:32 +02:00
parent 0afbf0ddd4
commit 3d403f5ef6
5 changed files with 733 additions and 431 deletions

View File

@@ -111,7 +111,13 @@ class PhpEnvironments {
It's possible for the alias to be newer than the actual installed version of PHP. It's possible for the alias to be newer than the actual installed version of PHP.
*/ */
static var homebrewBrewPhpAlias: String { static var homebrewBrewPhpAlias: String {
if PhpEnvironments.shared.homebrewPackage == nil { return "8.2" } if PhpEnvironments.shared.homebrewPackage == nil {
// For UI testing and as a fallback, determine this version by using (fake) php-config
let version = Command.execute(path: "/opt/homebrew/bin/php-config",
arguments: ["--version"],
trimNewlines: true)
return try! VersionNumber.parse(version).short
}
return PhpEnvironments.shared.homebrewPackage.version return PhpEnvironments.shared.homebrewPackage.version
} }

View File

@@ -52,17 +52,16 @@ class TestableConfigurations {
shellOutput: [ shellOutput: [
"/opt/homebrew/bin/brew --version" "/opt/homebrew/bin/brew --version"
: .instant(""" : .instant("""
Homebrew 4.0.17-93-gb0dc84b Homebrew 4.6.11
Homebrew/homebrew-core (git revision 4113c35d80d; last commit 2023-04-06)
Homebrew/homebrew-cask (git revision bcd8ecb74c; last commit 2023-04-06)
"""), """),
"/opt/homebrew/bin/php -v" "/opt/homebrew/bin/php -v"
: .instant(""" : .instant("""
PHP 8.2.6 (cli) (built: May 11 2023 12:51:38) (NTS) PHP 8.4.5 (cli) (built: Aug 26 2025 13:36:28) (NTS)
Copyright (c) The PHP Group Copyright (c) The PHP Group
Zend Engine v4.2.6, Copyright (c) Zend Technologies Built by Homebrew
with Zend OPcache v8.2.6, Copyright (c), by Zend Technologies Zend Engine v4.4.12, Copyright (c) Zend Technologies
with Xdebug v3.2.0, Copyright (c) 2002-2022, by Derick Rethans with Xdebug v3.4.5, Copyright (c) 2002-2025, by Derick Rethans
with Zend OPcache v8.4.12, Copyright (c), by Zend Technologies
"""), """),
"sysctl -n sysctl.proc_translated" "sysctl -n sysctl.proc_translated"
: .instant("0"), : .instant("0"),
@@ -105,7 +104,7 @@ class TestableConfigurations {
%admin ALL=(root) NOPASSWD:SETENV: VALET %admin ALL=(root) NOPASSWD:SETENV: VALET
"""), """),
"valet --version" "valet --version"
: .instant("Laravel Valet 3.1.11"), : .instant("Laravel Valet 4.9.0"),
"/opt/homebrew/bin/brew tap" "/opt/homebrew/bin/brew tap"
: .instant(""" : .instant("""
homebrew/cask homebrew/cask
@@ -150,7 +149,7 @@ class TestableConfigurations {
cask 'phpmon-dev' do cask 'phpmon-dev' do
depends_on formula: 'gnu-sed' depends_on formula: 'gnu-sed'
version '6.0.0_1000' version '25.08.0_1000'
sha256 '1cb147bd1b1fbd52971d90dff577465b644aee7c878f15ede57f46e8f217067a' sha256 '1cb147bd1b1fbd52971d90dff577465b644aee7c878f15ede57f46e8f217067a'
url 'https://github.com/nicoverbruggen/phpmon/releases/download/v6.0/phpmon-dev.zip' url 'https://github.com/nicoverbruggen/phpmon/releases/download/v6.0/phpmon-dev.zip'
@@ -178,10 +177,6 @@ class TestableConfigurations {
: .delayed(0.2, "OK"), : .delayed(0.2, "OK"),
"sudo /opt/homebrew/bin/brew services start dnsmasq" "sudo /opt/homebrew/bin/brew services start dnsmasq"
: .delayed(0.2, "OK"), : .delayed(0.2, "OK"),
"ln -sF ~/.config/valet/valet82.sock ~/.config/valet/valet.sock"
: .instant("OK"),
"ln -sF ~/.config/valet/valet83.sock ~/.config/valet/valet.sock"
: .instant("OK"),
"ln -sF ~/.config/valet/valet84.sock ~/.config/valet/valet.sock" "ln -sF ~/.config/valet/valet84.sock ~/.config/valet/valet.sock"
: .instant("OK"), : .instant("OK"),
"/opt/homebrew/bin/brew update >/dev/null && /opt/homebrew/bin/brew outdated --json --formulae": .delayed(2.0, """ "/opt/homebrew/bin/brew update >/dev/null && /opt/homebrew/bin/brew outdated --json --formulae": .delayed(2.0, """
@@ -190,9 +185,9 @@ class TestableConfigurations {
{ {
"name": "php", "name": "php",
"installed_versions": [ "installed_versions": [
"8.2.6" "8.4.5"
], ],
"current_version": "8.2.11", "current_version": "8.4.11",
"pinned": false, "pinned": false,
"pinned_version": null "pinned_version": null
} }

View File

@@ -18,11 +18,12 @@ final class MainMenuTest: UITestCase {
let app = launch(openMenu: true) let app = launch(openMenu: true)
assertAllExist([ assertAllExist([
// "Switch to PHP 8.2 (php)" should be visible since it is aliased to `php` // "Switch to PHP 8.4 (php)" should be visible since it is aliased to `php`
app.menuItems["\("mi_php_switch".localized) 8.2 (php)"], app.menuItems["\("mi_php_switch".localized) 8.4 (php)"],
// "Switch to PHP 8.1" should be the non-disabled option // "Switch to PHP 8.1" should be the non-disabled option
app.menuItems["\("mi_php_switch".localized) 8.3 (php@8.3)"],
app.menuItems["\("mi_php_switch".localized) 8.2 (php@8.2)"],
app.menuItems["\("mi_php_switch".localized) 8.1 (php@8.1)"], app.menuItems["\("mi_php_switch".localized) 8.1 (php@8.1)"],
// "Switch to PHP 8.0" should be the non-disabled option
app.menuItems["\("mi_php_switch".localized) 8.0 (php@8.0)"], app.menuItems["\("mi_php_switch".localized) 8.0 (php@8.0)"],
// We should see the about and quit items // We should see the about and quit items
app.menuItems["mi_about".localized], app.menuItems["mi_about".localized],

View File

@@ -24,9 +24,9 @@ class HomebrewPackageTest: XCTestCase {
).first! ).first!
XCTAssertEqual(package.full_name, "php") XCTAssertEqual(package.full_name, "php")
XCTAssertEqual(package.aliases.first!, "php@8.2") XCTAssertEqual(package.aliases.first!, "php@8.4")
XCTAssertEqual(package.installed.contains(where: { installed in XCTAssertEqual(package.installed.contains(where: { installed in
installed.version.starts(with: "8.2") installed.version.starts(with: "8.4")
}), true) }), true)
} }

View File

@@ -1,123 +1,120 @@
[ [
{ {
"name": "php",
"full_name": "php", "full_name": "php",
"tap": "homebrew/core", "tap": "homebrew/core",
"oldname": null, "oldnames": [],
"aliases": [ "aliases": [
"php@8.2" "php@8.4"
], ],
"versioned_formulae": [ "versioned_formulae": [
"php@8.1", "php@8.3",
"php@8.0", "php@8.2",
"php@7.4" "php@8.1"
], ],
"desc": "General-purpose scripting language", "desc": "General-purpose scripting language",
"license": "PHP-3.01", "license": "PHP-3.01",
"homepage": "https://www.php.net/", "homepage": "https://www.php.net/",
"versions": { "versions": {
"stable": "8.2.2", "stable": "8.4.12",
"head": "HEAD", "head": "HEAD",
"bottle": true "bottle": true
}, },
"urls": { "urls": {
"stable": { "stable": {
"url": "https://www.php.net/distributions/php-8.2.2.tar.xz", "url": "https://www.php.net/distributions/php-8.4.12.tar.xz",
"tag": null, "tag": null,
"revision": null, "revision": null,
"checksum": "bdc4aa38e652bac86039601840bae01c0c3653972eaa6f9f93d5f71953a7ee33" "using": null,
"checksum": "c1b7978cbb5054eed6c749bde4444afc16a3f2268101fb70a7d5d9b1083b12ad"
}, },
"head": { "head": {
"url": "https://github.com/php/php-src.git", "url": "https://github.com/php/php-src.git",
"branch": "master" "branch": "master",
"using": null
} }
}, },
"revision": 0, "revision": 0,
"version_scheme": 0, "version_scheme": 0,
"autobump": true,
"no_autobump_message": null,
"skip_livecheck": false,
"bottle": { "bottle": {
"stable": { "stable": {
"rebuild": 0, "rebuild": 2,
"root_url": "https://ghcr.io/v2/homebrew/core", "root_url": "https://ghcr.io/v2/homebrew/core",
"files": { "files": {
"arm64_ventura": { "arm64_tahoe": {
"cellar": "/opt/homebrew/Cellar", "cellar": "/opt/homebrew/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:ad2e6a6f1cdc65c22b39bd607cbb7305958951cf58ee87d5060717be5a8b5a45", "url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:e40592e2731a866feb2b91f16d094e9c9cf605db90035762a2ee367316bc5403",
"sha256": "ad2e6a6f1cdc65c22b39bd607cbb7305958951cf58ee87d5060717be5a8b5a45" "sha256": "e40592e2731a866feb2b91f16d094e9c9cf605db90035762a2ee367316bc5403"
}, },
"arm64_monterey": { "arm64_sequoia": {
"cellar": "/opt/homebrew/Cellar", "cellar": "/opt/homebrew/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:27069c973e63f38a3cb4fad1c7a2e17853bcffe318c8a957ff96a1026dff0cac", "url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:8a2728015733295d45652fd123c902301a617f5e5fc138daca5f873f58fbc6ae",
"sha256": "27069c973e63f38a3cb4fad1c7a2e17853bcffe318c8a957ff96a1026dff0cac" "sha256": "8a2728015733295d45652fd123c902301a617f5e5fc138daca5f873f58fbc6ae"
}, },
"arm64_big_sur": { "arm64_sonoma": {
"cellar": "/opt/homebrew/Cellar", "cellar": "/opt/homebrew/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:ceef280bcd57e5f794ae59cc75e83d407c9704aa3d238b282bda52cbc644d0dd", "url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:db9c8789e22f0b191805554eaf9a2a77f84e69a9cae6cd1764b6144f4e8bbcd0",
"sha256": "ceef280bcd57e5f794ae59cc75e83d407c9704aa3d238b282bda52cbc644d0dd" "sha256": "db9c8789e22f0b191805554eaf9a2a77f84e69a9cae6cd1764b6144f4e8bbcd0"
}, },
"ventura": { "sonoma": {
"cellar": "/usr/local/Cellar", "cellar": "/usr/local/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:22f733b7b0b0ed95cd6b0a1534b9eca4cf63fe54647394c3f7e7ac019eb019ff", "url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:c3c3cfade78d29299f78825a66691f8583380cea416a3f7aa35f0abf9e8574da",
"sha256": "22f733b7b0b0ed95cd6b0a1534b9eca4cf63fe54647394c3f7e7ac019eb019ff" "sha256": "c3c3cfade78d29299f78825a66691f8583380cea416a3f7aa35f0abf9e8574da"
}, },
"monterey": { "arm64_linux": {
"cellar": "/usr/local/Cellar", "cellar": "/home/linuxbrew/.linuxbrew/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:9ff8f5e1df5e849567cdb2ddea6d3c2a2b9cae024842c9ac65b35a01657bfc37", "url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:ccf76dc0da52b6d72e19bbcff284628cea4c36508eaff4aa8ff614d3749686a4",
"sha256": "9ff8f5e1df5e849567cdb2ddea6d3c2a2b9cae024842c9ac65b35a01657bfc37" "sha256": "ccf76dc0da52b6d72e19bbcff284628cea4c36508eaff4aa8ff614d3749686a4"
},
"big_sur": {
"cellar": "/usr/local/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:11fd1ea6da8ef728b7cacd4da8a51ed125069595abf4e37ae1552d418560c5fb",
"sha256": "11fd1ea6da8ef728b7cacd4da8a51ed125069595abf4e37ae1552d418560c5fb"
}, },
"x86_64_linux": { "x86_64_linux": {
"cellar": "/home/linuxbrew/.linuxbrew/Cellar", "cellar": "/home/linuxbrew/.linuxbrew/Cellar",
"url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:baaa41e60f9e8125fe8f549d4813a8476a8947a1f10d7817a2ee36d8baa625f3", "url": "https://ghcr.io/v2/homebrew/core/php/blobs/sha256:56a6b123525c3ff49a58b05d05c9e8da50cb349973f048dc1d8963f64a042bfa",
"sha256": "baaa41e60f9e8125fe8f549d4813a8476a8947a1f10d7817a2ee36d8baa625f3" "sha256": "56a6b123525c3ff49a58b05d05c9e8da50cb349973f048dc1d8963f64a042bfa"
} }
} }
} }
}, },
"pour_bottle_only_if": null,
"keg_only": false, "keg_only": false,
"keg_only_reason": null, "keg_only_reason": null,
"options": [ "options": [],
],
"build_dependencies": [ "build_dependencies": [
"httpd", "httpd",
"pkg-config" "pkgconf"
], ],
"dependencies": [ "dependencies": [
"apr", "apr",
"apr-util", "apr-util",
"argon2", "argon2",
"aspell",
"autoconf", "autoconf",
"curl", "curl",
"freetds", "freetds",
"gd", "gd",
"gettext", "gettext",
"gmp", "gmp",
"icu4c", "icu4c@77",
"krb5", "krb5",
"libpq", "libpq",
"libsodium", "libsodium",
"libzip", "libzip",
"net-snmp",
"oniguruma", "oniguruma",
"openldap", "openldap",
"openssl@1.1", "openssl@3",
"pcre2", "pcre2",
"sqlite", "sqlite",
"tidy-html5", "tidy-html5",
"unixodbc" "unixodbc",
"gcc"
], ],
"test_dependencies": [ "test_dependencies": [
"httpd" "httpd"
], ],
"recommended_dependencies": [ "recommended_dependencies": [],
"optional_dependencies": [],
],
"optional_dependencies": [
],
"uses_from_macos": [ "uses_from_macos": [
{ {
"xz": "build" "xz": "build"
@@ -129,288 +126,591 @@
"libxslt", "libxslt",
"zlib" "zlib"
], ],
"requirements": [ "uses_from_macos_bounds": [
{},
{},
{},
{
"since": "catalina"
},
{},
{},
{}
], ],
"conflicts_with": [ "requirements": [],
"conflicts_with": [],
], "conflicts_with_reasons": [],
"caveats": "To enable PHP in Apache add the following to httpd.conf and restart Apache:\n LoadModule php_module $(brew --prefix)/opt/php/lib/httpd/modules/libphp.so\n\n <FilesMatch \\.php$>\n SetHandler application/x-httpd-php\n </FilesMatch>\n\nFinally, check DirectoryIndex includes index.php\n DirectoryIndex index.php index.html\n\nThe php.ini and php-fpm.ini file can be found in:\n $(brew --prefix)/etc/php/8.2/\n", "link_overwrite": [],
"caveats": "To enable PHP in Apache add the following to httpd.conf and restart Apache:\n LoadModule php_module $HOMEBREW_PREFIX/opt/php/lib/httpd/modules/libphp.so\n\n <FilesMatch \\.php$>\n SetHandler application/x-httpd-php\n </FilesMatch>\n\nFinally, check DirectoryIndex includes index.php\n DirectoryIndex index.php index.html\n\nThe php.ini and php-fpm.ini file can be found in:\n $HOMEBREW_PREFIX/etc/php/8.4/\n",
"installed": [ "installed": [
{ {
"version": "8.2.2", "version": "8.4.5",
"used_options": [ "used_options": [],
"built_as_bottle": false,
], "poured_from_bottle": false,
"time": null,
"runtime_dependencies": null,
"installed_as_dependency": false,
"installed_on_request": false
},
{
"version": "8.4.12",
"used_options": [],
"built_as_bottle": true, "built_as_bottle": true,
"poured_from_bottle": true, "poured_from_bottle": true,
"time": 1675654665, "time": 1758463084,
"runtime_dependencies": [ "runtime_dependencies": [
{ {
"full_name": "apr", "full_name": "apr",
"version": "1.7.2", "version": "1.7.6",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.7.6",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "ca-certificates", "full_name": "ca-certificates",
"version": "2023-01-10", "version": "2025-09-09",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "2025-09-09",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "openssl@1.1", "full_name": "openssl@3",
"version": "1.1.1s", "version": "3.5.2",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "3.5.2",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "apr-util", "full_name": "apr-util",
"version": "1.6.3", "version": "1.6.3",
"revision": 1,
"bottle_rebuild": 0,
"pkg_version": "1.6.3_1",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "argon2", "full_name": "argon2",
"version": "20190702", "version": "20190702",
"declared_directly": true "revision": 1,
}, "bottle_rebuild": 0,
{ "pkg_version": "20190702_1",
"full_name": "aspell",
"version": "0.60.8",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "m4", "full_name": "m4",
"version": "1.4.19", "version": "1.4.20",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.4.20",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "autoconf", "full_name": "autoconf",
"version": "2.71", "version": "2.72",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "2.72",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "brotli", "full_name": "brotli",
"version": "1.0.9", "version": "1.1.0",
"declared_directly": false "revision": 0,
}, "bottle_rebuild": 2,
{ "pkg_version": "1.1.0",
"full_name": "libunistring",
"version": "1.1",
"declared_directly": false
},
{
"full_name": "gettext",
"version": "0.21.1",
"declared_directly": true
},
{
"full_name": "libidn2",
"version": "2.3.4",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "libnghttp2", "full_name": "libnghttp2",
"version": "1.51.0", "version": "1.67.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.67.1",
"declared_directly": false
},
{
"full_name": "libnghttp3",
"version": "1.11.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.11.0",
"declared_directly": false
},
{
"full_name": "libngtcp2",
"version": "1.15.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.15.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "libssh2", "full_name": "libssh2",
"version": "1.10.0", "version": "1.11.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.11.1",
"declared_directly": false "declared_directly": false
}, },
{
"full_name": "openldap",
"version": "2.6.3",
"declared_directly": true
},
{ {
"full_name": "rtmpdump", "full_name": "rtmpdump",
"version": "2.4+20151223", "version": "2.4-20151223",
"revision": 3,
"bottle_rebuild": 0,
"pkg_version": "2.4-20151223_3",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "lz4", "full_name": "lz4",
"version": "1.9.4", "version": "1.10.0",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "1.10.0",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "xz", "full_name": "xz",
"version": "5.4.1", "version": "5.8.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "5.8.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "zstd", "full_name": "zstd",
"version": "1.5.2", "version": "1.5.7",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "1.5.7",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "curl", "full_name": "curl",
"version": "7.87.0", "version": "8.16.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "8.16.0",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "libtool", "full_name": "libtool",
"version": "2.4.7", "version": "2.5.4",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "2.5.4",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "unixodbc", "full_name": "unixodbc",
"version": "2.3.11", "version": "2.3.12",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "2.3.12",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "freetds", "full_name": "freetds",
"version": "1.3.17", "version": "1.5.6",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.5.6",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "libpng", "full_name": "libpng",
"version": "1.6.39", "version": "1.6.50",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.6.50",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "freetype", "full_name": "freetype",
"version": "2.12.1", "version": "2.14.1",
"revision": 1,
"bottle_rebuild": 0,
"pkg_version": "2.14.1_1",
"declared_directly": false "declared_directly": false
}, },
{
"full_name": "libunistring",
"version": "1.3",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "1.3",
"declared_directly": false
},
{
"full_name": "gettext",
"version": "0.26",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "0.26",
"declared_directly": true
},
{ {
"full_name": "fontconfig", "full_name": "fontconfig",
"version": "2.14.2", "version": "2.17.1",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "2.17.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "jpeg-turbo", "full_name": "jpeg-turbo",
"version": "2.1.5", "version": "3.1.2",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "3.1.2",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "giflib", "full_name": "giflib",
"version": "5.2.1", "version": "5.2.2",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "5.2.2",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "highway", "full_name": "highway",
"version": "1.0.3", "version": "1.3.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.3.0",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "imath", "full_name": "imath",
"version": "3.1.6", "version": "3.2.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "3.2.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "libtiff", "full_name": "libtiff",
"version": "4.4.0", "version": "4.7.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "4.7.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "little-cms2", "full_name": "little-cms2",
"version": "2.14", "version": "2.17",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "2.17",
"declared_directly": false
},
{
"full_name": "libdeflate",
"version": "1.24",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.24",
"declared_directly": false
},
{
"full_name": "openjph",
"version": "0.23.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "0.23.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "openexr", "full_name": "openexr",
"version": "3.1.5", "version": "3.4.0",
"revision": 1,
"bottle_rebuild": 0,
"pkg_version": "3.4.0_1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "webp", "full_name": "webp",
"version": "1.3.0", "version": "1.6.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.6.0",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "jpeg-xl", "full_name": "jpeg-xl",
"version": "0.8.1", "version": "0.11.1",
"revision": 3,
"bottle_rebuild": 0,
"pkg_version": "0.11.1_3",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "libvmaf", "full_name": "libvmaf",
"version": "2.3.1", "version": "3.0.0",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "3.0.0",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "aom", "full_name": "aom",
"version": "3.5.0", "version": "3.13.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "3.13.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "libavif", "full_name": "libavif",
"version": "0.11.1", "version": "1.3.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.3.0",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "gd", "full_name": "gd",
"version": "2.3.3", "version": "2.3.3",
"revision": 6,
"bottle_rebuild": 0,
"pkg_version": "2.3.3_6",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "gmp", "full_name": "gmp",
"version": "6.2.1", "version": "6.3.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "6.3.0",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "icu4c", "full_name": "icu4c@77",
"version": "72.1", "version": "77.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "77.1",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "krb5", "full_name": "krb5",
"version": "1.20.1", "version": "1.22.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.22.1",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "libpq", "full_name": "libpq",
"version": "15.1", "version": "17.6",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "17.6",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "libsodium", "full_name": "libsodium",
"version": "1.0.18", "version": "1.0.20",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.0.20",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "libzip", "full_name": "libzip",
"version": "1.9.2", "version": "1.11.4",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.11.4",
"declared_directly": true
},
{
"full_name": "net-snmp",
"version": "5.9.4",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "5.9.4",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "oniguruma", "full_name": "oniguruma",
"version": "6.9.8", "version": "6.9.10",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "6.9.10",
"declared_directly": true
},
{
"full_name": "openldap",
"version": "2.6.10",
"revision": 1,
"bottle_rebuild": 1,
"pkg_version": "2.6.10_1",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "pcre2", "full_name": "pcre2",
"version": "10.42", "version": "10.46",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "10.46",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "readline", "full_name": "readline",
"version": "8.2.1", "version": "8.3.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "8.3.1",
"declared_directly": false "declared_directly": false
}, },
{ {
"full_name": "sqlite", "full_name": "sqlite",
"version": "3.40.1", "version": "3.50.4",
"revision": 0,
"bottle_rebuild": 1,
"pkg_version": "3.50.4",
"declared_directly": true "declared_directly": true
}, },
{ {
"full_name": "tidy-html5", "full_name": "tidy-html5",
"version": "5.8.0", "version": "5.8.0",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "5.8.0",
"declared_directly": true
},
{
"full_name": "isl",
"version": "0.27",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "0.27",
"declared_directly": false
},
{
"full_name": "mpfr",
"version": "4.2.2",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "4.2.2",
"declared_directly": false
},
{
"full_name": "libmpc",
"version": "1.3.1",
"revision": 0,
"bottle_rebuild": 0,
"pkg_version": "1.3.1",
"declared_directly": false
},
{
"full_name": "gcc",
"version": "15.1.0",
"revision": 0,
"bottle_rebuild": 2,
"pkg_version": "15.1.0",
"declared_directly": true "declared_directly": true
} }
], ],
"installed_as_dependency": false, "installed_as_dependency": true,
"installed_on_request": true "installed_on_request": true
} }
], ],
"linked_keg": "8.2.2", "linked_keg": "8.4.12",
"pinned": false, "pinned": false,
"outdated": false, "outdated": false,
"deprecated": false, "deprecated": false,
"deprecation_date": null, "deprecation_date": null,
"deprecation_reason": null, "deprecation_reason": null,
"deprecation_replacement_formula": null,
"deprecation_replacement_cask": null,
"disabled": false, "disabled": false,
"disable_date": null, "disable_date": null,
"disable_reason": null, "disable_reason": null,
"tap_git_head": "0bbb89420e74756a5a5c145ed7efa4a32f7e7e7c" "disable_replacement_formula": null,
} "disable_replacement_cask": null,
"post_install_defined": true,
"service": {
"run": [
"/opt/homebrew/opt/php/sbin/php-fpm",
"--nodaemonize"
],
"run_type": "immediate",
"keep_alive": {
"always": true
},
"working_dir": "/opt/homebrew/var",
"error_log_path": "/opt/homebrew/var/log/php-fpm.log"
},
"tap_git_head": "373a872625b689ca6fbc7bfb8e22ef39e7d9e46b",
"ruby_source_path": "Formula/p/php.rb",
"ruby_source_checksum": {
"sha256": "cf38870ab4612023ac385bb5b391dad56e6aac69366b2773f35232317dcbd7dd"
},
"head_dependencies": {
"build_dependencies": [
"bison",
"re2c",
"httpd",
"pkgconf"
],
"dependencies": [
"apr",
"apr-util",
"argon2",
"autoconf",
"curl",
"freetds",
"gd",
"gettext",
"gmp",
"icu4c@77",
"krb5",
"libpq",
"libsodium",
"libzip",
"net-snmp",
"oniguruma",
"openldap",
"openssl@3",
"pcre2",
"sqlite",
"tidy-html5",
"unixodbc",
"gcc"
],
"test_dependencies": [
"httpd"
],
"recommended_dependencies": [],
"optional_dependencies": [],
"uses_from_macos": [
{
"xz": "build"
},
"bzip2",
"libedit",
"libffi",
"libxml2",
"libxslt",
"zlib"
],
"uses_from_macos_bounds": [
{},
{},
{},
{
"since": "catalina"
},
{},
{},
{}
]
}
}
] ]