Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
4.3.0 source code.tar.gz | 2025-07-10 | 206.2 kB | |
4.3.0 source code.zip | 2025-07-10 | 398.3 kB | |
README.md | 2025-07-10 | 13.4 kB | |
Totals: 3 Items | 618.0 kB | 0 |
Release Notes for 4.3.0
4.3.0
- Total issues resolved: 3
- Total pull requests resolved: 103
- Total contributors: 9
New Features
- 6966: Add more TableEditor methods thanks to @morozov
- 6927: Add shorthand name-related methods to schema object editors thanks to @morozov
- 6890: Introduce ComparatorConfig::withReportModifiedIndexes() thanks to @morozov and @sbuerk
- 6686: Add a
NumberType
that maps to theBcMath\Number
value object thanks to @derrabus - 6660: Introduce table editor thanks to @morozov
- 6621: Add CTE support to select in QueryBuilder thanks to @nio-dtp
- 6300: Make column and index renaming configurable thanks to @ausi
Improvements
- 6981: Clean up SQL Server LIKE wildcard characters thanks to @morozov
- 6965: Populate indexed column lengths only with non-null values thanks to @morozov
- 6964: Populate foreign key constraint options only with non-default values thanks to @morozov
- 6962: Require Doctrine Deprecations 1.1.5 thanks to @morozov
- 6958: Preserve the non-clustered property of the PK constraint thanks to @morozov
- 6944: Clean up SQLite column definition parsing thanks to @morozov
- 6943: Include object name in editor exception messages thanks to @morozov
- 6934: Update TableEditor API thanks to @morozov
- 6933: Simplify Postgres column introspection thanks to @morozov
- 6932: Clean up MySQL column type parsing thanks to @morozov
- 6931: Clean up SQL Server column type parsing thanks to @morozov
- 6923: Mark classes as read-only, internal and final thanks to @morozov
- 6907: Rework foreign key constraint introspection on SQLite thanks to @morozov
- 6904: Rework index introspection on SQLite thanks to @morozov
- 6901: Reintroduce PHP 8.2 support thanks to @derrabus
- 6889: Require PHP 8.3 thanks to @morozov
- 6887: Rework index column introspection on Postgres thanks to @morozov
- 6873: Remove DB2Platform:getPreAlterTableIndexForeignKeySQL() thanks to @morozov
- 6867: Introduce PrimaryKeyConstraint thanks to @morozov
- 6864: Use consistent formatting in PRIMARY KEY DDL thanks to @morozov
- 6854: Clean up schema introspection parsing code thanks to @morozov
- 6823: Extract UnquotedIdentifierFolding from AbstractPlatform thanks to @morozov
- 6822: Clean up SQLitePlatform column mapping code thanks to @morozov
- 6815: Remove AbstractName and mark GenericName as internal thanks to @morozov
- 6783: Use InvalidState instead of NameIsNotInitialized thanks to @morozov
- 6803: Clean up OraclePlatform auto-increment code thanks to @morozov
- 6796: Refactor SQL Server code for calling stored procedures thanks to @morozov
- 6787: Introduce IndexedColumn thanks to @morozov
- 6785: feat: support non-libc collations in postgres thanks to @simPod
- 6784: Accept OptionallyQualifiedName in TableEditor::setName() thanks to @morozov
- 6746: Introduce AbstractSchemaManager::getCurrentSchemaName() thanks to @morozov
- 6754: Refactor building schema introspection queries thanks to @morozov
- 6752: Use function db2_field_name thanks to @morozov
- 6745: Remove SQLite "schema emulation" leftovers thanks to @morozov
- 6744: Refactor AbstractSchemaManager::fetch/select() API thanks to @morozov
- 6730: Introspect foreign key constraint deferrability on Oracle thanks to @morozov
- 6728: Deprecate ForeignKeyConstraint features and introduce ForeignKeyConstraintEditor thanks to @morozov
- 6714: Rename Identifier::toSql() to Identifier::toSQL() thanks to @morozov
- 6705: Remove final constructor for Type thanks to @ruudk
- 6698: OCI8: Remove PHP 7 compat code thanks to @derrabus
- 6685: Deprecate UniqueConstraint features and introduce UniqueConstraintEditor thanks to @morozov
- 6646: Introduce value objects representing database object names thanks to @morozov
- 6578: Rename column in indexes and constraints thanks to @morozov
- 6550: Simplify tracking implicitly created indexes thanks to @morozov
- 6549: Remove handling unique constraint column names as associative array thanks to @morozov
Deprecations
- 7000: Deprecate support for MariaDB 10.5 thanks to @derrabus
- 6945: Deprecate Column features and introduce ColumnEditor thanks to @morozov
- 6940: Deprecate "version" column platform option thanks to @morozov
- 6939: Introduce JSONB type, deprecate "jsonb" column platform option thanks to @morozov
- 6886: Deprecate Index features and introduce IndexEditor thanks to @morozov
- 6849: Deprecate invalid auto-increment column definitions on SQLite thanks to @morozov
- 6841: Deprecate auto-increment being dropped with the PK on MySQL thanks to @morozov
- 6831: Deprecate modified indexes in TableDiff thanks to @morozov
- 6827: Deprecate modified foreign keys in TableDiff thanks to @morozov
- 6799: Fix false-positive primary key column length deprecation thanks to @morozov
- 6769: Introduce Identifier::toNormalizedValue(), deprecate AbstractSchemaManager::_normalizeName() thanks to @morozov
- 6768: Deprecate introspection of unquoted table names with dot thanks to @morozov
- 6755: Deprecate
AbstractSchemaManager::_getPortableTableDefinition()
thanks to @morozov - 6734: Deprecate usage of Schema as AbstractAsset thanks to @morozov
- 6710: Deprecate Table::columnsAreIndexed() thanks to @morozov
- 6707: Deprecate conversion of RESTRICT to NO ACTION thanks to @morozov
- 6701: Deprecate introspection of incomplete SQLite schema thanks to @morozov
- 6677: Deprecate mixing qualified and unqualified names thanks to @morozov
- 6674: Deprecate AbstractAsset::getQuotedName() thanks to @morozov
- 6657: Deprecate AbstractAsset::getShortestName() thanks to @morozov
- 6610: Deprecate AbstractAsset::_setName() thanks to @morozov
- 6671: Deprecate empty index name thanks to @morozov
- 6664: Deprecated AbstractAsset namespace-related methods thanks to @morozov
- 6654: Deprecate Sequence::isAutoIncrementsFor() thanks to @morozov
- 6635: Deprecate altering table configuration thanks to @morozov
- 6607: Deprecate reserved keyword lists thanks to @morozov
- 6592: Deprecate relying on the current implementation of the database object name parser thanks to @morozov
- 6590: Deprecate AbstractPlatform::quoteIdentifier() thanks to @morozov
- 6560: Deprecate Table::removeForeignKey() and ::removeUniqueConstraint() thanks to @morozov
- 6559: Deprecate dropping columns referenced by constraints thanks to @morozov
Bugfixes
- 6971: Omit implicit indexes in Table::edit() thanks to @morozov
- 6882: Clean up Table::renameIndex() code thanks to @morozov
- 6801: Unmark Index as final thanks to @morozov
- 6739: Implement empty Schema::setName() thanks to @morozov
- 6737: Unable to instantiate Schema objects without deprecations thanks to @xabbuh
- 6738: Add missing sentence and placeholder. thanks to @greg0ire
- 6718: Fix deferrable/deferred constraint DDL on PostgreSQL thanks to @morozov
- 6717: Invalid DDL for deferred constraints on PostgreSQL thanks to @morozov
- 6908: fix replacing method name in deprecation message thanks to @xabbuh
Static Analysis
- 6914: Mark identifiers as non-empty strings thanks to @morozov
- 6899: Mark ComparatorConfig::getReportModifiedIndexes() as internal thanks to @morozov
- 6832: Enable PHPStan checks for exceptions thanks to @morozov
- 6805: Annotate some internal array shapes thanks to @morozov
- 6788: Mark protected platform and schema manager methods as internal thanks to @morozov
- 6608: Mark Identifier as internal thanks to @morozov
Test Suite
- 7006: phpunit/phpunit (11.5.15 => 11.5.23) thanks to @derrabus
- 6894: PHPUnit 11 thanks to @morozov
- 6995: Rework schema introspection tests that use reflection thanks to @morozov
- 6980: Remove redundant PHPUnit 11 configuration thanks to @morozov
- 6972: Rework tests that create or modify tables thanks to @morozov
- 6872: Fix testChangeIndexWithForeignKeys() configuration thanks to @morozov
- 6794: Accept schema name as object in FunctionalTest::dropAndCreateSchema() thanks to @morozov
CI
- 6999: Remove "minimal" dependency setting thanks to @derrabus
Changes from lower branches
This release contains improvements shipped with the 3.10.0 release:
- 6926: feat: improve performance of sql parser thanks to @shyim