Skip to content

Commit

Permalink
Remove Postgres 9.3 and MariaDB 10.0 support
Browse files Browse the repository at this point in the history
  • Loading branch information
SenseException committed Jun 13, 2019
1 parent b4c2cf3 commit c7bedc5
Show file tree
Hide file tree
Showing 16 changed files with 34 additions and 164 deletions.
19 changes: 1 addition & 18 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,11 +147,6 @@ jobs:
- docker
before_script:
- bash ./tests/travis/install-mysql-8.0.sh
- stage: Test
php: 7.3
env: DB=mariadb MARIADB_VERSION=10.0 COVERAGE=yes
addons:
mariadb: 10.0
- stage: Test
php: 7.3
env: DB=mariadb MARIADB_VERSION=10.1 COVERAGE=yes
Expand All @@ -167,11 +162,6 @@ jobs:
env: DB=mariadb MARIADB_VERSION=10.3 COVERAGE=yes
addons:
mariadb: 10.3
- stage: Test
php: 7.3
env: DB=mariadb.mysqli MARIADB_VERSION=10.0 COVERAGE=yes
addons:
mariadb: 10.0
- stage: Test
php: 7.3
env: DB=mariadb.mysqli MARIADB_VERSION=10.1 COVERAGE=yes
Expand All @@ -187,13 +177,6 @@ jobs:
env: DB=mariadb.mysqli MARIADB_VERSION=10.3 COVERAGE=yes
addons:
mariadb: 10.3
- stage: Test
php: 7.3
env: DB=pgsql POSTGRESQL_VERSION=9.3 COVERAGE=yes
services:
- postgresql
addons:
postgresql: "9.3"
- stage: Test
php: 7.3
env: DB=pgsql POSTGRESQL_VERSION=9.4 COVERAGE=yes
Expand Down Expand Up @@ -222,7 +205,7 @@ jobs:
services:
- postgresql
addons:
postgresql: "9.6"
postgresql: "10.0"
before_script:
- bash ./tests/travis/install-postgres-10.sh
- stage: Test
Expand Down
10 changes: 5 additions & 5 deletions docs/en/reference/configuration.rst
Original file line number Diff line number Diff line change
Expand Up @@ -229,20 +229,20 @@ pdo_pgsql
- ``sslmode`` (string): Determines whether or with what priority
a SSL TCP/IP connection will be negotiated with the server.
See the list of available modes:
`https://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNECT-SSLMODE`
`https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNECT-SSLMODE`
- ``sslrootcert`` (string): specifies the name of a file containing
SSL certificate authority (CA) certificate(s). If the file exists,
the server's certificate will be verified to be signed by one of these
authorities.
See https://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNECT-SSLROOTCERT
See https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNECT-SSLROOTCERT
- ``sslcert`` (string): specifies the file name of the client SSL certificate.
See `https://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNECT-SSLCERT`
See `https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNECT-SSLCERT`
- ``sslkey`` (string): specifies the location for the secret key used for the
client certificate.
See `https://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNECT-SSLKEY`
See `https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNECT-SSLKEY`
- ``sslcrl`` (string): specifies the file name of the SSL certificate
revocation list (CRL).
See `https://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNECT-SSLCRL`
See `https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNECT-SSLCRL`
- ``application_name`` (string): Name of the application that is
connecting to database. Optional. It will be displayed at ``pg_stat_activity``.

Expand Down
3 changes: 1 addition & 2 deletions docs/en/reference/platforms.rst
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,7 @@ Microsoft SQL Server
PostgreSQL
^^^^^^^^^^

- ``PostgreSqlPlatform`` for all versions.
- ``PostgreSQL94Platform`` for version 9.4 and above.
- ``PostgreSqlPlatform`` for version 9.4 and above.
- ``PostgreSQL100Platform`` for version 10.0 and above.

SAP Sybase SQL Anywhere
Expand Down
14 changes: 5 additions & 9 deletions lib/Doctrine/DBAL/Driver/AbstractPostgreSQLDriver.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Platforms\Exception\InvalidPlatformVersion;
use Doctrine\DBAL\Platforms\PostgreSQL100Platform;
use Doctrine\DBAL\Platforms\PostgreSQL94Platform;
use Doctrine\DBAL\Platforms\PostgreSqlPlatform;
use Doctrine\DBAL\Schema\AbstractSchemaManager;
use Doctrine\DBAL\Schema\PostgreSqlSchemaManager;
Expand All @@ -29,7 +28,7 @@ abstract class AbstractPostgreSQLDriver implements Driver, ExceptionConverterDri
/**
* {@inheritdoc}
*
* @link http://www.postgresql.org/docs/9.3/static/errcodes-appendix.html
* @link http://www.postgresql.org/docs/9.4/static/errcodes-appendix.html
*/
public function convertException(string $message, DriverExceptionInterface $exception) : DriverException
{
Expand Down Expand Up @@ -97,14 +96,11 @@ public function createDatabasePlatformForVersion(string $version) : AbstractPlat
$patchVersion = $versionParts['patch'] ?? 0;
$version = $majorVersion . '.' . $minorVersion . '.' . $patchVersion;

switch (true) {
case version_compare($version, '10.0', '>='):
return new PostgreSQL100Platform();
case version_compare($version, '9.4', '>='):
return new PostgreSQL94Platform();
default:
return new PostgreSqlPlatform();
if (version_compare($version, '10.0', '>=')) {
return new PostgreSQL100Platform();
}

return new PostgreSqlPlatform();
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
/**
* PostgreSQL 10.0 reserved keywords list.
*/
class PostgreSQL100Keywords extends PostgreSQL94Keywords
class PostgreSQL100Keywords extends PostgreSQLKeywords
{
/**
* {@inheritdoc}
Expand Down
34 changes: 0 additions & 34 deletions lib/Doctrine/DBAL/Platforms/Keywords/PostgreSQL94Keywords.php

This file was deleted.

4 changes: 2 additions & 2 deletions lib/Doctrine/DBAL/Platforms/Keywords/PostgreSQLKeywords.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
namespace Doctrine\DBAL\Platforms\Keywords;

/**
* PostgreSQL 9.3 keywords list.
* PostgreSQL keywords list.
*/
class PostgreSQLKeywords extends KeywordList
{
Expand Down Expand Up @@ -79,6 +79,7 @@ protected function getKeywords() : array
'IS',
'ISNULL',
'JOIN',
'LATERAL',
'LEADING',
'LEFT',
'LIKE',
Expand All @@ -95,7 +96,6 @@ protected function getKeywords() : array
'OR',
'ORDER',
'OUTER',
'OVER',
'OVERLAPS',
'PLACING',
'PRIMARY',
Expand Down
2 changes: 1 addition & 1 deletion lib/Doctrine/DBAL/Platforms/PostgreSQL100Platform.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
/**
* Provides the behavior, features and SQL dialect of the PostgreSQL 10.0 database platform.
*/
class PostgreSQL100Platform extends PostgreSQL94Platform
class PostgreSQL100Platform extends PostgreSqlPlatform
{
/**
* {@inheritdoc}
Expand Down
45 changes: 0 additions & 45 deletions lib/Doctrine/DBAL/Platforms/PostgreSQL94Platform.php

This file was deleted.

5 changes: 5 additions & 0 deletions lib/Doctrine/DBAL/Platforms/PostgreSqlPlatform.php
Original file line number Diff line number Diff line change
Expand Up @@ -1136,6 +1136,7 @@ protected function initializeDoctrineTypeMappings() : void
'integer' => 'integer',
'interval' => 'string',
'json' => Type::JSON,
'jsonb' => Type::JSON,
'money' => 'decimal',
'numeric' => 'decimal',
'serial' => 'integer',
Expand Down Expand Up @@ -1213,6 +1214,10 @@ public function getColumnCollationDeclarationSQL(string $collation) : string
*/
public function getJsonTypeDeclarationSQL(array $field) : string
{
if (! empty($field['jsonb'])) {
return 'JSONB';
}

return 'JSON';
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@

use Doctrine\DBAL\Connection;
use Doctrine\DBAL\Platforms\Keywords\DB2Keywords;
use Doctrine\DBAL\Platforms\Keywords\MariaDb102Keywords;
use Doctrine\DBAL\Platforms\Keywords\MySQL57Keywords;
use Doctrine\DBAL\Platforms\Keywords\MySQL80Keywords;
use Doctrine\DBAL\Platforms\Keywords\MySQLKeywords;
use Doctrine\DBAL\Platforms\Keywords\OracleKeywords;
use Doctrine\DBAL\Platforms\Keywords\PostgreSQL100Keywords;
use Doctrine\DBAL\Platforms\Keywords\PostgreSQL94Keywords;
use Doctrine\DBAL\Platforms\Keywords\PostgreSQLKeywords;
use Doctrine\DBAL\Platforms\Keywords\ReservedKeywordsValidator;
use Doctrine\DBAL\Platforms\Keywords\SQLAnywhereKeywords;
Expand All @@ -36,9 +36,9 @@ class ReservedWordsCommand extends Command
'mysql' => MySQLKeywords::class,
'mysql57' => MySQL57Keywords::class,
'mysql80' => MySQL80Keywords::class,
'mariadb102' => MariaDb102Keywords::class,
'oracle' => OracleKeywords::class,
'pgsql' => PostgreSQLKeywords::class,
'pgsql94' => PostgreSQL94Keywords::class,
'pgsql100' => PostgreSQL100Keywords::class,
'sqlanywhere' => SQLAnywhereKeywords::class,
'sqlite' => SQLiteKeywords::class,
Expand Down Expand Up @@ -88,8 +88,8 @@ protected function configure() : void
* mysql
* mysql57
* mysql80
* mariadb102
* pgsql
* pgsql94
* pgsql100
* sqlite
* oracle
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
use Doctrine\DBAL\Driver\AbstractPostgreSQLDriver;
use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Platforms\PostgreSQL100Platform;
use Doctrine\DBAL\Platforms\PostgreSQL94Platform;
use Doctrine\DBAL\Platforms\PostgreSqlPlatform;
use Doctrine\DBAL\Schema\AbstractSchemaManager;
use Doctrine\DBAL\Schema\PostgreSqlSchemaManager;
Expand Down Expand Up @@ -37,12 +36,9 @@ protected function createSchemaManager(Connection $connection) : AbstractSchemaM
protected function getDatabasePlatformsForVersions() : array
{
return [
['9.3', PostgreSqlPlatform::class],
['9.3.0', PostgreSqlPlatform::class],
['9.3.6', PostgreSqlPlatform::class],
['9.4', PostgreSQL94Platform::class],
['9.4.0', PostgreSQL94Platform::class],
['9.4.1', PostgreSQL94Platform::class],
['9.4', PostgreSqlPlatform::class],
['9.4.0', PostgreSqlPlatform::class],
['9.4.1', PostgreSqlPlatform::class],
['10', PostgreSQL100Platform::class],
];
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
namespace Doctrine\Tests\DBAL\Functional\Schema;

use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Platforms\PostgreSQL94Platform;
use Doctrine\DBAL\Platforms\PostgreSqlPlatform;
use Doctrine\DBAL\Schema;
use Doctrine\DBAL\Schema\Comparator;
use Doctrine\DBAL\Schema\ForeignKeyConstraint;
Expand Down Expand Up @@ -399,7 +399,7 @@ public function testPartialIndexes() : void

public function testJsonbColumn() : void
{
if (! $this->schemaManager->getDatabasePlatform() instanceof PostgreSQL94Platform) {
if (! $this->schemaManager->getDatabasePlatform() instanceof PostgreSqlPlatform) {
$this->markTestSkipped('Requires PostgresSQL 9.4+');

return;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Platforms\PostgreSQL100Platform;

class PostgreSQL100PlatformTest extends PostgreSQL94PlatformTest
class PostgreSQL100PlatformTest extends PostgreSqlPlatformTest
{
/**
* {@inheritdoc}
Expand Down
34 changes: 0 additions & 34 deletions tests/Doctrine/Tests/DBAL/Platforms/PostgreSQL94PlatformTest.php

This file was deleted.

Loading

0 comments on commit c7bedc5

Please sign in to comment.