1
0
mirror of https://github.com/nicoverbruggen/phpmon.git synced 2025-08-07 03:50:08 +02:00

🚧 WIP: Adds support to PHP 7.4

(PHP 7.4 isn't out for Homebrew just yet.)
This commit is contained in:
2019-11-28 12:45:24 +01:00
parent 69c3386088
commit ea60626c47
4 changed files with 12 additions and 12 deletions

View File

@ -11,13 +11,13 @@ For me, it comes in handy when running multiple versions of PHP with Homebrew an
**Minimal system requirements**
* macOS 10.14 or higher
* PHP 7.3 installed via Homebrew
* PHP 7.4 installed via Homebrew
* Laravel Valet 2.3 or higher installed
**Recommended system**
* macOS 10.15 Catalina
* PHP 7.3 installed with Homebrew 2.x
* PHP 7.4 installed with Homebrew 2.2
- other versions of PHP are optional
- includes support for PHP 5.6 and PHP 7.0 [as well](https://github.com/eXolnet/homebrew-deprecated)
* Laravel Valet 2.5.x installed
@ -40,14 +40,14 @@ This utility will detect which PHP versions you have installed via Homebrew, and
This means:
- You have at least the latest version of PHP installed (`php@7.3`)
- You have at least the latest version of PHP installed (`php@7.4`)
- You have installed Laravel Valet (`which valet` returns `/usr/local/bin/valet`)
- You ran `valet trust`, which means Valet commands can be run without using sudo
The utility runs the following commands:
- Unlink all detected PHP versions
- Switch to PHP 7.3 (this is done in order to ensure that Valet works, even when attempting to use PHP 5.6)
- Switch to PHP 7.4 (this is done in order to ensure that Valet works, even when attempting to use PHP 5.6)
- Tell Valet to switch to a specific PHP version
- Link the desired version of PHP
@ -64,7 +64,7 @@ This app isn't very complicated after all. In the end, this just (conveniently)
PHP Monitor performs some integrity checks to ensure a good experience when using the app. You'll get a message telling you that PHP Monitor won't work correctly in the following scenarios:
- The PHP binary is not located in `/usr/local/bin/php`
- PHP 7.3 is missing in `/usr/local/opt`
- PHP 7.4 is missing in `/usr/local/opt`
- Laravel Valet is missing in `/usr/local/bin/valet`
- Brew has not been added to sudoers in `/private/etc/sudoers.d/brew`
- Valet has not been added to sudoers in `/private/etc/sudoers.d/valet`

View File

@ -30,8 +30,8 @@ class Actions {
availableVersions.forEach { (version) in
Shell.user.run("brew unlink php@\(version)")
}
if (availableVersions.contains("7.3")) {
Shell.user.run("brew link php@7.3")
if (availableVersions.contains("7.4")) {
Shell.user.run("brew link php@7.4")
if (version == Constants.LatestPhpVersion) {
Shell.user.run("valet use php")
} else {

View File

@ -19,9 +19,9 @@ class Startup {
)
self.presentAlertOnMainThreadIf(
!Shell.user.pipe("ls /usr/local/opt | grep php@7.3").contains("php@7.3"),
messageText: "PHP 7.3 is not correctly installed",
informativeText: "PHP 7.3 alias was not found in `/usr/local/opt`. The app will not work correctly until you resolve this issue."
!Shell.user.pipe("ls /usr/local/opt | grep php@7.4").contains("php@7.4"),
messageText: "PHP 7.4 is not correctly installed",
informativeText: "PHP 7.4 alias was not found in `/usr/local/opt`. The app will not work correctly until you resolve this issue."
)
self.presentAlertOnMainThreadIf(

View File

@ -14,13 +14,13 @@ class Constants {
* The PHP versions supported by this application.
*/
static let SupportedPhpVersions = [
"5.6", "7.0", "7.1", "7.2", "7.3"
"5.6", "7.0", "7.1", "7.2", "7.3", "7.4"
]
/**
Which php version is aliased as `php` to brew?
This is usually the latest PHP version.
*/
static let LatestPhpVersion = "7.3"
static let LatestPhpVersion = "7.4"
}