Platform
macOS
Operating system version
macOS 26.5.2 (25F84)
System architecture
ARM64 (M1, M2, etc)
Herd Version
1.29.0
PHP Version
PHP 8.5.8 (cli) (built: Jul 6 2026 06:38:54) (NTS clang 15.0.0)
Bug description
Running herd share on PHP 8.5 prints four PHP deprecation notices before the tunnel starts. They come from the laravel-zero code inside the bundled Expose phar, not from the shared site.
Two distinct deprecations:
PDO::MYSQL_ATTR_SSL_CA is deprecated as of PHP 8.5 in favour of Pdo\Mysql::ATTR_SSL_CA, used twice in laravel-zero/foundation/config/database.php (lines 61 and 81).
ReflectionProperty::setAccessible() is deprecated as of PHP 8.5 (it has been a no-op since PHP 8.1), called twice in laravel-zero/framework/src/Kernel.php (lines 212 and 214).
The tunnel itself works fine, so this is cosmetic: the notices just precede the share URL and make the output noisy. Expected: herd share produces no deprecation output on PHP 8.5.
Probably fixed by updating the laravel-zero dependencies in the Expose build that ships with Herd.
Steps to reproduce
- Set a site to PHP 8.5 (or have PHP 8.5 as the default CLI version).
- Run
herd share in that site's directory.
- The deprecation notices appear before the Expose UI.
Relevant log output
Deprecated: Constant PDO::MYSQL_ATTR_SSL_CA is deprecated since 8.5, use Pdo\Mysql::ATTR_SSL_CA instead in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/foundation/config/database.php on line 61
Deprecated: Constant PDO::MYSQL_ATTR_SSL_CA is deprecated since 8.5, use Pdo\Mysql::ATTR_SSL_CA instead in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/foundation/config/database.php on line 81
[2026-08-11 07:00:02] production.WARNING: Method ReflectionProperty::setAccessible() is deprecated since 8.5, as it has no effect since PHP 8.1 in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/framework/src/Kernel.php on line 212
[2026-08-11 07:00:02] production.WARNING: Method ReflectionProperty::setAccessible() is deprecated since 8.5, as it has no effect since PHP 8.1 in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/framework/src/Kernel.php on line 214
Platform
macOS
Operating system version
macOS 26.5.2 (25F84)
System architecture
ARM64 (M1, M2, etc)
Herd Version
1.29.0
PHP Version
PHP 8.5.8 (cli) (built: Jul 6 2026 06:38:54) (NTS clang 15.0.0)
Bug description
Running
herd shareon PHP 8.5 prints four PHP deprecation notices before the tunnel starts. They come from the laravel-zero code inside the bundled Expose phar, not from the shared site.Two distinct deprecations:
PDO::MYSQL_ATTR_SSL_CAis deprecated as of PHP 8.5 in favour ofPdo\Mysql::ATTR_SSL_CA, used twice inlaravel-zero/foundation/config/database.php(lines 61 and 81).ReflectionProperty::setAccessible()is deprecated as of PHP 8.5 (it has been a no-op since PHP 8.1), called twice inlaravel-zero/framework/src/Kernel.php(lines 212 and 214).The tunnel itself works fine, so this is cosmetic: the notices just precede the share URL and make the output noisy. Expected:
herd shareproduces no deprecation output on PHP 8.5.Probably fixed by updating the laravel-zero dependencies in the Expose build that ships with Herd.
Steps to reproduce
herd sharein that site's directory.Relevant log output
Deprecated: Constant PDO::MYSQL_ATTR_SSL_CA is deprecated since 8.5, use Pdo\Mysql::ATTR_SSL_CA instead in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/foundation/config/database.php on line 61
Deprecated: Constant PDO::MYSQL_ATTR_SSL_CA is deprecated since 8.5, use Pdo\Mysql::ATTR_SSL_CA instead in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/foundation/config/database.php on line 81
[2026-08-11 07:00:02] production.WARNING: Method ReflectionProperty::setAccessible() is deprecated since 8.5, as it has no effect since PHP 8.1 in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/framework/src/Kernel.php on line 212
[2026-08-11 07:00:02] production.WARNING: Method ReflectionProperty::setAccessible() is deprecated since 8.5, as it has no effect since PHP 8.1 in phar:///Users//Library/Application Support/Herd/bin/expose/vendor/laravel-zero/framework/src/Kernel.php on line 214