Merge pull request #35618 from nextcloud/fix/migration-step-inherit-generic-closure-types

Explicitly inherit stricly typed database schema closure of migrations
pull/33410/head
Julius Härtl 2 years ago committed by GitHub
commit 7c9c0d1851
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -27,6 +27,7 @@ declare(strict_types=1);
*/
namespace OCP\Migration;
use Closure;
use OCP\DB\ISchemaWrapper;
/**
@ -34,7 +35,7 @@ use OCP\DB\ISchemaWrapper;
*/
interface IMigrationStep {
/**
* Human readable name of the migration step
* Human-readable name of the migration step
*
* @return string
* @since 14.0.0
@ -42,7 +43,7 @@ interface IMigrationStep {
public function name(): string;
/**
* Human readable description of the migration steps
* Human-readable description of the migration step
*
* @return string
* @since 14.0.0
@ -51,29 +52,29 @@ interface IMigrationStep {
/**
* @param IOutput $output
* @param \Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @psalm-param Closure():ISchemaWrapper $schemaClosure
* @param array $options
* @since 13.0.0
*/
public function preSchemaChange(IOutput $output, \Closure $schemaClosure, array $options);
public function preSchemaChange(IOutput $output, Closure $schemaClosure, array $options);
/**
* @param IOutput $output
* @param \Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @psalm-param Closure():ISchemaWrapper $schemaClosure
* @param array $options
* @return null|ISchemaWrapper
* @since 13.0.0
*/
public function changeSchema(IOutput $output, \Closure $schemaClosure, array $options);
public function changeSchema(IOutput $output, Closure $schemaClosure, array $options);
/**
* @param IOutput $output
* @param \Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @psalm-param Closure():ISchemaWrapper $schemaClosure
* @param array $options
* @since 13.0.0
*/
public function postSchemaChange(IOutput $output, \Closure $schemaClosure, array $options);
public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options);
}

@ -28,12 +28,15 @@ declare(strict_types=1);
*/
namespace OCP\Migration;
use Closure;
use OCP\DB\ISchemaWrapper;
/**
* @since 13.0.0
*/
abstract class SimpleMigrationStep implements IMigrationStep {
/**
* Human readable name of the migration step
* Human-readable name of the migration step
*
* @return string
* @since 14.0.0
@ -43,7 +46,7 @@ abstract class SimpleMigrationStep implements IMigrationStep {
}
/**
* Human readable description of the migration step
* Human-readable description of the migration step
*
* @return string
* @since 14.0.0
@ -53,16 +56,21 @@ abstract class SimpleMigrationStep implements IMigrationStep {
}
/**
* {@inheritDoc}
*
* @param IOutput $output
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @psalm-param Closure():ISchemaWrapper $schemaClosure
* @param array $options
* @since 13.0.0
*/
public function preSchemaChange(IOutput $output, \Closure $schemaClosure, array $options) {
}
/**
* {@inheritDoc}
*
* @param IOutput $output
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @psalm-param Closure():ISchemaWrapper $schemaClosure
* @param array $options
* @return null|ISchemaWrapper
* @since 13.0.0
*/
public function changeSchema(IOutput $output, \Closure $schemaClosure, array $options) {
@ -70,8 +78,10 @@ abstract class SimpleMigrationStep implements IMigrationStep {
}
/**
* {@inheritDoc}
*
* @param IOutput $output
* @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper`
* @psalm-param Closure():ISchemaWrapper $schemaClosure
* @param array $options
* @since 13.0.0
*/
public function postSchemaChange(IOutput $output, \Closure $schemaClosure, array $options) {

Loading…
Cancel
Save