Skip to content

Releases: nicoverbruggen/phpmon

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.

v5.0.1

08 Feb 23:03
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).

Improvements

  • In the Preferences menu, you can now choose which type of icon you would like to select (or none at all) (#106)
  • Improved the way the First Aid & Services submenu is rendered (#128)
  • There should no longer be any flickering when the domains list is refreshed. The spinner also won't appear unless it takes a bit longer to parse your domains or perform an action like securing your site. (This also helps with the flickering.)

Bug Fixes

Huge thanks to the various reporters who helped me track down these bugs!

  • #120: Improved assets for the app (icons); no longer created by the OS from the SVG source material.
  • #124: If your sudoers file does not contain the correct info but Valet is present, the app would crash running valet --version prior to confirming valet can run without admin permissions. This no longer happens.
  • #123: If any of the usual files that are usually watched (.ini files) are not present or otherwise inaccessible (due to root ownership), the app will no longer crash.
  • #115: Fixed a typo in one of the modals about symlinking composer.json.
  • #132: Fixed an issue parsing RC PHP versions. Upgrade to the stable version if you're still on a release candidate, though. ;)
  • Fixed a retain cycle when attempting to enable or disable an extension.
  • If you switched PHP versions first and open the domains list afterwards for the first time you had to refresh the list (because it was preloaded when the app launched and did not reflect your new PHP version). This is no longer necessary.

v5.0

02 Feb 21:20
Compare
Choose a tag to compare

If you're installing PHP Monitor for the first time, please check out the README at here on GitHub before asking questions. There's also an excellent FAQ in the README in case you're having issues.

Upgrade

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

I have made a demonstration video showcasing the new features in PHP Monitor 5.0, check it out!
If you'd like to see a more general breakdown of what's new with screenshots, see this blogpost on my site.

  • Link a Folder. Wait, you couldn't do this before? No. But you can now! You can now press the + button in the site list to add a folder as a link to Valet. You'll be able to customize the name of the link and automatically secure the site without any extra steps. Convenient!

  • Wow, the site list is a lot faster now! Loading the sites in the "Linked & Parked Domains" section is now faster than ever. I have also fixed the scrolling, which was rather laggy. Optimization, baby. If you have more than 50 sites listed, this will be like night & day.

  • Instant & Smarter Search. Yes, faster than ever, but also more powerful than ever. You can now search for multiple queries: searching for "term1 term2" will find entries that contain both words in the name of the site, but this does not need to be a full match. Want to find "my-nice-website-with-valet"? You can search for "nice valet" and find it now!

  • "Driver Type" has changed, and is now "Project Type". In order to make "Linked & Parked Domains" a lot faster, PHP Monitor no longer asks Valet what driver is being used. Instead, it scans your composer.json file to find out what kind of framework you're using.

  • Services indicator in the menu. Every time you open the menu, the status of the Homebrew services is now retrieved in the background and also updated periodically. In case Valet isn't working, you'll be able to tell if it's the services that are disabled.

  • Identify PHP versions in the site list, at a glance. Not only can you now see what the PHP requirement is that you set up in composer.json on a per-project basis in the site list, but you can also see what version of Laravel you have in the require section of your composer.json file.

  • Easy compatibility check for sites: If the currently linked version of PHP is compatible with the constraint detected in composer.json, you'll see a green checkmark.

  • Get suggestions for which version of PHP to switch to. If you click on the version number next to the site (if composer.json was valid and detected), PHP Monitor will automatically determine which versions of PHP that you have installed are compatible with the constraint and suggest a version to switch to. If you have PHP 7.4 and 8.0 installed, but the site requires ^8.0, PHP Monitor will propose switching to 8.0.

  • Changes in .ini files are detected in real-time. PHP Monitor now uses a very performant system API to watch various .ini files for the currently linked PHP version. If you make a change, PHP Monitor will update its information immediately.

  • Automatically update global composer dependencies when changing PHP versions. This is a new preference that you can enable, it's off by default. You can also manually update these global dependencies by using the menu item "Update Global Composer Dependencies...". Makes sense!

  • Fix My Valet. The "Force Link PHP" functionality has been renamed, and is now a bit more informative. If switching between PHP versions has failed, PHP Monitor will now also suggest to run Fix My Valet.

  • Link additional apps for the site list. By having a valid .phpmon.conf.json file in your home folder (~) you can now add additional apps that should be available in the site list's right-click menu. More information here. Make sure to have a valid JSON file here, or the apps will not be detected.

  • Alfred integration. You'll need to download the workflow file to get started. Please note that you need to have PHP Monitor up and running before any of these work, so you may want to start PHP Monitor when you boot up your Mac. You can then type "pm" in Alfred and use common interactions! (I will be looking into getting a Raycast extension in order soon.)

  • A one-time donation encouragement message. If you've launched the app more than a couple of times (or have switched between PHP versions like... 40 times), you'll get a one-time message to encourage you to donate a bit to keep the project going. Sending a tip really helps: thanks to the support of those who have donated before, I was able to bring you this entire list of changes. Thank you.

Improvements

  • The size of the main site list and its position is now remembered. No more manually resizing and repositioning the site list!
  • A new preference was added to hide the "PHP" next to the version number in the menu bar. For minimalists.
  • The services section is now available under the "First Aid & Services" menu item at the bottom. If all you use is PHP Monitor, you will never need this.
  • The app now looks better in the dark than ever with a color palette that supports both light and dark macOS appearance, and is different for both rendering modes. I previously used unflattering colors that were used in both modes. No more!

v4.2.0

26 Jan 23:51
Compare
Choose a tag to compare

Ever since PHP Monitor 4.1, the app now requires at least macOS 11 (Big Sur). If you're using an older version of macOS, please install v4.0, as it is the last version that will support older macOS releases.

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. It is recommended to run composer global update && valet install after upgrading, as this updates both Valet and your other dependencies.

What’s New In v4.2.0

This is a bugfix release for those folks having issues with v4.1.x, and mostly addresses #99 and fixes a performance issue in the site list.

  • Fixes an issue with starting the app if you have a recent version of Fig installed (#99).
  • Fixes a performance issue due to not caching the username of the user who is running the PHP Monitor process. This is a hotfix which is expanded upon in v5.0b2 by making a bunch of other things also a lot faster. In v4.2, this fix should help with scrolling speeds for users with many sites and should also help with search speed (regardless of the number of sites).

For changes in previous versions of 4.x, please see the older release notes.

v4.1.2

03 Jan 23:00
Compare
Choose a tag to compare

PHP Monitor 4.1 now requires at least macOS 11 (Big Sur). If you're using an older version of macOS, please install v4.0.

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. It is recommended to run composer global update && valet install after upgrading, as this updates both Valet and your other dependencies.

It is also recommended that you run valet trust again before running the app if you're upgrading from v4.1.1 or older. For more information on why, read on.

What’s New In v4.1.2

This is a bugfix release for those folks having issues with v4.1 and v4.1.1, and mostly addresses #77.

Previously, Valet was invoked via the ~/.composer/bin path, but it is possible that running valet secure has created an entry in sudoers that references the symlink in the Homebrew bin directory instead. This will cause all superuser-enabled interactions with Valet (secure & unsecure, for example) to always fail. (Oops. That's no good!)

Since valet trust will always create the symlink, and since running valet trust is a requirement for the app to work correctly, PHP Monitor now uses the symlinked binary instead. Said binary should be able to run with superuser permissions without issues.

PHP Monitor might ask for you to run valet trust again at launch. If you're not sure your Valet installation is supported by PHP Monitor, you can run:

valet trust --off
valet trust

For changes in 4.1 and 4.1.1, please see the older release notes.

v4.1.1

23 Dec 19:24
Compare
Choose a tag to compare

PHP Monitor 4.1 now requires at least macOS 11 (Big Sur). If you're using an older version of macOS, please install v4.0.

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. It is recommended to run composer global update && valet install after upgrading, as this updates both Valet and your other dependencies.

What’s New In v4.1.1

  • Fixed an issue with folders that include spaces. (#74)
  • In the list of linked and parked folders, there is now an indicator that displays if a site will be unreachable due to the folder name being incompatible with the browser (for now only spaces are checked).
  • Fixed an issue with the preloading of sites (linked and parked) which happened regardless of the amount of sites, leading to slowdown. To increase the speed of PHP Monitor, if you have more than 10 linked and parked sites, this load is deferred until you open the list for the first time.

What’s New In v4.1

  • Valet version detection. PHP Monitor will now alert you when your version of Valet does not properly support the latest version of PHP. Currently this means you need at least Valet 2.16.2 installed.
  • Detect Valet sites. PHP Monitor now has the option to display all linked and parked domains in a convenient list. You can then perform common operations on these sites: open them in your browser, secure/unsecure, unlink, open in your favorite editor... all from a single right-click! (Linking via the GUI is currently not possible yet, that’s coming later.)
  • Tweaked indicator in menu bar. Instead of just showing the version number, there’s a little bit of text on the left that says "PHP", to make it clear that this is PHP Monitor in action. (This was done to use as little space as possible, and as such there is currently no preference to disable this. I might add one later.)

This release also includes further refinements and bug fixes.

v4.1

22 Dec 22:50
Compare
Choose a tag to compare

PHP Monitor 4.1 now requires at least macOS 11 (Big Sur). If you're using an older version of macOS, please install v4.0.

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. It is recommended to run composer global update && valet install after upgrading, as this updates both Valet and your other dependencies.

What’s New In v4.1

  • Valet version detection. PHP Monitor will now alert you when your version of Valet does not properly support the latest version of PHP. Currently this means you need at least Valet 2.16.2 installed.
  • Detect Valet sites. PHP Monitor now has the option to display all linked and parked domains in a convenient list. You can then perform common operations on these sites: open them in your browser, secure/unsecure, unlink, open in your favorite editor... all from a single right-click! (Linking via the GUI is currently not possible yet, that’s coming later.)
  • Tweaked indicator in menu bar. Instead of just showing the version number, there’s a little bit of text on the left that says "PHP", to make it clear that this is PHP Monitor in action. (This was done to use as little space as possible, and as such there is currently no preference to disable this. I might add one later.)

This release also includes further refinements and bug fixes.

v4.0

28 Nov 14:39
Compare
Choose a tag to compare

Upgrade Instructions

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew.
Because a new version of PHP has dropped, however, it is recommended that you run the following:

brew update
brew upgrade phpmon
brew upgrade php
brew install [email protected]
valet install

This will upgrade your PHP installation to 8.1, and install 8.0 (which was previously the latest, stable release).
If you are having issues with conflicts or incorrect linking, please see #54.

What’s New In v4.0

  • Added an option to view the full PHP version number in the menu bar and switcher (#53)
  • Added an option to automatically restart PHP-FPM when an extension is toggled (#32)
  • Added support for symlinked .ini files in the .conf.d directory (requires gsed, which is installed as a dependency if you install or upgrade via Homebrew; users who download the app will need to run brew install gnu-sed to support this functionality) (#47)
  • Added php alias conflict detection, which is hopefully not needed once you've run brew update (#56).

v3.5

19 Oct 20:01
Compare
Choose a tag to compare

The recommended way of upgrading is running brew upgrade phpmon after you've installed PHP Monitor using Homebrew. If you haven't, you can download the .zip below. It is recommended to run valet install after upgrading.

Here's what's changed:

  • Added support for macOS Monterey
  • Added support for PHP 8.1 and 8.2 (currently pre-release versions, installable via here)

These minor changes were also made:

  • Improved detection of extensions (#45)
  • Adjusted notification body to fit in a single line on macOS Monterey (now that the icon is larger)
  • Code style fixes & minor performance improvements

Download available below or via Homebrew. SHA256: dd709325d41d842aeb773162431f946eb9493d285d994936804c1af45e4c7038