Skip to content

Commit 9c97edd

Browse files
authored
Merge pull request #6659 from morozov/remove-shortest-name
Remove AbstractAsset::getShortestName()
2 parents aa7f893 + a2c3f74 commit 9c97edd

File tree

7 files changed

+20
-58
lines changed

7 files changed

+20
-58
lines changed

UPGRADE.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ awareness about deprecated code.
88

99
# Upgrade to 5.0
1010

11+
## BC BREAK: Removed `AbstractAsset::getShortestName()`
12+
13+
The `AbstractAsset::getShortestName()` method has been removed.
14+
1115
## BC BREAK: Removed `Sequence::isAutoIncrementsFor()`
1216

1317
The `Sequence::isAutoIncrementsFor()` method has been removed.

psalm.xml.dist

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,6 @@
6262
-->
6363
<referencedMethod name="Doctrine\DBAL\Schema\AbstractAsset::getNameParser" />
6464
<referencedMethod name="Doctrine\DBAL\Schema\AbstractAsset::setName" />
65-
66-
<!--
67-
https://github.com/doctrine/dbal/pull/6657
68-
TODO: remove in 5.0.0
69-
-->
70-
<referencedMethod name="Doctrine\DBAL\Schema\AbstractAsset::getShortestName" />
7165
</errorLevel>
7266
</DeprecatedMethod>
7367
<DocblockTypeContradiction>

src/Schema/AbstractAsset.php

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
use Doctrine\DBAL\Schema\Name\OptionallyQualifiedName;
1313
use Doctrine\DBAL\Schema\Name\Parser;
1414
use Doctrine\DBAL\Schema\Name\UnqualifiedName;
15-
use Doctrine\Deprecations\Deprecation;
1615

1716
use function array_map;
1817
use function assert;
@@ -21,7 +20,6 @@
2120
use function dechex;
2221
use function implode;
2322
use function str_replace;
24-
use function strtolower;
2523
use function strtoupper;
2624
use function substr;
2725

@@ -158,29 +156,6 @@ public function getNamespaceName(): ?string
158156
return $this->_namespace;
159157
}
160158

161-
/**
162-
* The shortest name is stripped of the default namespace. All other
163-
* namespaced elements are returned as full-qualified names.
164-
*
165-
* @deprecated Use {@link getName()} instead.
166-
*/
167-
public function getShortestName(?string $defaultNamespaceName): string
168-
{
169-
Deprecation::triggerIfCalledFromOutside(
170-
'doctrine/dbal',
171-
'https://github.com/doctrine/dbal/pull/6657',
172-
'%s is deprecated and will be removed in 5.0.',
173-
__METHOD__,
174-
);
175-
176-
$shortestName = $this->getName();
177-
if ($this->_namespace === $defaultNamespaceName) {
178-
$shortestName = $this->_name;
179-
}
180-
181-
return strtolower($shortestName);
182-
}
183-
184159
/**
185160
* Checks if this asset's name is quoted.
186161
*/

src/Schema/Comparator.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,13 @@ public function compareSchemas(Schema $oldSchema, Schema $newSchema): SchemaDiff
5454
}
5555

5656
foreach ($newSchema->getTables() as $newTable) {
57-
$newTableName = $newTable->getShortestName($newSchema->getName());
57+
$newTableName = $newTable->getName();
5858
if (! $oldSchema->hasTable($newTableName)) {
59-
$createdTables[] = $newSchema->getTable($newTableName);
59+
$createdTables[] = $newTable;
6060
} else {
6161
$tableDiff = $this->compareTables(
6262
$oldSchema->getTable($newTableName),
63-
$newSchema->getTable($newTableName),
63+
$newTable,
6464
);
6565

6666
if (! $tableDiff->isEmpty()) {
@@ -71,7 +71,7 @@ public function compareSchemas(Schema $oldSchema, Schema $newSchema): SchemaDiff
7171

7272
// Check if there are tables removed
7373
foreach ($oldSchema->getTables() as $oldTable) {
74-
$oldTableName = $oldTable->getShortestName($oldSchema->getName());
74+
$oldTableName = $oldTable->getName();
7575

7676
$oldTable = $oldSchema->getTable($oldTableName);
7777
if ($newSchema->hasTable($oldTableName)) {
@@ -82,18 +82,18 @@ public function compareSchemas(Schema $oldSchema, Schema $newSchema): SchemaDiff
8282
}
8383

8484
foreach ($newSchema->getSequences() as $newSequence) {
85-
$newSequenceName = $newSequence->getShortestName($newSchema->getName());
85+
$newSequenceName = $newSequence->getName();
8686
if (! $oldSchema->hasSequence($newSequenceName)) {
8787
$createdSequences[] = $newSequence;
8888
} else {
8989
if ($this->diffSequence($newSequence, $oldSchema->getSequence($newSequenceName))) {
90-
$alteredSequences[] = $newSchema->getSequence($newSequenceName);
90+
$alteredSequences[] = $newSequence;
9191
}
9292
}
9393
}
9494

9595
foreach ($oldSchema->getSequences() as $oldSequence) {
96-
$oldSequenceName = $oldSequence->getShortestName($oldSchema->getName());
96+
$oldSequenceName = $oldSequence->getName();
9797

9898
if ($newSchema->hasSequence($oldSequenceName)) {
9999
continue;

src/Schema/PostgreSQLSchemaManager.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,13 @@ protected function _getPortableTableForeignKeyDefinition(array $tableForeignKey)
135135
*/
136136
protected function _getPortableViewDefinition(array $view): View
137137
{
138-
return new View($view['schemaname'] . '.' . $view['viewname'], $view['definition']);
138+
if ($view['schemaname'] === $this->getCurrentSchema()) {
139+
$name = $view['viewname'];
140+
} else {
141+
$name = $view['schemaname'] . '.' . $view['viewname'];
142+
}
143+
144+
return new View($name, $view['definition']);
139145
}
140146

141147
/**
@@ -202,7 +208,7 @@ protected function _getPortableDatabaseDefinition(array $database): string
202208
*/
203209
protected function _getPortableSequenceDefinition(array $sequence): Sequence
204210
{
205-
if ($sequence['schemaname'] !== 'public') {
211+
if ($sequence['schemaname'] !== $this->getCurrentSchema()) {
206212
$sequenceName = $sequence['schemaname'] . '.' . $sequence['relname'];
207213
} else {
208214
$sequenceName = $sequence['relname'];

tests/Functional/Schema/SchemaManagerFunctionalTestCase.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ private function filterElementsByName(array $items, string $name): array
128128
return array_filter(
129129
$items,
130130
static function (AbstractAsset $item) use ($name): bool {
131-
return $item->getShortestName($item->getNamespaceName()) === $name;
131+
return strtolower($item->getName()) === $name;
132132
},
133133
);
134134
}

tests/Schema/AbstractComparatorTestCase.php

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -600,23 +600,6 @@ public function testNamespacesComparison(): void
600600
self::assertCount(2, $diff->getCreatedTables());
601601
}
602602

603-
public function testFqnSchemaComparisonDifferentSchemaNameButSameTableNoDiff(): void
604-
{
605-
$config = new SchemaConfig();
606-
$config->setName('foo');
607-
608-
$oldSchema = new Schema([], [], $config);
609-
$oldSchema->createTable('foo.bar');
610-
611-
$newSchema = new Schema();
612-
$newSchema->createTable('bar');
613-
614-
self::assertEquals(
615-
new SchemaDiff([], [], [], [], [], [], [], []),
616-
$this->comparator->compareSchemas($oldSchema, $newSchema),
617-
);
618-
}
619-
620603
public function testFqnSchemaComparisonNoSchemaSame(): void
621604
{
622605
$config = new SchemaConfig();

0 commit comments

Comments
 (0)