Repository navigation
Conversation
Laravel 11 added Schema::getColumns() and Schema::getIndexes(), which read the schema natively; Laravel 10 has neither, and the documented reason for excluding 10 was that supporting it would mean carrying doctrine/dbal for one release line. It does not have to. SchemaIntrospector uses the native methods when they exist and otherwise runs the same driver queries itself — pragma table_info and index_list on SQLite, information_schema on MySQL, MariaDB and SQL Server, information_schema plus pg_index on PostgreSQL — returning the subset of the Laravel 11 array shape the metadata engine consumes. So the engine cannot tell which framework version it is on, and dbal is still never pulled in, on any version. The rest is constraints and matrix. Testbench 8 pins PHPUnit 10, which Pest 3 and 4 do not support, so the Laravel 10 leg installs Pest 2; PHP 8.4 is excluded from it because Laravel 10 was never certified against it. Laravel 10's security window has closed the same way Laravel 11's has, so it joins the advisory-policy exemption. PHP 8.2 stays the floor: Laravel 10 also runs on 8.1, but 8.1 is end of life. Verified on both ends — the full suite passes against Laravel 13 as before, and against laravel/framework 10.x with Testbench 8 and Pest 2. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E4q6Ei7sWPScqPZoF7ySnv
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Laravel 11 added Schema::getColumns() and Schema::getIndexes(), which read the schema natively; Laravel 10 has neither, and the documented reason for excluding 10 was that supporting it would mean carrying doctrine/dbal for one release line.
It does not have to. SchemaIntrospector uses the native methods when they exist and otherwise runs the same driver queries itself — pragma table_info and index_list on SQLite, information_schema on MySQL, MariaDB and SQL Server, information_schema plus pg_index on PostgreSQL — returning the subset of the Laravel 11 array shape the metadata engine consumes. So the engine cannot tell which framework version it is on, and dbal is still never pulled in, on any version.
The rest is constraints and matrix. Testbench 8 pins PHPUnit 10, which Pest 3 and 4 do not support, so the Laravel 10 leg installs Pest 2; PHP 8.4 is excluded from it because Laravel 10 was never certified against it. Laravel 10's security window has closed the same way Laravel 11's has, so it joins the advisory-policy exemption. PHP 8.2 stays the floor: Laravel 10 also runs on 8.1, but 8.1 is end of life.
Verified on both ends — the full suite passes against Laravel 13 as before, and against laravel/framework 10.x with Testbench 8 and Pest 2.
Claude-Session: https://claude.ai/code/session_01E4q6Ei7sWPScqPZoF7ySnv