5 Commits

Author SHA1 Message Date
long2ice
768747140a update changelog 2020-10-12 21:01:53 +08:00
long2ice
1fde3cd04e fix init KeyError (#61) 2020-10-12 20:59:13 +08:00
long2ice
d0ce545ff5 Fix first version error 2020-10-10 15:07:09 +08:00
long2ice
09b89ed7d0 update README 2020-10-09 15:41:37 +08:00
long2ice
86c8382593 update README 2020-10-09 15:34:48 +08:00
6 changed files with 18 additions and 8 deletions

View File

@@ -2,13 +2,18 @@
## 0.3
### 0.3.1
- Fix first version error.
- Fix init error. (#61)
### 0.3.0
- Refactoring migrate logic, and this version is not compatible with previous version.
- Now there don't need `old_models.py` and it store in database.
- Upgrade steps:
1. Upgrade aerich version.
2. Drop aerich model in db and recreate with new struct.
2. Drop aerich table in database.
3. Delete `migrations/{app}` folder and rerun `aerich init-db`.
4. Update model and `aerich migrate` normally.

View File

@@ -10,6 +10,8 @@
Aerich is a database migrations tool for Tortoise-ORM, which like alembic for SQLAlchemy, or Django ORM with it\'s
own migrations solution.
**If you upgrade aerich from <= 0.2.5 to >= 0.3.0, see [changelog](https://github.com/tortoise/aerich/blob/dev/CHANGELOG.md) for upgrade steps.**
## Install
Just install from pypi:
@@ -33,7 +35,7 @@ Options:
-h, --help Show this message and exit.
Commands:
downgrade Downgrade to previous version.
downgrade Downgrade to specified version.
heads Show current available heads in migrate location.
history List all migrate items.
init Init config file and generate root migrate location.

View File

@@ -1 +1 @@
__version__ = "0.3.0"
__version__ = "0.3.1"

View File

@@ -28,7 +28,9 @@ def coro(f):
loop = asyncio.get_event_loop()
ctx = args[0]
loop.run_until_complete(f(*args, **kwargs))
Migrate.remove_old_model_file(ctx.obj["app"], ctx.obj["location"])
app = ctx.obj.get("app")
if app:
Migrate.remove_old_model_file(app, ctx.obj["location"])
return wrapper

View File

@@ -67,9 +67,10 @@ class Migrate:
async def init_with_old_models(cls, config: dict, app: str, location: str):
await Tortoise.init(config=config)
last_version = await cls.get_last_version()
content = last_version.content
with open(cls.get_old_model_file(app, location), "w") as f:
f.write(content)
if last_version:
content = last_version.content
with open(cls.get_old_model_file(app, location), "w") as f:
f.write(content)
migrate_config = cls._get_migrate_config(config, app, location)
cls.app = app

View File

@@ -1,6 +1,6 @@
[tool.poetry]
name = "aerich"
version = "0.3.0"
version = "0.3.1"
description = "A database migrations tool for Tortoise ORM."
authors = ["long2ice <long2ice@gmail.com>"]
license = "Apache-2.0"