Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow PHP Monitor to work without Valet #192

Closed
nicoverbruggen opened this issue Sep 8, 2022 · 5 comments
Closed

Allow PHP Monitor to work without Valet #192

nicoverbruggen opened this issue Sep 8, 2022 · 5 comments
Assignees
Labels
enhancement New feature or request. implemented & available via early access Available in Early Access preview for sponsors.
Milestone

Comments

@nicoverbruggen
Copy link
Owner

nicoverbruggen commented Sep 8, 2022

This has come up before, but for version 6.0 it might be worth considering this again.

Currently, PHP Monitor can distinguish between two different feature sets:

  • Valet 2.x: This disables site isolation and enables support for PHP 5.6
  • Valet 3.x: This enabled site isolation and removes support for PHP 5.6

The changes required to make this happen are minor, removing Valet altogether is a bigger change.

Impact

Unavailable Features

Removing the Valet requirement will disable the following integrations:

  • Services manager is disabled
  • Laravel Valet configuration finder is disabled
  • Domains list and all related functionality (domain management) is disabled
  • First Aid & Services functionality is limited, no more options to 'Fix My Valet' or restart Valet-specific services
  • Various Laravel Valet-related checks and warnings (missing socket files)

Unaffected Features

The following functionality would be mostly unaffected:

  • Global version switcher (only affects the linked PHP version and does not restart Valet-specific services)
  • Locating PHP configuration files
  • Composer integration (including automatic composer global update when switching)
  • PHP limits (memory, uploads, etc)
  • Detection & toggling of PHP extensions for the currently active PHP installation
  • Xdebug integration & mode toggling
  • Reading presets from the configuration file & applying them
  • Generation of helper files that can be sourced to enable a specific PHP version in a given terminal
@nicoverbruggen nicoverbruggen added the investigation needed Further investigation is needed at some point label Sep 8, 2022
@nicoverbruggen nicoverbruggen added this to the v6.0 milestone Sep 8, 2022
@nicoverbruggen nicoverbruggen self-assigned this Sep 8, 2022
@unansweredocd
Copy link

This would be awesome, I recently stopped using Valet and phpmon because I didn't like the global composer update that was happening every single time I switched php versions (I understand why it needs to happen, just didn't like it)

Now that I only use php itself, nginx and dnsmasq, it would be so much nicer to just click a few things and have the php switch done for me.

Hope this makes it to the v6 release.

@nicoverbruggen
Copy link
Owner Author

nicoverbruggen commented Sep 21, 2022

@unansweredocd You technically can disable the global Composer update! There are a few requirements:

  1. your global dependencies are compatible with all versions of PHP you wish to switch between (this can be troublesome)
  2. you ran composer global update while on the lowest possible PHP version (or you locked your global config to a specific version for compatibility)

I do this myself because I don't have many global packages installed (mostly Valet and linting tools). It's for that very reason I included a "Automatically update global dependencies" toggle in PHP Monitor, actually.

Concerning a PHP Monitor without Valet: this is certainly making it into v6. It'll be a while, but it'll be part of the next major update! Hope it comes in handy 😄 It's one of the new changes I'm quite excited about!

@Kuttoh
Copy link

Kuttoh commented Sep 26, 2022

If the update happens, does it mean that the "unavailable features" will be removed, or just disabled by default?
I totally understand the use case of supporting non-valet set-ups, but I can't help but hope that it doesn't come at the cost of the valet features PHP Monitor offers out of the box 🤞🏾

@nicoverbruggen
Copy link
Owner Author

If the update happens, does it mean that the "unavailable features" will be removed, or just disabled by default?

Some features will not show up if Valet isn't installed.

It'll be like how the Xdebug feature works today: if you don't have it installed, some features are simply hidden from you. 😄

I don't plan on removing any features!

@Kuttoh
Copy link

Kuttoh commented Sep 26, 2022

Ah, awesome! Got me worried for a second there 😆

@nicoverbruggen nicoverbruggen added enhancement New feature or request. WIP on dev Working on this in the development branch. and removed investigation needed Further investigation is needed at some point labels Feb 13, 2023
@nicoverbruggen nicoverbruggen added fixed in upcoming release Fixed in the upcoming release! feature implemented Feature request was implemented. and removed WIP on dev Working on this in the development branch. labels Feb 26, 2023
@nicoverbruggen nicoverbruggen added implemented & available via early access Available in Early Access preview for sponsors. and removed fixed in upcoming release Fixed in the upcoming release! feature implemented Feature request was implemented. labels Mar 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request. implemented & available via early access Available in Early Access preview for sponsors.
Projects
None yet
Development

No branches or pull requests

3 participants