mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-14 14:28:27 +08:00
@ -4,6 +4,7 @@ Yii Framework 2 Change Log
|
|||||||
2.0.13 under development
|
2.0.13 under development
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
|
- Bug #7890: Allow `migrate/mark` to mark history at the point of the base migration (cebe)
|
||||||
- Chg #14321: `yii\widgets\MaskedInput` is now registering its JavaScript `clientOptions` initialization code in head section (DaveFerger)
|
- Chg #14321: `yii\widgets\MaskedInput` is now registering its JavaScript `clientOptions` initialization code in head section (DaveFerger)
|
||||||
- Bug #13757: Fixed ambiguous column error in `BaseActiveRecord::refresh()` when the query adds a JOIN by default (cebe, ivankff)
|
- Bug #13757: Fixed ambiguous column error in `BaseActiveRecord::refresh()` when the query adds a JOIN by default (cebe, ivankff)
|
||||||
- Bug #14248: `yii\console\controllers\MessageController` no longer outputs colorized filenames when console does not support text colorization (PowerGamer1)
|
- Bug #14248: `yii\console\controllers\MessageController` no longer outputs colorized filenames when console does not support text colorization (PowerGamer1)
|
||||||
|
@ -366,11 +366,14 @@ abstract class BaseMigrateController extends Controller
|
|||||||
* ```
|
* ```
|
||||||
* yii migrate/mark 101129_185401 # using timestamp
|
* yii migrate/mark 101129_185401 # using timestamp
|
||||||
* yii migrate/mark m101129_185401_create_user_table # using full name
|
* yii migrate/mark m101129_185401_create_user_table # using full name
|
||||||
* yii migrate/to app\migrations\M101129185401CreateUser # using full namespace name
|
* yii migrate/mark app\migrations\M101129185401CreateUser # using full namespace name
|
||||||
|
* yii migrate/mark m000000_000000_base # reset the complete migration history
|
||||||
* ```
|
* ```
|
||||||
*
|
*
|
||||||
* @param string $version the version at which the migration history should be marked.
|
* @param string $version the version at which the migration history should be marked.
|
||||||
* This can be either the timestamp or the full name of the migration.
|
* This can be either the timestamp or the full name of the migration.
|
||||||
|
* You may specify the name `m000000_000000_base` to set the migration history to a
|
||||||
|
* state where no migration has been applied.
|
||||||
* @return int CLI exit code
|
* @return int CLI exit code
|
||||||
* @throws Exception if the version argument is invalid or the version cannot be found.
|
* @throws Exception if the version argument is invalid or the version cannot be found.
|
||||||
*/
|
*/
|
||||||
@ -381,7 +384,7 @@ abstract class BaseMigrateController extends Controller
|
|||||||
$version = $namespaceVersion;
|
$version = $namespaceVersion;
|
||||||
} elseif (($migrationName = $this->extractMigrationVersion($version)) !== false) {
|
} elseif (($migrationName = $this->extractMigrationVersion($version)) !== false) {
|
||||||
$version = $migrationName;
|
$version = $migrationName;
|
||||||
} else {
|
} elseif ($version !== static::BASE_MIGRATION) {
|
||||||
throw new Exception("The version argument must be either a timestamp (e.g. 101129_185401)\nor the full name of a migration (e.g. m101129_185401_create_user_table)\nor the full name of a namespaced migration (e.g. app\\migrations\\M101129185401CreateUserTable).");
|
throw new Exception("The version argument must be either a timestamp (e.g. 101129_185401)\nor the full name of a migration (e.g. m101129_185401_create_user_table)\nor the full name of a namespaced migration (e.g. app\\migrations\\M101129185401CreateUserTable).");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -402,6 +405,7 @@ abstract class BaseMigrateController extends Controller
|
|||||||
|
|
||||||
// try mark down
|
// try mark down
|
||||||
$migrations = array_keys($this->getMigrationHistory(null));
|
$migrations = array_keys($this->getMigrationHistory(null));
|
||||||
|
$migrations[] = static::BASE_MIGRATION;
|
||||||
foreach ($migrations as $i => $migration) {
|
foreach ($migrations as $i => $migration) {
|
||||||
if (strpos($migration, $version) === 0) {
|
if (strpos($migration, $version) === 0) {
|
||||||
if ($i === 0) {
|
if ($i === 0) {
|
||||||
|
@ -312,6 +312,18 @@ CODE;
|
|||||||
$this->assertMigrationHistory(['m*_base', 'm*_test_mark1']);
|
$this->assertMigrationHistory(['m*_base', 'm*_test_mark1']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testMarkBase()
|
||||||
|
{
|
||||||
|
$version = '010101_000001';
|
||||||
|
$this->createMigration('test_mark1', $version);
|
||||||
|
|
||||||
|
$this->runMigrateControllerAction('up');
|
||||||
|
$this->assertMigrationHistory(['m*_base', 'm*_test_mark1']);
|
||||||
|
|
||||||
|
$this->runMigrateControllerAction('mark', [BaseMigrateController::BASE_MIGRATION]);
|
||||||
|
$this->assertMigrationHistory(['m*_base']);
|
||||||
|
}
|
||||||
|
|
||||||
public function testTo()
|
public function testTo()
|
||||||
{
|
{
|
||||||
$version = '020202_000001';
|
$version = '020202_000001';
|
||||||
|
Reference in New Issue
Block a user