Skip to content

Update dependency orchestra/testbench to v10 #51

New issue

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

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

Already on GitHub? # to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 24, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
orchestra/testbench (source) ^8.5 -> ^10.0 age adoption passing confidence

Release Notes

orchestral/testbench (orchestra/testbench)

v10.0.0

Compare Source

Changes
  • Update support for Laravel Framework v12.
  • Update Orchestra\Testbench\TestCase to use Illuminate\Foundation\Testing\Concerns\InteractsWithViews trait.
Removed
  • Remove deprecated functions:
    • Orchestra\Testbench\once()
    • Orchestra\Testbench\transform_relative_path()
  • Remove deprecated methods in Orchestra\Testbench\Concerns\CreatesApplication trait:
    • getBasePath()
    • getDefaultApplicationBootstrapFile()
  • Remove deprecated methods in Orchestra\Testbench\Concerns\InteractsWithMigrations trait:
    • loadMigrationsWithoutRollbackFrom()
    • loadLaravelMigrationsWithoutRollback()
    • runLaravelMigrationsWithoutRollback()

v9.11.0

Compare Source

Changes
Testbench Changes
Added
  • Use orchestra/sidekick.
  • Implements Illuminate\Foundation\Testing\Concerns\InteractsWithViews.
Changes
  • Supports for Laravel Framework 11.43.0.
Deprecated
  • Re-add deprecated getBasePath() method pending removal in Testbench 10.0.

v9.10.0

Compare Source

Changes
Testbench Changes
Added
  • Add Orchestra\Testbench\Concerns\CreatesApplication::resolveApplicationFacades() method.
  • Add Orchestra\Testbench\Concerns\CreatesApplication::getApplicationBasePath() method as replacement to Orchestra\Testbench\Concerns\CreatesApplication::getBasePath().
  • Add Orchestra\Testbench\Foundation\Application::deleteVendorSymlink() method.
Changes
  • Dynamically resolve workbench namespace for discover.factories.
  • Clear vendor symlink when terminating Testbench CLI.
  • Update config/database.php skeleton file.

v9.9.0

Compare Source

Changes
Testbench Changes
Added
  • Add ability to symlink directory in from skeleton to package.
Changes
  • Update skeleton to match v11.5.0.
  • Add Orchestra\Testbench\Workbench\Workbench::flushCachedClassAndNamespaces() to flush cached namespaces and classes during installation.
  • Use realpath() on vendor:publish output.

v9.8.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\transform_realpath_to_relative() function.
  • Override Laravel's vendor:publish command.
Changes
  • Add $force parameter to Orchestra\Testbench\Workbench\Workbench::detectNamespace() method.

v9.7.0

Compare Source

Changes
Testbench Changes
Added
  • Added ability to detect Workbench namespace via Orchestra\Testbench\Workbench\Workbench::detectNamespace() method.
  • Added ability to detect the default user model via Orchestra\Testbench\Workbench\Workbench::applicationUserModel() method.
  • Added support for authentication routes within Workbench by configurating workbench.auth config to true.
  • Added new package:sync-skeleton command.
Changes
  • Testbench Dusk integration improvements:
    • Refactor Orchestra\Testbench\Bootstrap\LoadConfiguration and Orchestra\Testbench\Bootstrap\LoadConfigurationWithWorkbench to allow being extended by Testbench Dusk.
    • Refactor Orchestra\Testbench\Console\Commander.
  • Add $tty parameter to Orchestra\Testbench\remote() function.
  • Refactor Orchestra\Testbench\Foundation\Bootstrap\CreateVendorSymlink class and mark it as @api.
  • Add $backupExistingFile and $resetOnTerminating parameter to following methods in Orchestra\Testbench\Foundation\Console\Concerns\CopyTestbenchFiles trait:
    • copyTestbenchConfigurationFile()
    • copyTestbenchDotEnvFile()
  • Supports laravel/serializable-closure v2.
Deprecated
  • Deprecate Orchestra\Testbench\Foundation\Console\Concerns\HandleTerminatingConsole trait, use Orchestra\Testbench\Foundation\Console\TerminatingConsole class instead.

v9.6.1

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes route:cache when health: true configured using testbench.yaml.
  • Fixes compatibility with Laravel Framework v11.33.0.

v9.6.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Foundation\Bootstrap\DeleteVendorSymlink class.
  • Added Orchestra\Testbench\Concerns\InteractsWithMockery trait.
  • Added --database option to package:create-sqlite-db command.
  • Added --database and --all options to package:drop-sqlite-db command.
  • Added Orchestra\Testbench\php_binary() function.
  • Allows laravel/serializable-closure 2.
  • Added draft support for PHP 8.4.
Changes
  • Ensure database directory exists when running package:create-sqlite-db.
  • Allow configuring PHP_CLI_SERVER_WORKERS via Composer Script.
  • Improves CTRL+C and CTRL+BREAK supports on Windows without pcntl extension.
  • Orchestra\Testbench\Foundation\Console\Actions\GeneratesFile should be able to handle $from and $to when given as false or null.
Fixed
  • Fixed #[WithMigration('queue')] should load the default migrations.

v9.5.2

Compare Source

Changes
Testbench Changes
Fixes
  • Prevent seeder from being executed when shouldSeed() exists and return false.

v9.5.1

Compare Source

Changes
Testbench Changes
Changes
  • Listen to SIGHUP, SIGUSR1, and SIGUSR2 signals via Testbench CLI.
  • Update config/concurrency.php configuration file.
Fixes
  • Fixes Testbench CLI signals via serve command to reset published .env and testbench.yaml.

v9.5.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Attributes\RequiresDatabase attribute class.
  • Added markTestSkippedWhen() and markTestSkippedUnless() assertion helper to conditionally handle markTestSkipped().
  • Added Orchestra\Testbench\default_migration_path() helper function.
  • Added Orchestra\Testbench\laravel_vendor_exists() helper function.
  • Allows TestCase to inherit Attributes defined on parent TestCase by @​BlackLanzer in #​233.
Changes
  • Allow Testbench to delete vendor symlink directory if it was created while running tests.
Fixes
  • Fixes view.paths configuration not being updated to include workbench/resources/views due to IoC booting sequence.
Deprecated
  • Deprecated Orchestra\Testbench\laravel_migration_path(), use default_migration_path() instead.
New Contributors

v9.4.0

Compare Source

Changes
Testbench Changes
Added
  • Added artisan binary to Laravel skeleton.
  • Added Orchestra\Testbench\join_paths() function.
  • Added Orchestra\Testbench\Attributes\UsesVendor attribute class.
  • Added defineStashRoutes() method to register adhoc route for test.
Changes
  • Improvements to Orchestra\Testbench\default_skeleton_path(), Orchestra\Testbench\package_path(), and Orchestra\Testbench\workbench_path() usage based on new Orchestra\Testbench\join_paths() function.

v9.3.0

Compare Source

Changes
Testbench Changes
Changes
  • Update Orchestra\Testbench\Foundation\Console\Actions\GeneratesFile to remove .gitkeep file when directory contain one or more files.
  • Code Improvements.
Fixes
  • Fixes InteractsWithPublishedFiles should only flush published files within database/migrations directory.

v9.2.0

Compare Source

Changes
Testbench Changes
Added
  • Added new attributes:
    • Orchestra\Testbench\Attributes\ResolvesLaravel
    • Orchestra\Testbench\Attributes\UsesFrameworkConfiguration
  • Allows to discover factories using Workbench to map Workbench\App\Models to Workbench\Database\Factories classes.
  • Allows to auto discover console command classes from workbench/app/Console/Commands.
Changes
  • Bump minimum support to Laravel Framework v11.11.
  • Implements JsonSerializable to Orchestra\Testbench\Foundation\UndefinedValue.
  • Update skeleton to use workbench as default environment value.
  • Allow Orchestra\Testbench\Attributes\Define and Orchestra\Testbench\Attributes\DefineEnvironment to be used on the class level by @​danjohnson95
Fixes
  • Ensure usesTestingFeature() attribute registration is loaded before class attributes instead of method attributes.

v9.1.2

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes Orchestra\Testbench\Workench\Workbench::applicationExceptionHandler() usage to detect Workbench\App\Exceptions\Handler class.
  • Fixes Orchestra\Testbench\Console\Kernel and Orchestra\Testbench\Foundation\Console\Kernel unable to discover commands.

v9.1.1

Compare Source

Changes
Testbench Changes
Changes
  • Utilise Orchestra\Testbench\package_path() function instead of TESTBENCH_WORKING_PATH constant.
  • Update configuration to match Laravel Framework v11.8.0.
Fixes
  • Fixes Orchestra\Testbench\Attributes\RequiresLaravel attribute usage.

v9.1.0

Compare Source

Changes
Testbench Changes
Changes
  • Uses TESTBENCH_WORKING_PATH from environment variable before fallback to getcwd().
  • PHPStan Improvements.
  • Add support for PHPUnit 11.1.
  • Update skeleton to match v11.0.7.
Fixes
  • Fixes routing registration using macro with Workbench.

v9.0.4

Compare Source

Changes
Testbench Changes
Changes
  • Allows Orchestra\Testbench\remote to accept $env with either array or string.
  • Includes TESTBENCH_PACKAGE_REMOTE=true when running command using Orchestra\Testbench\remote.
  • Flush Static Improvements.
  • Revert setting workbench environment variable when Testbench CLI is used outside of testing.
Fixes
  • Fixes serve command.
  • Fixes runningInUnitTests() returning true when not running tests via Testbench CLI.

v9.0.3

Compare Source

Changes
  • Update minimum support for Testbench Core v9.0.9+. (v9.0.7...v9.0.9)
  • Update minimum support for Laravel Framework 11.1.0.
Testbench Changes
Changes
  • Add support for HASH_VERIFY environment variables.
Fixes
  • Force reset RefreshDatabaseState when using LazilyRefreshDatabase with SQLite :in-memory: database connections.

v9.0.2

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes RefreshDatabase to be executed on tearDown() only limited when ad-hoc migrations was added during test.

v9.0.1

Compare Source

Changes
Testbench Changes
Changes
  • Run ResetRefreshDatabaseState via tearDownTheTestEnvironmentUsingTestCase() method.
  • Check against RefreshDatabaseState::$migrated and RefreshDatabaseState::$lazilyRefreshed before loading migration paths to the instance of migrator.
  • Update skeleton to match v11.0.3.
  • Revert default skeleton database collations to utf8mb4_unicode_ci.
Fixes
  • Fixes beforeApplicationDestroyed() usage on loadLaravelMigrations() method.
  • Fixes RefreshDatabase usage does not reset the database migrations between tests.
  • Fixes class_implements() should only be executed if the Attribute class exists.
  • Testbench CLI should prioritize application kernels defined via bootstrap/app.php when configured using a custom skeleton.

v9.0.0

Compare Source

Added
  • Added support for PHPUnit 11.
Changes
  • Update support for Laravel Framework v11.
  • Increase minimum PHP version to 8.2 and above (tested with 8.2 and 8.3).
Deprecated
  • Deprecate Orchestra\Testbench\Concerns\HandlesAnnotations in line with PHPUnit removal support for meta-comment support using annotation.
Removed
  • Remove deprecated Orchestra\Testbench\Concerns\Database\HandlesConnections trait.
  • Removed deprecated create-sqlite-db and drop-sqlite-db standalone commands.

v8.33.0

Compare Source

Changes
Testbench Changes
Added
  • Use orchestra/sidekick.
  • Implements Illuminate\Foundation\Testing\Concerns\InteractsWithViews.
Deprecated
  • Re-add deprecated getBasePath() method pending removal in Testbench 10.0.

v8.32.0

Compare Source

Changes
Testbench Changes
Added
  • Add Orchestra\Testbench\Concerns\CreatesApplication::resolveApplicationFacades() method.
  • Add Orchestra\Testbench\Concerns\CreatesApplication::getApplicationBasePath() method as replacement to Orchestra\Testbench\Concerns\CreatesApplication::getBasePath().
  • Add Orchestra\Testbench\Foundation\Application::deleteVendorSymlink() method.
Changes
  • Dynamically resolve workbench namespace for discover.factories.
  • Clear vendor symlink when terminating Testbench CLI.

v8.31.0

Compare Source

Changes
Testbench Changes
Added
  • Add ability to symlink directory in from skeleton to package.
Changes
  • Add Orchestra\Testbench\Workbench\Workbench::flushCachedClassAndNamespaces() to flush cached namespaces and classes during installation.
  • Use realpath() on vendor:publish output.

v8.30.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\transform_realpath_to_relative() function.
  • Override Laravel's vendor:publish command.
Changes
  • Add $force parameter to Orchestra\Testbench\Workbench\Workbench::detectNamespace() method.

v8.29.0

Compare Source

Changes
Testbench Changes
Added
  • Added ability to detect Workbench namespace via Orchestra\Testbench\Workbench\Workbench::detectNamespace() method.
  • Added ability to detect the default user model via Orchestra\Testbench\Workbench\Workbench::applicationUserModel() method.
  • Added support for authentication routes within Workbench by configurating workbench.auth config to true.
  • Added new package:sync-skeleton command.
Changes
  • Testbench Dusk integration improvements:
    • Refactor Orchestra\Testbench\Bootstrap\LoadConfiguration and Orchestra\Testbench\Bootstrap\LoadConfigurationWithWorkbench to allow being extended by Testbench Dusk.
    • Refactor Orchestra\Testbench\Console\Commander.
  • Add multiple environment variables to Laravel 10 skeleton's configuration files based on changes made for Laravel 11.
  • Add $tty parameter to Orchestra\Testbench\remote() function.
  • Refactor Orchestra\Testbench\Foundation\Bootstrap\CreateVendorSymlink class and mark it as @api.
  • Add $backupExistingFile and $resetOnTerminating parameter to following methods in Orchestra\Testbench\Foundation\Console\Concerns\CopyTestbenchFiles trait:
    • copyTestbenchConfigurationFile()
    • copyTestbenchDotEnvFile()
Deprecated
  • Deprecate Orchestra\Testbench\Foundation\Console\Concerns\HandleTerminatingConsole trait, use Orchestra\Testbench\Foundation\Console\TerminatingConsole class instead.

v8.28.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Foundation\Bootstrap\DeleteVendorSymlink class.
  • Added Orchestra\Testbench\Concerns\InteractsWithMockery trait.
  • Added --database option to package:create-sqlite-db command.
  • Added --database and --all options to package:drop-sqlite-db command.
  • Added Orchestra\Testbench\php_binary() function.
  • Allows laravel/serializable-closure 2.
Changes
  • Change resolveApplicationResolvingCallback() method visibility from private to protected.
  • Ensure database directory exists when running package:create-sqlite-db.
  • Allow configuring PHP_CLI_SERVER_WORKERS via Composer Script.
  • Improves CTRL+C and CTRL+BREAK supports on Windows without pcntl extension.
  • Orchestra\Testbench\Foundation\Console\Actions\GeneratesFile should be able to handle $from and $to when given as false or null.

v8.27.2

Compare Source

Changes
Testbench Changes
Fixes
  • Prevent seeder from being executed when shouldSeed() exists and return false.

v8.27.1

Compare Source

Changes
Testbench Changes
Changes
  • Listen to SIGHUP, SIGUSR1, and SIGUSR2 signals via Testbench CLI.
Fixes
  • Fixes Testbench CLI signals via serve command to reset published .env and testbench.yaml.

v8.27.0

Compare Source

Changes
Testbench Changes
Added
  • Added markTestSkippedWhen() and markTestSkippedUnless() assertion helper to conditionally handle markTestSkipped().
  • Added Orchestra\Testbench\default_migration_path() helper function.
  • Added Orchestra\Testbench\laravel_vendor_exists() helper function.
  • Allows TestCase to inherit Attributes defined on parent TestCase by @​BlackLanzer in orchestral/testbench-core#233.
Changes
  • Allow Testbench to delete vendor symlink directory if it was created while running tests.
Fixes
  • Fixes view.paths configuration not being updated to include workbench/resources/views due to IoC booting sequence.
  • Fixes compatibility with PHPUnit 10.3.
Deprecated
  • Deprecated Orchestra\Testbench\laravel_migration_path(), use default_migration_path() instead.
New Contributors

v8.26.0

Compare Source

Changes
Testbench Changes
Added
  • Added artisan binary to Laravel skeleton.
  • Added Orchestra\Testbench\join_paths() function.
  • Added Orchestra\Testbench\Attributes\UsesVendor attribute class.
  • Added defineStashRoutes() method to register adhoc route for test.
Changes
  • Improvements to Orchestra\Testbench\default_skeleton_path(), Orchestra\Testbench\package_path(), and Orchestra\Testbench\workbench_path() usage based on new Orchestra\Testbench\join_paths() function.

v8.25.0

Compare Source

Changes
Testbench Changes
Changes
  • Update Orchestra\Testbench\Foundation\Console\Actions\GeneratesFile to remove .gitkeep file when directory contain one or more files.
  • Code Improvements.
Fixes
  • Fixes InteractsWithPublishedFiles should only flush published files within database/migrations directory.

v8.24.0

Compare Source

Changes
Testbench Changes
Added
  • Added new attributes:
    • Orchestra\Testbench\Attributes\ResolvesLaravel
    • Orchestra\Testbench\Attributes\UsesFrameworkConfiguration
  • Allows to discover factories using Workbench to map Workbench\App\Models to Workbench\Database\Factories classes.
  • Allows to auto discover console command classes from workbench/app/Console/Commands.
Changes
  • Implements JsonSerializable to Orchestra\Testbench\Foundation\UndefinedValue.
  • Update skeleton to use workbench as default environment value.
  • Allow Orchestra\Testbench\Attributes\Define and Orchestra\Testbench\Attributes\DefineEnvironment to be used on the class level by @​danjohnson95
Fixes
  • Ensure usesTestingFeature() attribute registration is loaded before class attributes instead of method attributes.

v8.23.2

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes Orchestra\Testbench\Workench\Workbench::applicationExceptionHandler() usage to detect Workbench\App\Exceptions\Handler class.

v8.23.1

Compare Source

Changes
Testbench Changes
Changes
  • Utilise Orchestra\Testbench\package_path() function instead of TESTBENCH_WORKING_PATH constant.
Fixes
  • Fixes Orchestra\Testbench\Attributes\RequiresLaravel attribute usage.

v8.23.0

Compare Source

Changes
Testbench Changes
Changes
  • Uses TESTBENCH_WORKING_PATH from environment variable before fallback to getcwd().
  • PHPStan Improvements.
Fixes
  • Backport fixes to routing registration using macro with Workbench.

v8.22.3

Compare Source

Changes
Testbench Changes
Fixes
Changes
  • Allows Orchestra\Testbench\remote to accept $env with either array or string.
  • Includes TESTBENCH_PACKAGE_REMOTE=true when running command using Orchestra\Testbench\remote.
  • Flush Static Improvements.
  • Revert setting workbench environment variable when Testbench CLI is used outside of testing.
Fixes
  • Fixes serve command.
  • Fixes runningInUnitTests() returning true when not running tests via Testbench CLI.

v8.22.2

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes RefreshDatabase to be executed on tearDown() only limited when ad-hoc migrations was added during test.

v8.22.1

Compare Source

Changes
Testbench Changes
Changes
  • Run ResetRefreshDatabaseState via tearDownTheTestEnvironmentUsingTestCase() method.
  • Check against RefreshDatabaseState::$migrated and RefreshDatabaseState::$lazilyRefreshed before loading migration paths to the instance of migrator.
Fixes
  • Fixes beforeApplicationDestroyed() usage on loadLaravelMigrations() method.
  • Fixes RefreshDatabase usage does not reset the database migrations between tests.
  • Fixes class_implements(): Class AllowDynamicProperties does not exist and could not be loaded error on PHP 8.1 and lower.

v8.22.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Attributes\RequiresLaravel attribute.
  • Added Orchestra\Testbench\Foundation\Env::has() method.
  • Added Orchestra\Testbench\load_migration_paths() function.
  • Added Orchestra\Testbench\once() function.
  • Added usesRefreshDatabaseTestingConcern() helper method to Orchestra\Testbench\Concerns\InteractsWithTestCase trait.
Changes
  • Validate MYSQL_*, MSSQL_*, SQLITE_* and POSTGRES_* environment variables before trying to override the configuration values.
  • Allow passing $command to Orchestra\Testbench\remote() function using array instead of just string.
  • Allow to following functions to accept array of paths:
    • Orchestra\Testbench\default_skeleton_path()
    • Orchestra\Testbench\package_path()
    • Orchestra\Testbench\workbench_path()
Fixes
  • Fixes Orchestra\Testbench\Attributes\ResetRefreshDatabaseState attribute declaration to only Attribute::TARGET_CLASS.

v8.21.1

Compare Source

Changes
Testbench Changes
Changes
  • Support nested configuration files.
Fixes
  • Fixes issue with Livewire testing where calling $router->getRoutes()->refreshActionLookups() caused tests to fail.

v8.21.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Attributes\WithImmutableDates attribute to force Illuminate\Support\Date to use Carbon\CarbonImmutable.
  • Added the following helper functions:
    • Orchestra\Testbench\default_skeleton_path
    • Orchestra\Testbench\refresh_router_lookups

v8.20.0

Compare Source

Changes
  • Update minimum support for Testbench Core v8.20.0+. (v8.19.0...v8.20.0)
  • Bump minimum laravel/framework to 10.40.0.
Testbench Changes
Added
  • Flush error and exception handlers between tests using Orchestra\Testbench\Bootstrap\HandleExceptions::forgetApp() for PHPUnit 10.
Changes
  • Run route:cache using Orchestra\Testbench\remote function.
  • Add following traits to setUpTheTestEnvironmentTraitToBeIgnored method:
    • Orchestra\Testbench\Concerns\InteractsWithPest
    • Orchestra\Testbench\Concerns\InteractsWithTestCase

v8.19.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Features\TestingFeature as replacement to HandlesTestingFeature trait.
  • Added support for LOG_DEPRECATIONS_WHILE_TESTING (default to true) environment variables.
  • Add following interfaces for Attribute handling:
    • Orchestra\Testbench\Contracts\Attributes\AfterAll
    • Orchestra\Testbench\Contracts\Attributes\AfterEach
    • Orchestra\Testbench\Contracts\Attributes\BeforeAll
    • Orchestra\Testbench\Contracts\Attributes\BeforeEach
Changes
  • Bump minimum laravel/framework to 10.39.0.
  • Refactor Orchestra\Testbench\Concerns\InteractsWithPHPUnit.
  • Utilise Illuminate\Filesystem\join_paths function.
Deprecated
  • Deprecate Orchestra\Testbench\Concerns\HandlesTestingFeature trait.

v8.18.0

Compare Source

Changes
Testbench Changes
Added
  • Added Orchestra\Testbench\Attributes\RequiresEnv attribute to force an environment variables to be required for the test.
  • Added Orchestra\Testbench\Attributes\WithConfig attribute add a configuration value for the test.
  • Added Orchestra\Testbench\Attributes\WithEnv attribute add an environment variable value for the test.
  • Added set() and forget() methods to Orchestra\Testbench\Foundation\Env.
  • Improves support for testing with Pest using orchestra/pest-plugin-testbench.

v8.17.0

Compare Source

Changes
Testbench Changes
Added
  • Supports Workbench discovers.components configuration.
Changes
  • Sync view.paths configuration when Workbench discover views.

v8.16.0

Compare Source

Changes
Added
  • Added Orchestra\Testbench\Attributes\ResetRefreshDatabaseState attribute to force refreshing database before executing the test.
  • Added Orchestra\Testbench\Foundation\Bootstrap\SyncDatabaseEnvironmentVariables bootstrap class and allow database collation to be configurable via environment variables using MYSQL_COLLATION, POSTGRES_COLLATION and MSSQL_COLLATION.
  • Added encode() method to Orchestra\Testbench\Foundation\Env class.
Changes
  • Refactor handling attributes:
    • Add ability to handle actions directly from the attribute.
    • Add ability to set defer when using Orchestra\Testbench\Attributes\DefineDatabase.
  • Add #[Override] attribute to relevant methods, this require symfony/polyfill-php83 as backward compatibility for PHP 8.1 and 8.2.
  • Move $setupHasRun property to Orchestra\Testbench\Concerns\ApplicationTestingHooks.
Fixes
  • Fixes registering discovery paths when the path doesn't exist.
Deprecated
  • Deprecate Orchestra\Testbench\Concerns\Database\HandlesConnections trait.

v8.15.0

Compare Source

Changes
Testbench Changes
Added
  • Added new PHPUnit Attribute to run the default laravel, cache, notifications, queue and session database migrations using Orchestra\Testbench\Attributes\WithMigration.
  • Added Orchestra\Testbench\defined_environment_variables() function.
  • Added Orchestra\Testbench\laravel_migration_path() function.
  • Added Orchestra\Testbench\remote() function.
Changes
  • Mark the following classes as @api:
    • Orchestra\Testbench\Foundation\Application
    • Orchestra\Testbench\Foundation\Config
    • Orchestra\Testbench\Foundation\Env
  • Cache results from Orchestra\Testbench\PHPUnit\AttributeParser.

v8.14.1

Compare Source

Changes
  • Update minimum support for Testbench Core v8.14.4+. (v8.14.0...v8.14.4)
  • Add support for Workbench 8.0+.

v8.14.0

Compare Source

Changes
  • Update minimum support for Testbench Core v8.14.0+. (v8.13.0...v8.14.0)
  • Add support for Workbench 1.0+.
Testbench Changes
Added
  • Added Orchestra\Testbench\Workbench\Workbench to handle integrations with Workbench.
  • Added Orchestra\Testbench\Foundation\Config::getWorkbenchDiscoversAttributes() method.
  • Added Orchestra\Testbench\Concerns\Database\InteractsWithSqliteDatabaseFile trait.
  • Added following methods to Orchestra\Testbench\Foundation\Application:
    • make()
    • makeFromConfig()
    • createFromConfig()
  • Added support for PHPUnit Attribute as replacements to Annotations:
    • @define-env and @environment-setup will be replaced with Orchestra\Testbench\Attributes\DefineEnvironment.
    • @define-db will be replaced with Orchestra\Testbench\Attributes\DefineDatabase.
    • @define-route will be replaced with Orchestra\Testbench\Attributes\DefineRoute.
Fixes
  • Fixes generating path using Orchestra\Testbench\package_path() and Orchestra\Testbench\workbench_path().
Deprecated
  • Deprecate Orchestra\Testbench\Concerns\WithFactories.
Removed
  • Remove Orchestra\Testbench\Foundation\Bootstrap\StartWorkbench, use Orchestra\Testbench\Workbench\Workbench::start() or Orchestra\Testbench\Workbench\Workbench::startWithProviders() instead.

v8.13.0

Compare Source

Changes
Testbench Changes
Changes
  • Code refactors.
  • Mark Orchestra\Testbench\Bootstrap\LoadEnvironmentVariables class as @internal.

v8.12.3

Compare Source

Changes
  • Add support for Workbench 0.5.0+.

v8.12.2

Compare Source

Changes
  • Support Laravel Framework 10.26.

v8.12.1

Compare Source

Changes
  • Support Laravel Framework 10.25.

v8.12.0

Compare Source

Changes
  • Update minimum support for Testbench Core v8.12.0+. (v8.11.1...v8.12.0)
  • Update minimum support for Workbench 0.4.0+.
Testbench Changes
Added Added
  • Added cachedConfigurationForWorkbench() to Orchestra\Testbench\Concern\InteractsWithWorkbench trait.
  • Add the ability to read TESTBENCH_WORKING_PATH from environment variables for Testbench Dusk usage.
  • Supports Workbench discovers configuration.
  • Add the ability to properly forward Environment Variables.
  • Add usesSqliteInMemoryDatabaseConnection to Orchestra\Testbench\Concerns\HandlesDatabases trait.

v8.11.1

Compare Source

Changes
  • Support Laravel Framework 10.24.
  • Update minimum support for Testbench Core v8.11.1+. (v8.11.0...v8.11.1)

v8.11.0

Compare Source

Changes
  • Update minimum support for Laravel Framework 10.23.1.
  • Update minimum support for Testbench Core v8.11.0+. (v8.10.0...v8.11.0)
  • Update minimum support for Workbench 0.3.0+.
Testbench Changes
Added
  • Added methods to Orchestra\Testbench\Concerns\InteractsWithPublishedFiles trait:
    • assertMigrationFileExists.
    • assertMigrationFileNotExists.
Changes
  • Rename methods in Orchestra\Testbench\Concerns\InteractsWithPublishedFiles trait:
    • cleanUpFiles to cleanUpPublishedFiles.
    • cleanUpMigrationFiles to cleanUpPublishedMigrationFiles.
    • getMigrationFile to findFirstPublishedMigrationFile.

v8.10.2

Compare Source

Changes
  • Support Laravel Framework 10.23.

v8.10.1

Compare Source

Changes
  • Support Laravel Framework 10.22.

v8.10.0

Compare Source

Changes
  • Support Laravel Framework 10.21.
  • Update minimum support for Testbench Core v8.10.0+. (v8.9.1...v8.10.0)
Testbench Changes
Added
  • Add ability to automatically run default Laravel migrations using Orchestra\Testbench\Concerns\WithLaravelMigrations.
  • Add Console Actions classes:
    • Orchestra\Testbench\Foundation\Console\Actions\DeleteFiles
    • Orchestra\Testbench\Foundation\Console\Actions\DeleteDirectories
    • Orchestra\Testbench\Foundation\Console\Actions\EnsureDirectoryExists
    • Orchestra\Testbench\Foundation\Console\Actions\GeneratesFile

v8.9.1

Compare Source

Changes
  • Support Laravel Framework 10.20.
  • Update minimum support for Testbench Core v8.9.1+. (v8.9.0...v8.9.1)
Testbench Changes
Changes
  • Allow using $model property override when extending Orchestra\Testbench\Factories\UserFactory.

v8.9.0

Compare Source

Changes
Testbench Changes
Added
  • Added new workbench.welcome configuration option.
Changes
  • Allow testbench.yaml configuration fallback similar to .env.
  • Utilise Illuminate\Support\LazyCollection.
  • Skip loading Orchestra\Workbench\WorkbenchServiceProvider when applying Orchestra\Testbench\Concerns\WithWorkbench.

v8.8.3

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes configuration leak when running some TestCase without Orchestra\Testbench\Concerns\WithWorkbench.

v8.8.2

Compare Source

Changes
Testbench Changes
Added
  • Readd deprecated Orchestra\Testbench\Foundation\Console\DevToolCommand for integration compatibility.
Changes
  • Disable Composer default timeout when using serve command under Composer's script.
Removed
  • Remove Orchestra\Testbench\Workbench classes and functionality is now provided from orchestra/workbench.

v8.8.1

Compare Source

Changes
  • Support Laravel Framework 10.19.

v8.8.0

Compare Source

Changes
Testbench Changes
Added
  • Added package:purge-skeleton command.
  • Added Orchestra\Testbench\Concerns\Database\InteractsWithSqliteDatabaseFile trait.
  • Added Orchestra\Testbench\package_path() function.
  • Added support for orchestra/workbench.
Changes
  • Rename Orchestra\Testbench\Workbench\Bootstrap\StartWorkbench to Orchestra\Testbench\Foundation\Bootstrap\StartWorkbench.
Fixes
  • Fixes serve command usage.
  • Fixes class namespace.

v8.7.0

Compare Source

Changes
Testbench Changes
Added
  • Added following events:
    • Orchestra\Testbench\Foundation\Events\ServeCommandStarted
    • Orchestra\Testbench\Foundation\Events\ServeCommandEnded
    • Orchestra\Testbench\Workbench\Events\WorkbenchInstallStarted
    • Orchestra\Testbench\Workbench\Events\WorkbenchInstallEnded
Changes
  • Change HandlesRoutes loading sequence to match common Laravel bootstrap steps.
  • Refactor HandlesAnnotations and InteractsWithPHPUnit traits.
  • Workbench integration improvements.
  • Update workbench configuration schema.
Fixes
  • Fixes Illuminate\Foundation\Application::runningUnitTests() detection.

v8.6.3

Compare Source

Changes
Testbench Changes
Fixes
  • Fixes app()->environment() detection when creating application Orchestra\Testbench\Concerns\CreatesApplication outside of PHPUnit.
  • Fixes error Undefined array key "autoload-dev" when executing workbench:install command.

v8.6.2

Compare Source

Changes
Testbench Changes
Added
  • Add new Orchestra\Testbench\Concerns\InteractsWithPHPUnit to handle CreatesApplication within PHPUnit.
Fixes
  • Fixes workbench.start path when accessing the / route return 404.
  • Only Configure TESTBENCH_APP_BASE_PATH environment variable only when running under tests.

v8.6.1

Compare Source

Changes
  • Support Laravel Framework 10.18.

v8.6.0

Compare Source

Changes
Testbench Changes
Added
  • Added new Workbench support (experimental feature).
    • Register routes under /_workbench prefix.
    • Automatically run configured seeds when executing migrate:fresh and migrate:refresh
    • Bind Orchestra\Testbench\Contracts\Config to IoC Container and introduce the new Orchestra\Testbench\workbench and Orchestra\Testbench\workbench_path helper function.
    • Add workbench:install, workbench:create-sqlite-db and workbench:drop-sqlite-db commands.
  • Add new Orchestra\Testbench\Concerns\WithWorkbench to automatically loads configuration from testbench.yaml when running tests.
Changes
  • Bump minimum laravel/framework to 10.17.0.
Deprecated
  • Deprecated package:devtool, package:create-sqlite-db and package:drop-sqlite-db commands.

v8.5.12

Compare Source

Changes
  • Support Laravel Framework 10.17.

v8.5.11

Compare Source

Changes
  • Support Laravel Framework 10.16.

v8.5.10

Compare Source

Changes
  • Support Laravel Framework 10.15.

v8.5.9

Compare Source

Changes
  • Bump minimum laravel/framework to 10.14.0.

v8.5.8

Compare Source

Changes
  • Suspense support for Laravel Framework 10.14.

[`v8


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) February 24, 2025 19:43
Copy link
Contributor Author

renovate bot commented Feb 24, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: composer.lock
Command failed: composer update orchestra/testbench:10.0.0 --with-dependencies --ignore-platform-req='ext-*' --ignore-platform-req='lib-*' --no-ansi --no-interaction --no-scripts --no-autoloader --no-plugins
Loading composer repositories with package information
Dependency laravel/framework is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency phpunit/phpunit is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/console) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/contracts) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/log) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/process) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/support) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/database) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Dependency laravel/framework (via replace of illuminate/filesystem) is also a root requirement. Package has not been listed as an update argument, so keeping locked at old version. Use --with-all-dependencies (-W) to include root dependencies.
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - ergebnis/composer-normalize is locked to version 2.36.0 and an update of this package was not requested.
    - ergebnis/composer-normalize 2.36.0 requires php ~8.1.0 || ~8.2.0 -> your php version (8.4.4) does not satisfy that requirement.
  Problem 2
    - Root composer.json requires orchestra/testbench ^10.0 -> satisfiable by orchestra/testbench[v10.0.0].
    - orchestra/testbench v10.0.0 requires laravel/framework ^12.0.1 -> found laravel/framework[v12.0.1] but the package is fixed to v10.13.1 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
  Problem 3
    - pestphp/pest is locked to version v2.6.2 and an update of this package was not requested.
    - brianium/paratest v7.1.4 requires php ~8.1.0 || ~8.2.0 -> your php version (8.4.4) does not satisfy that requirement.
    - pestphp/pest v2.6.2 requires brianium/paratest ^7.1.4 -> satisfiable by brianium/paratest[v7.1.4].

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants