Skip to content

Releases: nicoverbruggen/phpmon

v5.4.1

08 Jul 12:23
Compare
Choose a tag to compare

This is a bugfix release that fixes an issue with PHP Monitor 5.4. All users are recommended to upgrade.

Upgrading

The recommended way of upgrading is running brew update-reset && brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

Resolved Issues

  • You will now get notified if your global Composer dependencies are incompatible after switching to a different PHP version. (#178)
  • PHP Monitor will refuse to start if your global Composer dependencies are incompatible with the currently globally linked PHP version. (#178)
  • PHP Monitor's custom modals will now appear a little bit higher up than before. I always felt like their position was off ever so slightly (compared to the system modals) and now they will appear a little higher up.

v5.4

28 Jun 11:01
Compare
Choose a tag to compare

This release adds a variety of new features, including support for custom services, presets and various other improvements. For the full list of changes, please see What's New below.

If you want to learn more and see some screenshots, please see the blog post on my website.

What's New

  • The configuration file has been moved to ~/.config/phpmon/config.json. If you had a custom configuration file before, it will be automatically copied to the new location.

  • Various views throughout the app have been rewritten and now use SwiftUI. If something looks off, please let me know. If you are on macOS 11, please get in touch and let me know if you encounter issues with the appearance of the app.

  • Services can now be started and stopped by pressing on the status icon (cross or checkmark) in the dropdown when you click on PHP Monitor's icon.

  • The Preferences window was getting a bit big, so it now has multiple tabs. A new section for granular notification settings has also been added.

  • You can now toggle Xdebug modes via Manage Xdebug. You can also disable all modes at once by choosing Disable All, which disables all modes and sets the value of xdebug.mode to off. Xdebug must be installed for this option to appear.

  • You can now add Configuration Presets to PHP Monitor. You must set these up in a JSON file, located in ~/.config/phpmon/config.json. You must have set up at least one valid preset for this item to appear in PHP Monitor. Here's a template you can use to get started:

{
    "scan_apps": [],
    "services": [],
    "presets": [
        {
            "name": "Legacy Project",
            "php": "8.0",
            "extensions": {
                "xdebug": false
            },
            "configuration": {
                "memory_limit": "128M",
                "upload_max_filesize": "128M",
                "post_max_size": "128M"
            }
        },
        {
            "name": "Modern Project",
            "php": "8.1",
            "extensions": {
                "xdebug": true
            },
            "configuration": {
                "xdebug.mode": "coverage",
                "memory_limit": "512M",
                "upload_max_filesize": "512M",
                "post_max_size": "512M"
            }
        }
    ]
}
  • You can specify custom services in the configuration file for Homebrew services that run as your own user (not root). You can find out which services are available by running brew services list. While you can add the Valet services again (php, dnsmasq, nginx), this is not recommended and will break the app. For example, you can do this:
{
    "scan_apps": [],
    "services": ["mailhog", "mysql"],
    "presets": []
}
  • This build has been tested with macOS Ventura, and should work. I have not tested every feature extensively, so please let me know if you encounter any issues.

Known Issues

  • If there are permission issues reading the contents of the /private/etc/sudoers.d/brew or /private/etc/sudoers.d/brew files, the app will tell you to run valet secure. Instead, you should fix permissions for these files.
  • If the /usr/local/bin directory is not writeable, the app will silently fail to write the PHP version helpers without notifying the user.
  • Custom services that need to start as root are currently not supported. Custom services currently always start as owned by the current user (not root).

v5.3.2

14 Jun 16:24
Compare
Choose a tag to compare

This is a bugfix release that fixes an issue with PHP Monitor 5.3. All users are recommended to upgrade.

Upgrading

The recommended way of upgrading is running brew update-reset && brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

Resolved Issues

  • Starting the app now fixes any issues that may exist with www pools and port conflicts (#173). This could occur if you've upgraded the PHP version, but haven't run valet install after upgrading a PHP version.
  • Fixed an issue that would cause the site isolation feature not to work correctly if you have more than 50 domains in the domains list, assuming the fixing the www pools was needed.
  • Removed two test files from application target, which means these are no longer included in the PHP Monitor.app file.

v5.3.1

08 Jun 16:36
Compare
Choose a tag to compare

This is a bugfix release that fixes an issue with PHP Monitor 5.3. All users are recommended to upgrade.

Upgrading

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

Resolved Issues

  • Fixed an issue where the green checkmark would be displayed for every domain in the domain list, regardless of the PHP version compatibility. The compatibility status was determined correctly, but the checkmark always was incorrectly shown.

v5.3

13 May 14:36
Compare
Choose a tag to compare

This release adds support for creating and managing Valet proxies, which will now be displayed in the list of domains. Also new: starting with this release, the app will automatically notify you about updates. (You can disable this automatic check if you prefer.)

What's New

  • You can now see which proxies are active in the domains list.
  • You can now set up a new proxy (by clicking the + button) via the UI.
  • You can now remove a proxy by right-clicking on the proxy in the list and selecting the option to remove it. You will need to confirm the removal.
  • You can (un)secure an existing proxy (which will recreate the proxy) by right-clicking on the proxy in the list and selecting the appropriate option.
  • The app will now automatically check if an updated version is available. You can disable the automatic check (which happens when PHP Monitor is launched) in Preferences.

Resolved Issues

  • Fixed an issue with the tertiary action in alerts if no secondary action was specified.

Known Issues

  • If there are permission issues reading the contents of the /private/etc/sudoers.d/brew or /private/etc/sudoers.d/brew files, the app will tell you to run valet secure. Instead, you should fix permissions for these files.
  • If the /usr/local/bin directory is not writeable, the app will silently fail to write the PHP version helpers without notifying the user.

v5.2.2

22 Apr 17:51
Compare
Choose a tag to compare

This is a bugfix release that fixes various minor issues with PHP Monitor 5.2. Due to the nature of the fixes included in this update, upgrading to this release is recommended for all users of PHP Monitor.

Upgrading

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

Resolved Issues

  • Fixed an issue where PHP 5.6 would not show up in the menu when running Valet 2 (#165)
  • Fixed an issue that crashed the app when switching to pre-release versions PHP 8.2 (#162)
  • Fixed an issue where PHP-FPM automatic pool disabling would not work if the fix was already applied before. This resulted in the PHP service reporting itself as not working correctly (#149)
  • Tweaked the text in various alerts for those who want to use PHP 8.2 with PHP Monitor, even though this isn't officially supported yet (#162)

v5.2.1

31 Mar 11:56
Compare
Choose a tag to compare

This is a bugfix release that fixes an issue with the isolation command (#158).

v5.2

29 Mar 15:43
Compare
Choose a tag to compare

Upgrading

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

Important

If you do upgrade to Valet 3, you will lose support for PHP 5.6, but the site isolation feature will be enabled in PHP Monitor. For more information, I recommend reading my blog post on this release.

What's New

  • Updated site list window. The window has been updated to reflect the accurate PHP status (what version is being served). You will also see a pin icon for isolated sites (Valet 3 only).
  • Sort sites in site list. See also #148. In addition to the redesign, you can now sort your site list based on the various columns that have been added to the site list. You can reorder those columns the way you like, and the sorting you last applied will be remembered.
  • Default site support. See also #125. If you have specified a default site in config.json, it will now be displayed in the site list. Should you reload the site list, the config.json file is now also reloaded, which means that PHP Monitor will pick up any new default site, directories and TLD.
  • Easy CLI access to various PHP versions. PHP Monitor will detect what versions of PHP are installed and create helper files. You can then use them like this: pm80 will activate PHP 8.0, and pm74 will activate PHP 7.4. (PHP Monitor only enables which versions of PHP you have installed locally.)
  • Support for site isolation. See also #148. If you are running Valet 3.0 or newer, you can now choose a fixed version of PHP to use for each site. You can isolate a site by right-clicking on the site in question and selecting which version you'd like to isolate.

Resolved Issues

  • If your config.json file (containing your Laravel Valet config) is invalid, you will be prompted when PHP Monitor launches.
  • Added support for detecting Typo3 CMS projects using composer or the specific folder. (#153)
  • In certain situations, after installing or reinstalling PHP versions the www.conf pool configuration file would not be renamed, which is the default behaviour of Laravel Valet. PHP Monitor now disables those files whenever the version switch happens, because they could lead to failing services commands (#152). This brings the behaviour of PHP Monitor in line with Valet's own switcher.

v5.1.1

09 Mar 17:06
Compare
Choose a tag to compare

Upgrading

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

Resolved Issues

  • #146: You will be prompted to run valet trust before evaluating whether the services JSON can be retrieved via Homebrew. The incorrect order of startup checks caused some confusion for new users.
  • A typo has been fixed in the Fix My Valet flow.

v5.1

03 Mar 13:43
Compare
Choose a tag to compare

Upgrading

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. This always gets you the latest and greatest stable version of PHP Monitor. If you did not use Homebrew to install the app, you can download a zip below (by expanding Assets and choosing phpmon.zip).

What's New

  • #86: Restore Homebrew Permissions. This feature was created so you can run brew upgrade or brew cleanup without permission issues. This will require administrative privileges, because PHP Monitor will restore your ownership of the files and folders that are currently owned by the root user, due to Valet services running as root.
  • #141: Fix My Valet: Fix My Valet has been overhauled and will now suggest switching back to a previous version of PHP if you were not on the latest version.
  • #143: Scanning .valetphprc files: If you include a .valetphprc file in your folder, PHP Monitor will attempt to scan that file for a PHP version number (e.g. [email protected]) and will apply that as the constraint for that domain.
  • #134: Rosetta now supported on M1: PHP Monitor now uses the Homebrew installation based on how you're running the app. If you are on Intel or running via Rosetta, /usr/local/bin/brew is used. If you're running natively on M1, /opt/homebrew/bin/brew is used instead. This allows people who are using M1 Macs, but still wish to use their Rosetta version of Homebrew to run the app under Rosetta and have it work exactly as it would on an Intel Mac.
  • Improved (onboarding) alerts and more precise feedback. New alerts now replace many of the previous alerts throughout the app. Many have been updated, and some will also link back to the FAQ. The startup process has been revamped and improved for a better onboarding experience, as well.

Resolved Issues

  • #126: You now get warned if you use a non-default TLD since PHP Monitor does not entirely support these.
  • #142: The full version is now displayed in the dropdown again if requested in Preferences.
  • #144: You no longer have to make a symlink if your composer binary is located in /opt/homebrew/bin.