- RealShell is not reloaded during runtime (bugfix?)
- Container variables are now private(set)
- Initialization now also sets `webApi` property (new)
- It is only possible to run `bind` on a `Container` once now
(previously known as `prepare`)
- Preparation for upcoming WebApi to replace `curl` command
(for checking for updates)
The newer Swift native method is broadly supported and can properly
handle complex UTF-8 characters like emoji, whereas the old API does
not work correctly with emoji.
In most cases, this likely wouldn't have caused any issues but it does
make things a little cleaner now, and ensures we won't encounter emoji
trouble in the future.
- Added extra check for valid `brew info php --json` output
- Moved PHP binary check and PHP installation not broken checks to `core`
- Workaround for Homebrew logs appearing in JSON output
The way the testing classes are built with the singletons currently
prevents various test structs from being run at the same time.
I've adjusted the tests in the PHP Monitor EAP test configuration so
that they are not executed concurrently. This does slow down the test
suite but prevents odd crashes from individual tests interfering with
other tests.
It's not an ideal solution and I would like to address this in the
future, but I suspect this will be rather cumbersome. Since the app
does not actually suffer from this particular issue, this is something
worth investigating later.