Merge branch 'dev'
This commit is contained in:
commit
19c9c2c30f
6
.github/workflows/pypi.yml
vendored
6
.github/workflows/pypi.yml
vendored
@ -8,12 +8,12 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions/setup-python@v1
|
- uses: actions/setup-python@v2
|
||||||
with:
|
with:
|
||||||
python-version: '3.x'
|
python-version: '3.x'
|
||||||
|
- uses: dschep/install-poetry-action@v1.3
|
||||||
- name: Build dists
|
- name: Build dists
|
||||||
run: |
|
run: make build
|
||||||
python3 setup.py sdist
|
|
||||||
- name: Pypi Publish
|
- name: Pypi Publish
|
||||||
uses: pypa/gh-action-pypi-publish@master
|
uses: pypa/gh-action-pypi-publish@master
|
||||||
with:
|
with:
|
||||||
|
7
.github/workflows/test.yml
vendored
7
.github/workflows/test.yml
vendored
@ -19,10 +19,7 @@ jobs:
|
|||||||
- uses: actions/setup-python@v2
|
- uses: actions/setup-python@v2
|
||||||
with:
|
with:
|
||||||
python-version: '3.x'
|
python-version: '3.x'
|
||||||
- name: Install dependencies
|
- uses: dschep/install-poetry-action@v1.3
|
||||||
run: |
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install -r requirements-dev.txt
|
|
||||||
- name: CI
|
- name: CI
|
||||||
env:
|
env:
|
||||||
MYSQL_PASS: root
|
MYSQL_PASS: root
|
||||||
@ -31,4 +28,4 @@ jobs:
|
|||||||
POSTGRES_PASS: 123456
|
POSTGRES_PASS: 123456
|
||||||
POSTGRES_HOST: 127.0.0.1
|
POSTGRES_HOST: 127.0.0.1
|
||||||
POSTGRES_PORT: 5432
|
POSTGRES_PORT: 5432
|
||||||
run: make testall
|
run: make ci
|
@ -1,6 +1,12 @@
|
|||||||
=========
|
=========
|
||||||
ChangeLog
|
ChangeLog
|
||||||
=========
|
=========
|
||||||
|
0.2
|
||||||
|
===
|
||||||
|
0.2.0
|
||||||
|
-----
|
||||||
|
- Update model file find method.
|
||||||
|
- Set ``--safe`` bool.
|
||||||
|
|
||||||
0.1
|
0.1
|
||||||
===
|
===
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
include LICENSE
|
|
||||||
include README.rst
|
|
||||||
include requirements.txt
|
|
18
Makefile
18
Makefile
@ -18,9 +18,11 @@ help:
|
|||||||
@echo " test Runs all tests"
|
@echo " test Runs all tests"
|
||||||
@echo " style Auto-formats the code"
|
@echo " style Auto-formats the code"
|
||||||
|
|
||||||
|
up:
|
||||||
|
@poetry update
|
||||||
|
|
||||||
deps:
|
deps:
|
||||||
@which pip-sync > /dev/null || pip install -q pip-tools
|
@poetry install -E dbdrivers
|
||||||
@pip install -r requirements-dev.txt
|
|
||||||
|
|
||||||
style: deps
|
style: deps
|
||||||
isort -rc $(checkfiles)
|
isort -rc $(checkfiles)
|
||||||
@ -50,10 +52,10 @@ test_postgres:
|
|||||||
|
|
||||||
testall: deps test_sqlite test_postgres test_mysql
|
testall: deps test_sqlite test_postgres test_mysql
|
||||||
|
|
||||||
publish: deps
|
build: deps
|
||||||
rm -fR dist/
|
@poetry build
|
||||||
python setup.py sdist
|
|
||||||
twine upload dist/*
|
|
||||||
|
|
||||||
ci:
|
publish: deps
|
||||||
@act -P ubuntu-latest=nektos/act-environments-ubuntu:18.04 -b
|
@poetry publish --build
|
||||||
|
|
||||||
|
ci: testall
|
@ -28,7 +28,7 @@ parser = ConfigParser()
|
|||||||
|
|
||||||
|
|
||||||
@click.group(context_settings={"help_option_names": ["-h", "--help"]})
|
@click.group(context_settings={"help_option_names": ["-h", "--help"]})
|
||||||
@click.version_option(__version__)
|
@click.version_option(__version__, "-V", "--version")
|
||||||
@click.option(
|
@click.option(
|
||||||
"-c", "--config", default="aerich.ini", show_default=True, help="Config file.",
|
"-c", "--config", default="aerich.ini", show_default=True, help="Config file.",
|
||||||
)
|
)
|
||||||
@ -190,7 +190,7 @@ async def init(
|
|||||||
@cli.command(help="Generate schema and generate app migrate location.")
|
@cli.command(help="Generate schema and generate app migrate location.")
|
||||||
@click.option(
|
@click.option(
|
||||||
"--safe",
|
"--safe",
|
||||||
is_flag=True,
|
type=bool,
|
||||||
default=True,
|
default=True,
|
||||||
help="When set to true, creates the table only when it does not already exist.",
|
help="When set to true, creates the table only when it does not already exist.",
|
||||||
show_default=True,
|
show_default=True,
|
||||||
|
@ -3,6 +3,7 @@ import os
|
|||||||
import re
|
import re
|
||||||
from copy import deepcopy
|
from copy import deepcopy
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
from importlib import import_module
|
||||||
from typing import Dict, List, Tuple, Type
|
from typing import Dict, List, Tuple, Type
|
||||||
|
|
||||||
from tortoise import (
|
from tortoise import (
|
||||||
@ -71,8 +72,6 @@ class Migrate:
|
|||||||
from aerich.ddl.postgres import PostgresDDL
|
from aerich.ddl.postgres import PostgresDDL
|
||||||
|
|
||||||
cls.ddl = PostgresDDL(connection)
|
cls.ddl = PostgresDDL(connection)
|
||||||
else:
|
|
||||||
raise NotImplementedError("Current only support MySQL")
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
async def _get_last_version_num(cls):
|
async def _get_last_version_num(cls):
|
||||||
@ -194,8 +193,7 @@ class Migrate:
|
|||||||
old_model_files = []
|
old_model_files = []
|
||||||
models = config.get("apps").get(app).get("models")
|
models = config.get("apps").get(app).get("models")
|
||||||
for model in models:
|
for model in models:
|
||||||
if model != "aerich.models":
|
old_model_files.append(import_module(model).__file__)
|
||||||
old_model_files.append(model.replace(".", "/") + ".py")
|
|
||||||
|
|
||||||
cls.cp_models(app, old_model_files, os.path.join(location, app, cls.get_old_model_file()))
|
cls.cp_models(app, old_model_files, os.path.join(location, app, cls.get_old_model_file()))
|
||||||
|
|
||||||
|
49
poetry.lock
generated
49
poetry.lock
generated
@ -1,8 +1,8 @@
|
|||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "MySQL driver for asyncio."
|
description = "MySQL driver for asyncio."
|
||||||
name = "aiomysql"
|
name = "aiomysql"
|
||||||
optional = false
|
optional = true
|
||||||
python-versions = "*"
|
python-versions = "*"
|
||||||
version = "0.0.20"
|
version = "0.0.20"
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ description = "High level compatibility layer for multiple asynchronous event lo
|
|||||||
name = "anyio"
|
name = "anyio"
|
||||||
optional = false
|
optional = false
|
||||||
python-versions = ">=3.5.3"
|
python-versions = ">=3.5.3"
|
||||||
version = "1.3.0"
|
version = "1.3.1"
|
||||||
|
|
||||||
[package.dependencies]
|
[package.dependencies]
|
||||||
async-generator = "*"
|
async-generator = "*"
|
||||||
@ -78,10 +78,10 @@ dev = ["coverage", "pytest-runner", "pytest-trio", "pytest (>=3)", "sphinx", "to
|
|||||||
docs = ["sphinx"]
|
docs = ["sphinx"]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "An asyncio PostgreSQL driver"
|
description = "An asyncio PostgreSQL driver"
|
||||||
name = "asyncpg"
|
name = "asyncpg"
|
||||||
optional = false
|
optional = true
|
||||||
python-versions = ">=3.5.0"
|
python-versions = ">=3.5.0"
|
||||||
version = "0.20.1"
|
version = "0.20.1"
|
||||||
|
|
||||||
@ -134,10 +134,10 @@ typed-ast = ">=1.4.0"
|
|||||||
d = ["aiohttp (>=3.3.2)", "aiohttp-cors"]
|
d = ["aiohttp (>=3.3.2)", "aiohttp-cors"]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "Foreign Function Interface for Python calling C code."
|
description = "Foreign Function Interface for Python calling C code."
|
||||||
name = "cffi"
|
name = "cffi"
|
||||||
optional = false
|
optional = true
|
||||||
python-versions = "*"
|
python-versions = "*"
|
||||||
version = "1.14.0"
|
version = "1.14.0"
|
||||||
|
|
||||||
@ -171,10 +171,10 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
|
|||||||
version = "0.4.3"
|
version = "0.4.3"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
|
description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
|
||||||
name = "cryptography"
|
name = "cryptography"
|
||||||
optional = false
|
optional = true
|
||||||
python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*"
|
python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*"
|
||||||
version = "2.9.2"
|
version = "2.9.2"
|
||||||
|
|
||||||
@ -327,10 +327,10 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
|||||||
version = "2.6.0"
|
version = "2.6.0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "C parser in Python"
|
description = "C parser in Python"
|
||||||
name = "pycparser"
|
name = "pycparser"
|
||||||
optional = false
|
optional = true
|
||||||
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
||||||
version = "2.20"
|
version = "2.20"
|
||||||
|
|
||||||
@ -356,10 +356,10 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
|||||||
version = "2.2.0"
|
version = "2.2.0"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "Pure Python MySQL Driver"
|
description = "Pure Python MySQL Driver"
|
||||||
name = "pymysql"
|
name = "pymysql"
|
||||||
optional = false
|
optional = true
|
||||||
python-versions = "*"
|
python-versions = "*"
|
||||||
version = "0.9.2"
|
version = "0.9.2"
|
||||||
|
|
||||||
@ -380,7 +380,7 @@ description = "A SQL query builder API for Python"
|
|||||||
name = "pypika"
|
name = "pypika"
|
||||||
optional = false
|
optional = false
|
||||||
python-versions = "*"
|
python-versions = "*"
|
||||||
version = "0.37.6"
|
version = "0.37.7"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "dev"
|
||||||
@ -455,7 +455,7 @@ python-versions = "*"
|
|||||||
version = "2020.5.14"
|
version = "2020.5.14"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "main"
|
||||||
description = "Python 2 and 3 compatibility utilities"
|
description = "Python 2 and 3 compatibility utilities"
|
||||||
name = "six"
|
name = "six"
|
||||||
optional = false
|
optional = false
|
||||||
@ -522,14 +522,17 @@ version = "3.7.4.2"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
category = "dev"
|
category = "dev"
|
||||||
description = "Measures number of Terminal column cells of wide-character codes"
|
description = "Measures the displayed width of unicode strings in a terminal"
|
||||||
name = "wcwidth"
|
name = "wcwidth"
|
||||||
optional = false
|
optional = false
|
||||||
python-versions = "*"
|
python-versions = "*"
|
||||||
version = "0.1.9"
|
version = "0.2.2"
|
||||||
|
|
||||||
|
[extras]
|
||||||
|
dbdrivers = ["aiomysql", "asyncpg"]
|
||||||
|
|
||||||
[metadata]
|
[metadata]
|
||||||
content-hash = "35274e9622d359af475f573760ba687b31756b1b1de70bc4d75dab5ddbc5a93d"
|
content-hash = "6b1f30cb32cf5915f1ee1f6c6b0e52130bc8f7af92f1a9703dc9632ebce2a977"
|
||||||
python-versions = "^3.8"
|
python-versions = "^3.8"
|
||||||
|
|
||||||
[metadata.files]
|
[metadata.files]
|
||||||
@ -542,8 +545,8 @@ aiosqlite = [
|
|||||||
{file = "aiosqlite-0.13.0.tar.gz", hash = "sha256:6e92961ae9e606b43b05e29b129e346b29e400fcbd63e3c0c564d89230257645"},
|
{file = "aiosqlite-0.13.0.tar.gz", hash = "sha256:6e92961ae9e606b43b05e29b129e346b29e400fcbd63e3c0c564d89230257645"},
|
||||||
]
|
]
|
||||||
anyio = [
|
anyio = [
|
||||||
{file = "anyio-1.3.0-py3-none-any.whl", hash = "sha256:db2c3d21576870b95d4fd0b8f4a0f9c64057f777c578f3a8127179a17c8c067e"},
|
{file = "anyio-1.3.1-py3-none-any.whl", hash = "sha256:f21b4fafeec1b7db81e09a907e44e374a1e39718d782a488fdfcdcf949c8950c"},
|
||||||
{file = "anyio-1.3.0.tar.gz", hash = "sha256:7deae0315dd10aa41c21528b83352e4b52f44e6153a21081a3d1cd8c03728e46"},
|
{file = "anyio-1.3.1.tar.gz", hash = "sha256:a46bb2b7743455434afd9adea848a3c4e0b7321aee3e9d08844b11d348d3b5a0"},
|
||||||
]
|
]
|
||||||
apipkg = [
|
apipkg = [
|
||||||
{file = "apipkg-1.5-py2.py3-none-any.whl", hash = "sha256:58587dd4dc3daefad0487f6d9ae32b4542b185e1c36db6993290e7c41ca2b47c"},
|
{file = "apipkg-1.5-py2.py3-none-any.whl", hash = "sha256:58587dd4dc3daefad0487f6d9ae32b4542b185e1c36db6993290e7c41ca2b47c"},
|
||||||
@ -758,7 +761,7 @@ pyparsing = [
|
|||||||
{file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"},
|
{file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"},
|
||||||
]
|
]
|
||||||
pypika = [
|
pypika = [
|
||||||
{file = "PyPika-0.37.6.tar.gz", hash = "sha256:64510fa36667e8bb654bdc1be5a3a77bac1dbc2f03d4848efac08e39d9cac6f5"},
|
{file = "PyPika-0.37.7.tar.gz", hash = "sha256:20bebc05983cd401d428e3beb62d037e5f0271daab2bb5aba82f4e092d4a3694"},
|
||||||
]
|
]
|
||||||
pytest = [
|
pytest = [
|
||||||
{file = "pytest-5.4.2-py3-none-any.whl", hash = "sha256:95c710d0a72d91c13fae35dce195633c929c3792f54125919847fdcdf7caa0d3"},
|
{file = "pytest-5.4.2-py3-none-any.whl", hash = "sha256:95c710d0a72d91c13fae35dce195633c929c3792f54125919847fdcdf7caa0d3"},
|
||||||
@ -846,6 +849,6 @@ typing-extensions = [
|
|||||||
{file = "typing_extensions-3.7.4.2.tar.gz", hash = "sha256:79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae"},
|
{file = "typing_extensions-3.7.4.2.tar.gz", hash = "sha256:79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae"},
|
||||||
]
|
]
|
||||||
wcwidth = [
|
wcwidth = [
|
||||||
{file = "wcwidth-0.1.9-py2.py3-none-any.whl", hash = "sha256:cafe2186b3c009a04067022ce1dcd79cb38d8d65ee4f4791b8888d6599d1bbe1"},
|
{file = "wcwidth-0.2.2-py2.py3-none-any.whl", hash = "sha256:b651b6b081476420e4e9ae61239ac4c1b49d0c5ace42b2e81dc2ff49ed50c566"},
|
||||||
{file = "wcwidth-0.1.9.tar.gz", hash = "sha256:ee73862862a156bf77ff92b09034fc4825dd3af9cf81bc5b360668d425f3c5f1"},
|
{file = "wcwidth-0.2.2.tar.gz", hash = "sha256:3de2e41158cb650b91f9654cbf9a3e053cee0719c9df4ddc11e4b568669e9829"},
|
||||||
]
|
]
|
||||||
|
@ -1,14 +1,26 @@
|
|||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "aerich"
|
name = "aerich"
|
||||||
version = "0.1.9"
|
version = "0.2.0"
|
||||||
description = "A database migrations tool for Tortoise ORM."
|
description = "A database migrations tool for Tortoise ORM."
|
||||||
authors = ["long2ice <long2ice@gmail.com>"]
|
authors = ["long2ice <long2ice@gmail.com>"]
|
||||||
|
license = "MIT"
|
||||||
|
readme = "README.rst"
|
||||||
|
homepage = "https://github.com/long2ice/aerich"
|
||||||
|
repository = "git@github.com:long2ice/aerich.git"
|
||||||
|
documentation = "https://github.com/long2ice/aerich"
|
||||||
|
keywords = ["migrate", "Tortoise-ORM", "mysql"]
|
||||||
|
packages = [
|
||||||
|
{ include = "aerich" }
|
||||||
|
]
|
||||||
|
include = ["CHANGELOG.rst", "LICENSE", "README.rst"]
|
||||||
|
|
||||||
[tool.poetry.dependencies]
|
[tool.poetry.dependencies]
|
||||||
python = "^3.8"
|
python = "^3.8"
|
||||||
tortoise-orm = "*"
|
tortoise-orm = "*"
|
||||||
asyncclick = "*"
|
asyncclick = "*"
|
||||||
pydantic = "*"
|
pydantic = "*"
|
||||||
|
aiomysql = {version = "*", optional = true}
|
||||||
|
asyncpg = {version = "*", optional = true}
|
||||||
|
|
||||||
[tool.poetry.dev-dependencies]
|
[tool.poetry.dev-dependencies]
|
||||||
taskipy = "*"
|
taskipy = "*"
|
||||||
@ -16,17 +28,16 @@ flake8 = "*"
|
|||||||
isort = "*"
|
isort = "*"
|
||||||
black = "^19.10b0"
|
black = "^19.10b0"
|
||||||
pytest = "*"
|
pytest = "*"
|
||||||
aiomysql = "*"
|
|
||||||
asyncpg = "*"
|
|
||||||
pytest-xdist = "*"
|
pytest-xdist = "*"
|
||||||
mypy = "*"
|
mypy = "*"
|
||||||
pytest-asyncio = "*"
|
pytest-asyncio = "*"
|
||||||
|
|
||||||
[tool.taskipy.tasks]
|
[tool.poetry.extras]
|
||||||
export = "poetry export -f requirements.txt --without-hashes > requirements.txt"
|
dbdrivers = ["aiomysql", "asyncpg"]
|
||||||
export-dev = "poetry export -f requirements.txt --dev --without-hashes > requirements-dev.txt"
|
|
||||||
|
|
||||||
[build-system]
|
[build-system]
|
||||||
requires = ["poetry>=0.12"]
|
requires = ["poetry>=0.12"]
|
||||||
build-backend = "poetry.masonry.api"
|
build-backend = "poetry.masonry.api"
|
||||||
|
|
||||||
|
[tool.poetry.scripts]
|
||||||
|
aerich = "aerich.cli:main"
|
@ -1,48 +0,0 @@
|
|||||||
aiomysql==0.0.20
|
|
||||||
aiosqlite==0.13.0
|
|
||||||
anyio==1.3.0
|
|
||||||
apipkg==1.5
|
|
||||||
appdirs==1.4.4
|
|
||||||
async-generator==1.10
|
|
||||||
asyncclick==7.0.9
|
|
||||||
asyncpg==0.20.1
|
|
||||||
atomicwrites==1.4.0; sys_platform == "win32"
|
|
||||||
attrs==19.3.0
|
|
||||||
black==19.10b0
|
|
||||||
cffi==1.14.0
|
|
||||||
ciso8601==2.1.3; sys_platform != "win32" and implementation_name == "cpython"
|
|
||||||
click==7.1.2
|
|
||||||
colorama==0.4.3; sys_platform == "win32"
|
|
||||||
cryptography==2.9.2
|
|
||||||
execnet==1.7.1
|
|
||||||
flake8==3.8.2
|
|
||||||
iso8601==0.1.12; sys_platform == "win32" or implementation_name != "cpython"
|
|
||||||
isort==4.3.21
|
|
||||||
mccabe==0.6.1
|
|
||||||
more-itertools==8.3.0
|
|
||||||
mypy==0.770
|
|
||||||
mypy-extensions==0.4.3
|
|
||||||
packaging==20.4
|
|
||||||
pathspec==0.8.0
|
|
||||||
pluggy==0.13.1
|
|
||||||
py==1.8.1
|
|
||||||
pycodestyle==2.6.0
|
|
||||||
pycparser==2.20
|
|
||||||
pydantic==1.5.1
|
|
||||||
pyflakes==2.2.0
|
|
||||||
pymysql==0.9.2
|
|
||||||
pyparsing==2.4.7
|
|
||||||
pypika==0.37.6
|
|
||||||
pytest==5.4.2
|
|
||||||
pytest-asyncio==0.12.0
|
|
||||||
pytest-forked==1.1.3
|
|
||||||
pytest-xdist==1.32.0
|
|
||||||
regex==2020.5.14
|
|
||||||
six==1.15.0
|
|
||||||
sniffio==1.1.0
|
|
||||||
taskipy==1.2.1
|
|
||||||
toml==0.10.1
|
|
||||||
tortoise-orm==0.16.12
|
|
||||||
typed-ast==1.4.1
|
|
||||||
typing-extensions==3.7.4.2
|
|
||||||
wcwidth==0.1.9
|
|
@ -1,11 +0,0 @@
|
|||||||
aiosqlite==0.13.0
|
|
||||||
anyio==1.3.0
|
|
||||||
async-generator==1.10
|
|
||||||
asyncclick==7.0.9
|
|
||||||
ciso8601==2.1.3; sys_platform != "win32" and implementation_name == "cpython"
|
|
||||||
iso8601==0.1.12; sys_platform == "win32" or implementation_name != "cpython"
|
|
||||||
pydantic==1.5.1
|
|
||||||
pypika==0.37.6
|
|
||||||
sniffio==1.1.0
|
|
||||||
tortoise-orm==0.16.12
|
|
||||||
typing-extensions==3.7.4.2
|
|
47
setup.cfg
47
setup.cfg
@ -1,47 +0,0 @@
|
|||||||
[flake8]
|
|
||||||
max-line-length = 100
|
|
||||||
exclude =
|
|
||||||
ignore = E501,W503,DAR101,DAR201,DAR402
|
|
||||||
|
|
||||||
[darglint]
|
|
||||||
docstring_style=sphinx
|
|
||||||
|
|
||||||
[isort]
|
|
||||||
not_skip=__init__.py
|
|
||||||
multi_line_output=3
|
|
||||||
include_trailing_comma=True
|
|
||||||
force_grid_wrap=0
|
|
||||||
use_parentheses=True
|
|
||||||
line_length=100
|
|
||||||
|
|
||||||
[tool:pytest]
|
|
||||||
addopts = -n auto --tb=native -q
|
|
||||||
|
|
||||||
[mypy]
|
|
||||||
pretty = True
|
|
||||||
ignore_missing_imports = True
|
|
||||||
check_untyped_defs = True
|
|
||||||
disallow_subclassing_any = True
|
|
||||||
disallow_untyped_calls = True
|
|
||||||
disallow_untyped_defs = False
|
|
||||||
disallow_incomplete_defs = False
|
|
||||||
disallow_untyped_decorators = True
|
|
||||||
no_implicit_optional = True
|
|
||||||
warn_redundant_casts = True
|
|
||||||
warn_unused_ignores = True
|
|
||||||
warn_no_return = True
|
|
||||||
warn_return_any = False
|
|
||||||
warn_unused_configs = True
|
|
||||||
warn_unreachable = True
|
|
||||||
allow_redefinition = True
|
|
||||||
strict_equality = True
|
|
||||||
show_error_context = True
|
|
||||||
|
|
||||||
[mypy-tests.*]
|
|
||||||
check_untyped_defs = False
|
|
||||||
disallow_untyped_defs = False
|
|
||||||
disallow_incomplete_defs = False
|
|
||||||
warn_unreachable = False
|
|
||||||
|
|
||||||
[mypy-conftest]
|
|
||||||
disallow_untyped_defs = False
|
|
44
setup.py
44
setup.py
@ -1,44 +0,0 @@
|
|||||||
import os
|
|
||||||
import re
|
|
||||||
from setuptools import find_packages, setup
|
|
||||||
|
|
||||||
|
|
||||||
def version():
|
|
||||||
ver_str_line = open('aerich/__init__.py', 'rt').read()
|
|
||||||
mob = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", ver_str_line, re.M)
|
|
||||||
if not mob:
|
|
||||||
raise RuntimeError("Unable to find version string")
|
|
||||||
return mob.group(1)
|
|
||||||
|
|
||||||
|
|
||||||
with open(os.path.join(os.path.dirname(__file__), 'README.rst')) as f:
|
|
||||||
long_description = f.read()
|
|
||||||
|
|
||||||
|
|
||||||
def requirements():
|
|
||||||
return open('requirements.txt', 'rt').read().splitlines()
|
|
||||||
|
|
||||||
|
|
||||||
setup(
|
|
||||||
name='aerich',
|
|
||||||
version=version(),
|
|
||||||
description='A database migrations tool for Tortoise-ORM.',
|
|
||||||
author='long2ice',
|
|
||||||
long_description_content_type='text/x-rst',
|
|
||||||
long_description=long_description,
|
|
||||||
author_email='long2ice@gmail.com',
|
|
||||||
url='https://github.com/long2ice/aerich',
|
|
||||||
license='MIT License',
|
|
||||||
packages=find_packages(include=['aerich*']),
|
|
||||||
include_package_data=True,
|
|
||||||
zip_safe=True,
|
|
||||||
entry_points={
|
|
||||||
'console_scripts': ['aerich = aerich.cli:main'],
|
|
||||||
},
|
|
||||||
platforms='any',
|
|
||||||
keywords=(
|
|
||||||
'migrate Tortoise-ORM mysql'
|
|
||||||
),
|
|
||||||
dependency_links=['https://github.com/tortoise-orm/tortoise-orm.git@develop#egg=tortoise-orm'],
|
|
||||||
install_requires=requirements(),
|
|
||||||
)
|
|
Loading…
x
Reference in New Issue
Block a user