diff --git a/PHP Monitor.xcodeproj/project.pbxproj b/PHP Monitor.xcodeproj/project.pbxproj index c742305..8a492db 100644 --- a/PHP Monitor.xcodeproj/project.pbxproj +++ b/PHP Monitor.xcodeproj/project.pbxproj @@ -2350,7 +2350,7 @@ attributes = { BuildIndependentTargetsInParallel = YES; LastSwiftUpdateCheck = 1420; - LastUpgradeCheck = 1620; + LastUpgradeCheck = 1640; ORGANIZATIONNAME = "Nico Verbruggen"; TargetAttributes = { C406A5EF298AD2CE00B5B85A = { @@ -3436,7 +3436,6 @@ COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 30; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor Self-Updater"; @@ -3471,7 +3470,6 @@ COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 30; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor Self-Updater"; @@ -3506,7 +3504,6 @@ COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 30; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor Self-Updater"; @@ -3541,7 +3538,6 @@ COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 30; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor Self-Updater"; @@ -3601,6 +3597,7 @@ COPY_PHASE_STRIP = NO; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = dwarf; + DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -3666,6 +3663,7 @@ COPY_PHASE_STRIP = NO; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -3694,10 +3692,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1535; + CURRENT_PROJECT_VERSION = 1555; DEAD_CODE_STRIPPING = YES; DEBUG = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = phpmon/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor"; @@ -3706,8 +3703,8 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 12.4; - MARKETING_VERSION = 7.2; + MACOSX_DEPLOYMENT_TARGET = 13.5; + MARKETING_VERSION = 25.06; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon; PRODUCT_MODULE_NAME = PHP_Monitor; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -3725,10 +3722,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1535; + CURRENT_PROJECT_VERSION = 1555; DEAD_CODE_STRIPPING = YES; DEBUG = NO; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = phpmon/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor"; @@ -3737,8 +3733,8 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 12.4; - MARKETING_VERSION = 7.2; + MACOSX_DEPLOYMENT_TARGET = 13.5; + MARKETING_VERSION = 25.06; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon; PRODUCT_MODULE_NAME = PHP_Monitor; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -3754,7 +3750,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; MACOSX_DEPLOYMENT_TARGET = 12.4; @@ -3773,7 +3768,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; MACOSX_DEPLOYMENT_TARGET = 12.4; @@ -3792,7 +3786,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; MACOSX_DEPLOYMENT_TARGET = 12.4; @@ -3811,7 +3804,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; MACOSX_DEPLOYMENT_TARGET = 12.4; @@ -3830,7 +3822,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 12.4; MARKETING_VERSION = 1.0; @@ -3849,7 +3840,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 12.4; MARKETING_VERSION = 1.0; @@ -3868,7 +3858,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 12.4; MARKETING_VERSION = 1.0; @@ -3887,7 +3876,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 12.4; MARKETING_VERSION = 1.0; @@ -3938,6 +3926,7 @@ COPY_PHASE_STRIP = NO; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -3966,10 +3955,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1535; + CURRENT_PROJECT_VERSION = 1555; DEAD_CODE_STRIPPING = YES; DEBUG = NO; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = phpmon/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor DEV"; @@ -3978,8 +3966,8 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 12.4; - MARKETING_VERSION = 7.2; + MACOSX_DEPLOYMENT_TARGET = 13.5; + MARKETING_VERSION = 25.06; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon.dev; PRODUCT_MODULE_NAME = PHP_Monitor; PRODUCT_NAME = "$(TARGET_NAME) DEV"; @@ -3994,7 +3982,6 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; LD_RUNPATH_SEARCH_PATHS = ( @@ -4048,6 +4035,7 @@ COPY_PHASE_STRIP = NO; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = dwarf; + DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -4083,10 +4071,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1535; + CURRENT_PROJECT_VERSION = 1555; DEAD_CODE_STRIPPING = YES; DEBUG = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = phpmon/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor DEV"; @@ -4095,8 +4082,8 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 12.4; - MARKETING_VERSION = 7.2; + MACOSX_DEPLOYMENT_TARGET = 13.5; + MARKETING_VERSION = 25.06; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon.dev; PRODUCT_MODULE_NAME = PHP_Monitor; PRODUCT_NAME = "$(TARGET_NAME) DEV"; @@ -4111,7 +4098,6 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; LD_RUNPATH_SEARCH_PATHS = ( @@ -4165,6 +4151,7 @@ COPY_PHASE_STRIP = NO; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = dwarf; + DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -4200,10 +4187,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1535; + CURRENT_PROJECT_VERSION = 1555; DEAD_CODE_STRIPPING = YES; DEBUG = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = phpmon/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor EAP"; @@ -4212,8 +4198,8 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 12.4; - MARKETING_VERSION = 7.2; + MACOSX_DEPLOYMENT_TARGET = 13.5; + MARKETING_VERSION = 25.06; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon.eap; PRODUCT_MODULE_NAME = PHP_Monitor; PRODUCT_NAME = "$(TARGET_NAME) EAP"; @@ -4236,7 +4222,6 @@ COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 30; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor Self-Updater"; @@ -4263,7 +4248,6 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; LD_RUNPATH_SEARCH_PATHS = ( @@ -4285,7 +4269,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; MACOSX_DEPLOYMENT_TARGET = 12.4; @@ -4304,7 +4287,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 12.4; MARKETING_VERSION = 1.0; @@ -4355,6 +4337,7 @@ COPY_PHASE_STRIP = NO; DEAD_CODE_STRIPPING = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -4383,10 +4366,9 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1535; + CURRENT_PROJECT_VERSION = 1555; DEAD_CODE_STRIPPING = YES; DEBUG = NO; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = phpmon/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor EAP"; @@ -4395,8 +4377,8 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MACOSX_DEPLOYMENT_TARGET = 12.4; - MARKETING_VERSION = 7.2; + MACOSX_DEPLOYMENT_TARGET = 13.5; + MARKETING_VERSION = 25.06; PRODUCT_BUNDLE_IDENTIFIER = com.nicoverbruggen.phpmon.eap; PRODUCT_MODULE_NAME = PHP_Monitor; PRODUCT_NAME = "$(TARGET_NAME) EAP"; @@ -4419,7 +4401,6 @@ COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 30; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; ENABLE_HARDENED_RUNTIME = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_CFBundleDisplayName = "PHP Monitor Self-Updater"; @@ -4446,7 +4427,6 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; LD_RUNPATH_SEARCH_PATHS = ( @@ -4468,7 +4448,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; MACOSX_DEPLOYMENT_TARGET = 12.4; @@ -4487,7 +4466,6 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; MACOSX_DEPLOYMENT_TARGET = 12.4; MARKETING_VERSION = 1.0; @@ -4505,7 +4483,6 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; LD_RUNPATH_SEARCH_PATHS = ( @@ -4526,7 +4503,6 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; DEAD_CODE_STRIPPING = YES; - DEVELOPMENT_TEAM = 8M54J5J787; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = ""; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/PHP Monitor.xcodeproj/xcshareddata/xcschemes/PHP Monitor DEV.xcscheme b/PHP Monitor.xcodeproj/xcshareddata/xcschemes/PHP Monitor DEV.xcscheme index c29c587..2cb853e 100644 --- a/PHP Monitor.xcodeproj/xcshareddata/xcschemes/PHP Monitor DEV.xcscheme +++ b/PHP Monitor.xcodeproj/xcshareddata/xcschemes/PHP Monitor DEV.xcscheme @@ -1,6 +1,6 @@ **Note** > If this software has been useful to you, I ask that you **please star the repository**, that way I know that the software is being used. Also, please consider [sponsoring](https://nicoverbruggen.be/sponsor) to support the project, as this is something I make in my free time. **Thank you!** ⭐️ - -

PHP Monitor Logo

+ +

PHP Monitor Logo

**PHP Monitor** (or *phpmon*) is a lightweight macOS utility app that runs on your Mac and displays the active PHP version in your status bar. It's tightly integrated with [Laravel Valet](https://github.com/laravel/valet), so you need to have it set up if you want to use all of the functionality of the app (consult the FAQ below with info about how to set up your environment). @@ -22,7 +22,7 @@ You can also add new domains as links, isolate sites, manage various services, a PHP Monitor is a universal application that runs natively on Apple Silicon **and** Intel-based Macs. * Your user account can administer your computer (required for some functionality, e.g. certificate generation) -* macOS 12.4 or later +* macOS 13.5 or later * Homebrew is installed in the default location (`/usr/local/homebrew` or `/opt/homebrew`) * Homebrew `php` formula is installed * Optional but recommended: Laravel Valet diff --git a/SECURITY.md b/SECURITY.md index 6f443d8..162bed8 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -2,11 +2,13 @@ ## Supported versions -Generally speaking, only the latest version of **PHP Monitor** is supported, except during transition periods (for example, when particular system requirements go up): +Generally speaking, only the latest version of **PHP Monitor** is supported, except during transition periods (for example, when particular system requirements go up). | Version | Apple Silicon | Supported | Supported macOS | Minimum Deployment | Detected PHP Versions | Recommended Valet Version | | ------- | ------------- | ------------------ | ----- | ----- | ----- | ---- -| 7.1 | ✅ Universal binary | ✅ Yes | Monterey (12.4+)
Ventura (13.0+)
Sonoma (14.0+)
Sequoia (15.0+) | macOS 12.4+ | PHP 5.6—PHP 8.2 (w/ Valet 2.x)
PHP 7.0—PHP 8.4 (w/ Valet 3.x)
PHP 7.1-PHP 8.5 (w/ Valet 4.x)| 3.0 or higher recommended
2.16.2 minimum | +| 25 | ✅ Universal binary | ✅ Yes | Ventura (13.5+)
Sonoma (14.0+)
Sequoia (15.0+)
Tahoe (26.0+)* | macOS 13.5+ | PHP 5.6—PHP 8.2 (w/ Valet 2.x)
PHP 7.0—PHP 8.4 (w/ Valet 3.x)
PHP 7.1-PHP 8.5 (w/ Valet 4.x)| 3.0 or higher recommended
2.16.2 minimum | + +(*) Denotes preliminary supported based on the app being built with the latest version of the SDK prior to the release of the latest release of macOS. Please check out the pinned issue for more information. ## Legacy versions @@ -14,6 +16,7 @@ These versions of PHP Monitor are no longer supported, but if you’re using an | Version | Apple Silicon | Supported | Supported macOS | Minimum Deployment | Detected PHP Versions | Minimum Required Valet Version | | ------- | ------------- | ------------------ | ----- | ----- | ----- | ---- +| 7.1 | ✅ Universal binary | ❌ | Monterey (12.4+)
Ventura (13.0+)
Sonoma (14.0+)
Sequoia (15.0+) | macOS 12.4+ | PHP 5.6—PHP 8.2 (w/ Valet 2.x)
PHP 7.0—PHP 8.4 (w/ Valet 3.x)
PHP 7.1-PHP 8.5 (w/ Valet 4.x)| 3.0 or higher recommended
2.16.2 minimum | | 7.0 | ✅ Universal binary | ❌ | Monterey (12.4+)
Ventura (13.0+)
Sonoma (14.0) | macOS 12.4+ | PHP 5.6—PHP 8.2 (w/ Valet 2.x)
PHP 7.0—PHP 8.4 (w/ Valet 3.x)
PHP 7.1-PHP 8.4 (w/ Valet 4.x)| 3.0 or higher recommended
2.16.2 minimum | | 6.2 | ✅ Universal binary | ❌ | Monterey (12.4+)
Ventura (13.0+)
Sonoma (14.0) | macOS 12.4+ | PHP 5.6—PHP 8.2 (w/ Valet 2.x)
PHP 7.0—PHP 8.4 (w/ Valet 3.x)
PHP 7.1-PHP 8.4 (w/ Valet 4.x)| 3.0 or higher recommended
2.16.2 minimum | | 6.1 | ✅ Universal binary | ❌ | Monterey (12.4+)
Ventura (13.0+)
Sonoma (14.0) | macOS 12.4+ | PHP 5.6—PHP 8.2 (w/ Valet 2.x)
PHP 7.0—PHP 8.4 (w/ Valet 3.x)
PHP 7.1-PHP 8.4 (w/ Valet 4.x)| 3.0 or higher recommended
2.16.2 minimum | diff --git a/assets/affinity/icon-dev.afdesign b/assets/affinity/icon-dev.afdesign deleted file mode 100644 index 54e00d5..0000000 Binary files a/assets/affinity/icon-dev.afdesign and /dev/null differ diff --git a/assets/affinity/icon-eap.afdesign b/assets/affinity/icon-legacy.afdesign similarity index 100% rename from assets/affinity/icon-eap.afdesign rename to assets/affinity/icon-legacy.afdesign diff --git a/assets/affinity/icon-unified.afdesign b/assets/affinity/icon-unified.afdesign new file mode 100644 index 0000000..11fd59b Binary files /dev/null and b/assets/affinity/icon-unified.afdesign differ diff --git a/assets/affinity/icon-updater.afdesign b/assets/affinity/icon-updater.afdesign deleted file mode 100644 index 7dacd66..0000000 Binary files a/assets/affinity/icon-updater.afdesign and /dev/null differ diff --git a/assets/affinity/icon.afdesign b/assets/affinity/icon.afdesign deleted file mode 100644 index e5b3710..0000000 Binary files a/assets/affinity/icon.afdesign and /dev/null differ diff --git a/assets/affinity/logo.afdesign b/assets/affinity/logo.afdesign new file mode 100644 index 0000000..7a419f2 Binary files /dev/null and b/assets/affinity/logo.afdesign differ diff --git a/assets/icon.svg b/assets/icon-2021.svg similarity index 100% rename from assets/icon.svg rename to assets/icon-2021.svg diff --git a/assets/icon-2025.svg b/assets/icon-2025.svg new file mode 100644 index 0000000..07f2e72 --- /dev/null +++ b/assets/icon-2025.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/xcode-icon-composer/icon.icon/Assets/phpmon.svg b/assets/xcode-icon-composer/icon.icon/Assets/phpmon.svg new file mode 100644 index 0000000..948ce02 --- /dev/null +++ b/assets/xcode-icon-composer/icon.icon/Assets/phpmon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/assets/xcode-icon-composer/icon.icon/icon.json b/assets/xcode-icon-composer/icon.icon/icon.json new file mode 100644 index 0000000..21dbdee --- /dev/null +++ b/assets/xcode-icon-composer/icon.icon/icon.json @@ -0,0 +1,48 @@ +{ + "fill" : { + "linear-gradient" : [ + "srgb:0.27800,0.58000,0.98800,1.00000", + "srgb:0.27800,0.58000,0.98800,1.00000" + ] + }, + "groups" : [ + { + "blend-mode" : "screen", + "blur-material" : null, + "layers" : [ + { + "blend-mode" : "normal", + "fill" : { + "solid" : "srgb:1.00000,0.99038,0.96423,1.00000" + }, + "glass" : true, + "image-name" : "phpmon.svg", + "name" : "phpmon", + "position" : { + "scale" : 1.85, + "translation-in-points" : [ + 10.0234375, + 8.21875 + ] + } + } + ], + "lighting" : "individual", + "shadow" : { + "kind" : "neutral", + "opacity" : 0.5 + }, + "specular" : true, + "translucency" : { + "enabled" : true, + "value" : 0.5 + } + } + ], + "supported-platforms" : { + "circles" : [ + "watchOS" + ], + "squares" : "shared" + } +} \ No newline at end of file diff --git a/docs/logo.png b/docs/logo.png deleted file mode 100644 index a33414b..0000000 Binary files a/docs/logo.png and /dev/null differ diff --git a/docs/logo.svg b/docs/logo.svg new file mode 100644 index 0000000..f5be83a --- /dev/null +++ b/docs/logo.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + diff --git a/docs/notification.png b/docs/notification.png index ea4fd4f..61dd682 100644 Binary files a/docs/notification.png and b/docs/notification.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128.png index 20350c0..f0973a6 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png index 18a5b1e..5177624 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16.png index cca963a..670de87 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png index 74732f3..52c972e 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256.png index 18a5b1e..5177624 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png index d7707c5..511e345 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32.png index 74732f3..52c972e 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png index 2c3e1f9..f2665dd 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512.png index d7707c5..511e345 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512.png differ diff --git a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png index bef4d85..50033db 100644 Binary files a/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png and b/phpmon-updater/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128.png index f85e2f3..5e01779 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png index 1e29404..5f3cc59 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16.png index 6caf9a5..cd6c1d3 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png index ab9cf0c..e515eaf 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256.png index 1e29404..5f3cc59 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png index 88aa816..f64dd30 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32.png index ab9cf0c..e515eaf 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png index 2cb9f59..e17761a 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512.png index 88aa816..f64dd30 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512.png differ diff --git a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png index 4f0bc9d..7aa28d8 100644 Binary files a/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png and b/phpmon/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128.png index 8cace12..942165f 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128@2x.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128@2x.png index c9efdb2..788ae7c 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128@2x.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_128x128@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16.png index 5e266f6..f5076b1 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16@2x.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16@2x.png index 426a9bf..53cfc18 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16@2x.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_16x16@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256.png index c9efdb2..788ae7c 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256@2x.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256@2x.png index e09b602..43e0ad5 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256@2x.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_256x256@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32.png index 426a9bf..53cfc18 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32@2x.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32@2x.png index 9c94515..6f80e2c 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32@2x.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_32x32@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512.png index e09b602..43e0ad5 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512.png differ diff --git a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512@2x.png b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512@2x.png index c178918..da87a93 100644 Binary files a/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512@2x.png and b/phpmon/Assets.xcassets/AppIconDev.appiconset/icon_512x512@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128.png index 70a117e..cd3b5af 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128@2x.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128@2x.png index 406c60c..24477fc 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128@2x.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_128x128@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16.png index 21adfd2..4881748 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16@2x.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16@2x.png index dbaa386..c4dc724 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16@2x.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_16x16@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256.png index 406c60c..24477fc 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256@2x.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256@2x.png index 7028370..1b7cb03 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256@2x.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_256x256@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32.png index dbaa386..c4dc724 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32@2x.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32@2x.png index 56a9771..816925f 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32@2x.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_32x32@2x.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512.png index 7028370..1b7cb03 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512.png differ diff --git a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512@2x.png b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512@2x.png index d9d21b6..251ff1c 100644 Binary files a/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512@2x.png and b/phpmon/Assets.xcassets/AppIconEAP.appiconset/icon_512x512@2x.png differ diff --git a/phpmon/Common/Extensions/NSMenuItemExtension.swift b/phpmon/Common/Extensions/NSMenuItemExtension.swift index 9a5461e..9c107b3 100644 --- a/phpmon/Common/Extensions/NSMenuItemExtension.swift +++ b/phpmon/Common/Extensions/NSMenuItemExtension.swift @@ -9,6 +9,24 @@ import Cocoa extension NSMenuItem { + convenience init( + title: String, + action: Selector? = nil, + keyEquivalent: String = "", + keyModifier: NSEvent.ModifierFlags = [], + systemImage: String? = nil, + customImage: String? = nil, + ) { + self.init(title: title, action: action, keyEquivalent: keyEquivalent) + self.keyEquivalentModifierMask = keyModifier + if systemImage != nil { + self.image = NSImage(systemSymbolName: systemImage!, accessibilityDescription: "") + } + if customImage != nil { + self.image = NSImage(named: customImage!) + } + } + convenience init( title: String, action: Selector? = nil, @@ -26,12 +44,20 @@ extension NSMenuItem { keyEquivalent: String = "", keyModifier: NSEvent.ModifierFlags = [], toolTip: String? = nil, + systemImage: String? = nil, + customImage: String? = nil, submenu: [NSMenuItem], target: NSObject? = nil ) { self.init(title: title, action: nil, keyEquivalent: keyEquivalent) self.keyEquivalentModifierMask = keyModifier self.toolTip = toolTip + if systemImage != nil { + self.image = NSImage(systemSymbolName: systemImage!, accessibilityDescription: "") + } + if customImage != nil { + self.image = NSImage(named: customImage!) + } self.submenu = NSMenu(items: submenu, target: target) } } diff --git a/phpmon/Domain/App/Base.lproj/Main.storyboard b/phpmon/Domain/App/Base.lproj/Main.storyboard index 55a04db..f1a7b70 100644 --- a/phpmon/Domain/App/Base.lproj/Main.storyboard +++ b/phpmon/Domain/App/Base.lproj/Main.storyboard @@ -1,8 +1,8 @@ - + - + @@ -826,13 +826,6 @@ Gw - - - - - - - @@ -1150,21 +1143,51 @@ Gw + + - - + + + @@ -1399,7 +1422,7 @@ Gw - -