1
0
mirror of https://github.com/nicoverbruggen/phpmon.git synced 2026-03-26 06:00:07 +01:00
Commit Graph

1780 Commits

Author SHA1 Message Date
ab34716273 Add a test that checks if language change works 2026-02-23 13:33:45 +01:00
44a4099bfa 🌐 Add localized(for:), use Settings instead of Preferences 2026-02-23 13:33:28 +01:00
4490dfb79e ♻️ Reworked window management
- Now a language change does no longer require an app restart
- Windows are managed via a WindowManager (alias for WindowCoordinator)
- Removed obsolete and unused `timer` from App
- Updated Japanese localization for label that was too long
2026-02-23 13:07:17 +01:00
67ad171700 Add tests for opening refactored views 2026-02-19 12:32:38 +01:00
1a9bf38a5d ♻️ Reworked AddSiteVC, AddProxyVC
- Reworked add site view with SwiftUI
- Reworked add proxy view with SwiftUI
- Add missing icon for "Remove proxy" in context menu
2026-02-19 12:22:38 +01:00
04d9f28edb ♻️ Replace SelectionVC 2026-02-18 18:11:29 +01:00
2d30d512e4 📝 Document requirement of legacy preview execution 2026-02-18 16:02:24 +01:00
5408d61ba0 ♻️ Reworked various startup fixes
Some further testing is required, and an improved UX is also something that needs to be considered.
2026-02-17 18:20:05 +01:00
b95faa6895 Add automatic fix during startup (sudoers step only for now) 2026-02-17 17:03:44 +01:00
ed6a02e253 ♻️ Add back reworked AppleScript w/ admin privileges
This new script also returns the output of the command, which happens to be discardable, too.
This makes it so that when the output is important and needs to be checked, it can be, and when it is irrelevant (when restarting services, for example) it can simply be ignored.
2026-02-17 15:19:16 +01:00
9856840533 ♻️ Use discardableResult
- Removed ShellProtocol.quiet(), now that pipe() is discardable
- Detecting PHP versions is also discardable
- The system command is also discardable

This is a nice quality of life change overall, and gets rid of a couple
of silly `_ =` assignments.
2026-02-17 15:17:34 +01:00
d0ce16fad2 🐛 Prevent startup timeout alert when environment check fails 2026-02-17 14:20:14 +01:00
b3bd24d08d ♻️ Rework administrative scripts 2026-02-17 14:19:39 +01:00
d90bd555d7 🌐 Add translation for new preference 2026-02-17 13:25:00 +01:00
e34ae1f5bb ♻️ Reworked Preferences
- Preferences is now cleaner
- Documented how to add new preference
- Added preference to hide icons (for a pre-Tahoe look)
- Updated .swiftlint for line_length
2026-02-17 12:52:03 +01:00
251c53b7bb Conditional tests
- RealWebApiTest requires api.phpmon.test to be reachable or skips
- CommandTest requires php binary or skips
2026-02-16 16:15:41 +01:00
353bf8ffff 📝 Add instructions for tests 2026-02-16 13:29:29 +01:00
8d63165129 📝 Update documentation 2026-02-16 11:38:43 +01:00
06d52e03f9 Run unit tests on push 2026-02-16 11:27:58 +01:00
bc6546fb27 🔧 Do not use configuration 2026-02-13 13:11:44 +01:00
097714f06a 🐛 Fix incorrect localization check 2026-02-13 13:10:00 +01:00
abd3e9aa01 📝 Update README about third-party integrations 2026-02-07 13:03:04 +01:00
02c7ca449b 🔧 Bump build version 2026-02-07 12:27:39 +01:00
2e823c4024 🌐 Updated README and translations
- Updated all translations w/ a pass via Opus 4.6 to fix obvious issues
- Added missing translations
- Updated existing translations that needed modifications
- Resolved duplicate issues
- Updated README about third-party integrations
- Removed obsolete translation script
- Added script to bulk verify all translations (w/ plutil)
2026-02-07 12:22:35 +01:00
54d1ef10c5 ♻️ Rework interapp handling, ensure preferences UI observes changes 2026-02-06 19:23:25 +01:00
228d85a861 ♻️ Mark promptToEnableIntegrations as MainActor 2026-02-06 18:09:56 +01:00
cc76f3f6a7 ♻️ WIP: Adjust text for alert 2026-02-06 15:49:20 +01:00
d6d1d3ec0c ♻️ WIP: Integrations are off by default 2026-02-06 15:39:59 +01:00
17339c0aa5 🐛 Add percent encoding for package name 2026-02-06 15:14:24 +01:00
0ab56df954 🐛 Configuration files are reloaded gracefully 2026-02-06 15:11:27 +01:00
b7a66d2d8f 🐛 Clean up loading custom preferences 2026-02-06 15:06:45 +01:00
604abc5704 🐛 Clean up temporary files prior to phpinfo() 2026-02-06 15:00:18 +01:00
c9d1d35724 🐛 Avoid InterApp DoS due to invalid split 2026-02-06 14:55:04 +01:00
faaa075e31 🐛 Strip invalid characters from app names 2026-02-06 14:53:39 +01:00
485ac02cb5 🐛 Escape single quotes to prevent shell injection 2026-02-06 14:51:48 +01:00
ae4f436b09 🐛 Refactor custom environment variables 2026-02-06 14:39:41 +01:00
ee5971e806 🔧 Bump build version 2026-02-01 23:53:03 +01:00
7c140d4f62 💄 swiftlint feedback about trailing comma 2026-02-01 23:52:01 +01:00
3127fff1d0 🐛 Ensure UI is updated on main thread 2026-02-01 23:51:44 +01:00
ee7cfdd056 🐛 Cleanup RealShell's timeout handling 2026-02-01 12:39:09 +01:00
6d92dc8168 🔥 Cleanup experimental PHP versions 2026-01-30 13:35:12 +01:00
2fe58bcb5b ♻️ Ensure services status is known at launch
- Added shell pipe timeout (w/ new tests)
- Reworked ServicesManager to be blocking for startup (10s)
- Renamed queues to be more consistent
2026-01-30 13:26:04 +01:00
4fc4737434 🚀 Version 26.01 v26.01 2026-01-24 15:08:13 +01:00
0c927172f8 📝 Document process (standardize pre-tag, changelog) 2026-01-24 14:26:21 +01:00
9afb993e03 🔧 Bump build 2026-01-21 15:15:00 +01:00
c48efcbe59 Ensure tests pass without waiting for initialization 2026-01-21 15:05:46 +01:00
41d33de92a 🔧 Bump build 2026-01-21 14:51:43 +01:00
c00add6500 ♻️ UITestCase.launch now waits for status item to be enabled 2026-01-21 14:51:18 +01:00
1eb760e148 Disable status item initially 2026-01-21 14:50:50 +01:00
ad0eb5ca89 🐛 Re-initialize PhpEnvironments for w/ Fake (Container) 2026-01-21 14:23:49 +01:00