From d2083632eb038f64319d0a27e7dfb20ca17b1ba0 Mon Sep 17 00:00:00 2001 From: long2ice Date: Wed, 27 May 2020 12:44:49 +0800 Subject: [PATCH 01/14] add cli -V --- aerich/cli.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aerich/cli.py b/aerich/cli.py index af4e19d..25f6be6 100644 --- a/aerich/cli.py +++ b/aerich/cli.py @@ -28,7 +28,7 @@ parser = ConfigParser() @click.group(context_settings={"help_option_names": ["-h", "--help"]}) -@click.version_option(__version__) +@click.version_option(__version__, '-V', '--version') @click.option( "-c", "--config", default="aerich.ini", show_default=True, help="Config file.", ) @@ -166,7 +166,7 @@ def history(ctx): ) @click.pass_context async def init( - ctx: Context, tortoise_orm, location, + ctx: Context, tortoise_orm, location, ): config_file = ctx.obj["config_file"] name = ctx.obj["name"] From ec1c80f3a97438ae579ff4f8048b43a98258f373 Mon Sep 17 00:00:00 2001 From: long2ice Date: Mon, 1 Jun 2020 14:57:29 +0800 Subject: [PATCH 02/14] remove requirements --- Makefile | 15 ++-- aerich/cli.py | 4 +- poetry.lock | 177 +++---------------------------------------- pyproject.toml | 19 +++-- requirements-dev.txt | 48 ------------ requirements.txt | 11 --- setup.py | 44 ----------- 7 files changed, 34 insertions(+), 284 deletions(-) delete mode 100644 requirements-dev.txt delete mode 100644 requirements.txt delete mode 100644 setup.py diff --git a/Makefile b/Makefile index 2eda6d1..61835f0 100644 --- a/Makefile +++ b/Makefile @@ -18,9 +18,11 @@ help: @echo " test Runs all tests" @echo " style Auto-formats the code" +up: + @poetry install + deps: - @which pip-sync > /dev/null || pip install -q pip-tools - @pip install -r requirements-dev.txt + @poetry update style: deps isort -rc $(checkfiles) @@ -50,10 +52,11 @@ test_postgres: testall: deps test_sqlite test_postgres test_mysql -publish: deps - rm -fR dist/ - python setup.py sdist - twine upload dist/* +build: + @poetry build + +publish: + @poetry publish ci: @act -P ubuntu-latest=nektos/act-environments-ubuntu:18.04 -b \ No newline at end of file diff --git a/aerich/cli.py b/aerich/cli.py index 25f6be6..816f0c0 100644 --- a/aerich/cli.py +++ b/aerich/cli.py @@ -28,7 +28,7 @@ parser = ConfigParser() @click.group(context_settings={"help_option_names": ["-h", "--help"]}) -@click.version_option(__version__, '-V', '--version') +@click.version_option(__version__, "-V", "--version") @click.option( "-c", "--config", default="aerich.ini", show_default=True, help="Config file.", ) @@ -166,7 +166,7 @@ def history(ctx): ) @click.pass_context async def init( - ctx: Context, tortoise_orm, location, + ctx: Context, tortoise_orm, location, ): config_file = ctx.obj["config_file"] name = ctx.obj["name"] diff --git a/poetry.lock b/poetry.lock index 6e024d8..600d4d2 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,17 +1,3 @@ -[[package]] -category = "dev" -description = "MySQL driver for asyncio." -name = "aiomysql" -optional = false -python-versions = "*" -version = "0.0.20" - -[package.dependencies] -PyMySQL = ">=0.9,<=0.9.2" - -[package.extras] -sa = ["sqlalchemy (>=1.0)"] - [[package]] category = "main" description = "asyncio bridge to the standard sqlite3 module" @@ -26,7 +12,7 @@ description = "High level compatibility layer for multiple asynchronous event lo name = "anyio" optional = false python-versions = ">=3.5.3" -version = "1.3.0" +version = "1.3.1" [package.dependencies] async-generator = "*" @@ -77,19 +63,6 @@ anyio = "*" dev = ["coverage", "pytest-runner", "pytest-trio", "pytest (>=3)", "sphinx", "tox"] docs = ["sphinx"] -[[package]] -category = "dev" -description = "An asyncio PostgreSQL driver" -name = "asyncpg" -optional = false -python-versions = ">=3.5.0" -version = "0.20.1" - -[package.extras] -dev = ["Cython (0.29.14)", "pytest (>=3.6.0)", "Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)", "pycodestyle (>=2.5.0,<2.6.0)", "flake8 (>=3.7.9,<3.8.0)", "uvloop (>=0.14.0,<0.15.0)"] -docs = ["Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)"] -test = ["pycodestyle (>=2.5.0,<2.6.0)", "flake8 (>=3.7.9,<3.8.0)", "uvloop (>=0.14.0,<0.15.0)"] - [[package]] category = "dev" description = "Atomic file writes." @@ -133,17 +106,6 @@ typed-ast = ">=1.4.0" [package.extras] d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] -[[package]] -category = "dev" -description = "Foreign Function Interface for Python calling C code." -name = "cffi" -optional = false -python-versions = "*" -version = "1.14.0" - -[package.dependencies] -pycparser = "*" - [[package]] category = "main" description = "Fast ISO8601 date time parser for Python written in C" @@ -170,25 +132,6 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" version = "0.4.3" -[[package]] -category = "dev" -description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." -name = "cryptography" -optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" -version = "2.9.2" - -[package.dependencies] -cffi = ">=1.8,<1.11.3 || >1.11.3" -six = ">=1.4.1" - -[package.extras] -docs = ["sphinx (>=1.6.5,<1.8.0 || >1.8.0)", "sphinx-rtd-theme"] -docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"] -idna = ["idna (>=2.1)"] -pep8test = ["flake8", "flake8-import-order", "pep8-naming"] -test = ["pytest (>=3.6.0,<3.9.0 || >3.9.0,<3.9.1 || >3.9.1,<3.9.2 || >3.9.2)", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,<3.79.2 || >3.79.2)"] - [[package]] category = "dev" description = "execnet: rapid multi-Python deployment" @@ -326,14 +269,6 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "2.6.0" -[[package]] -category = "dev" -description = "C parser in Python" -name = "pycparser" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -version = "2.20" - [[package]] category = "main" description = "Data validation and settings management using python 3.6 type hinting" @@ -355,17 +290,6 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "2.2.0" -[[package]] -category = "dev" -description = "Pure Python MySQL Driver" -name = "pymysql" -optional = false -python-versions = "*" -version = "0.9.2" - -[package.dependencies] -cryptography = "*" - [[package]] category = "dev" description = "Python parsing module" @@ -380,7 +304,7 @@ description = "A SQL query builder API for Python" name = "pypika" optional = false python-versions = "*" -version = "0.37.6" +version = "0.37.7" [[package]] category = "dev" @@ -528,22 +452,21 @@ optional = false python-versions = "*" version = "0.1.9" +[extras] +dbdrivers = [] + [metadata] -content-hash = "35274e9622d359af475f573760ba687b31756b1b1de70bc4d75dab5ddbc5a93d" +content-hash = "dda0d7b8fef9216a0091e97a5cdbd3825be862fbaee3cb9add801dd999b46a77" python-versions = "^3.8" [metadata.files] -aiomysql = [ - {file = "aiomysql-0.0.20-py3-none-any.whl", hash = "sha256:5fd798481f16625b424eec765c56d712ac78a51f3bd0175a3de94107aae43307"}, - {file = "aiomysql-0.0.20.tar.gz", hash = "sha256:d89ce25d44dadb43cf2d9e4603bd67b7a0ad12d5e67208de013629ba648df2ba"}, -] aiosqlite = [ {file = "aiosqlite-0.13.0-py3-none-any.whl", hash = "sha256:50688c40632ae249f986ab3ae2c66a45c0535b84a5d4aae0e0be572b5fed6909"}, {file = "aiosqlite-0.13.0.tar.gz", hash = "sha256:6e92961ae9e606b43b05e29b129e346b29e400fcbd63e3c0c564d89230257645"}, ] anyio = [ - {file = "anyio-1.3.0-py3-none-any.whl", hash = "sha256:db2c3d21576870b95d4fd0b8f4a0f9c64057f777c578f3a8127179a17c8c067e"}, - {file = "anyio-1.3.0.tar.gz", hash = "sha256:7deae0315dd10aa41c21528b83352e4b52f44e6153a21081a3d1cd8c03728e46"}, + {file = "anyio-1.3.1-py3-none-any.whl", hash = "sha256:f21b4fafeec1b7db81e09a907e44e374a1e39718d782a488fdfcdcf949c8950c"}, + {file = "anyio-1.3.1.tar.gz", hash = "sha256:a46bb2b7743455434afd9adea848a3c4e0b7321aee3e9d08844b11d348d3b5a0"}, ] apipkg = [ {file = "apipkg-1.5-py2.py3-none-any.whl", hash = "sha256:58587dd4dc3daefad0487f6d9ae32b4542b185e1c36db6993290e7c41ca2b47c"}, @@ -560,29 +483,6 @@ async-generator = [ asyncclick = [ {file = "asyncclick-7.0.9.tar.gz", hash = "sha256:62cebf3eca36d973802e2dd521ca1db11c5bf4544e9795e093d1a53cb688a8c2"}, ] -asyncpg = [ - {file = "asyncpg-0.20.1-cp35-cp35m-macosx_10_13_x86_64.whl", hash = "sha256:f7184689177eeb5a11fa1b2baf3f6f2e26bfd7a85acf4de1a3adbd0867d7c0e2"}, - {file = "asyncpg-0.20.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:f0c9719ac00615f097fe91082b785bce36dbf02a5ec4115ede0ebfd2cd9500cb"}, - {file = "asyncpg-0.20.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:1388caa456070dab102be874205e3ae8fd1de2577d5de9fa22e65ba5c0f8b110"}, - {file = "asyncpg-0.20.1-cp35-cp35m-win32.whl", hash = "sha256:ec6e7046c98730cb2ba4df41387e10cb8963a3ac2918f69ae416f8aab9ca7b1b"}, - {file = "asyncpg-0.20.1-cp35-cp35m-win_amd64.whl", hash = "sha256:25edb0b947eb632b6b53e5a4b36cba5677297bb34cbaba270019714d0a5fed76"}, - {file = "asyncpg-0.20.1-cp36-cp36m-macosx_10_13_x86_64.whl", hash = "sha256:95cd2df61ee00b789bdcd04a080e6d9188693b841db2bf9a87ebaed9e53147e0"}, - {file = "asyncpg-0.20.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:058baec9d6b75612412baa872a1aa47317d0ff88c318a49f9c4a2389043d5a8d"}, - {file = "asyncpg-0.20.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:c773c7dbe2f4d3ebc9e3030e94303e45d6742e6c2fc25da0c46a56ea3d83caeb"}, - {file = "asyncpg-0.20.1-cp36-cp36m-win32.whl", hash = "sha256:5664d1bd8abe64fc60a0e701eb85fa1d8c9a4a8018a5a59164d27238f2caf395"}, - {file = "asyncpg-0.20.1-cp36-cp36m-win_amd64.whl", hash = "sha256:57666dfae38f4dbf84ffbf0c5c0f78733fef0e8e083230275dcb9ccad1d5ee09"}, - {file = "asyncpg-0.20.1-cp37-cp37m-macosx_10_13_x86_64.whl", hash = "sha256:0c336903c3b08e970f8af2f606332f1738dba156bca83ed0467dc2f5c70da796"}, - {file = "asyncpg-0.20.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:ad5ba062e09673b1a4b8d0facaf5a6d9719bf7b337440d10b07fe994d90a9552"}, - {file = "asyncpg-0.20.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:ba90d3578bc6dddcbce461875672fd9bdb34f0b8215b68612dd3b65a956ff51c"}, - {file = "asyncpg-0.20.1-cp37-cp37m-win32.whl", hash = "sha256:da238592235717419a6a7b5edc8564da410ebfd056ca4ecc41e70b1b5df86fba"}, - {file = "asyncpg-0.20.1-cp37-cp37m-win_amd64.whl", hash = "sha256:74510234c294c6a6767089ba9c938f09a491426c24405634eb357bd91dffd734"}, - {file = "asyncpg-0.20.1-cp38-cp38-macosx_10_13_x86_64.whl", hash = "sha256:391aea89871df8c1560750af6c7170f2772c2d133b34772acf3637e3cf4db93e"}, - {file = "asyncpg-0.20.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:a981500bf6947926e53c48f4d60ae080af1b4ad7fa78e363465a5b5ad4f2b65e"}, - {file = "asyncpg-0.20.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:a9e6fd6f0f9e8bd77e9a4e1ef9a4f83a80674d9136a754ae3603e915da96b627"}, - {file = "asyncpg-0.20.1-cp38-cp38-win32.whl", hash = "sha256:e39aac2b3a2f839ce65aa255ce416de899c58b7d38d601d24ca35558e13b48e3"}, - {file = "asyncpg-0.20.1-cp38-cp38-win_amd64.whl", hash = "sha256:2af6a5a705accd36e13292ea43d08c20b15e52d684beb522cb3a7d3c9c8f3f48"}, - {file = "asyncpg-0.20.1.tar.gz", hash = "sha256:394bf19bdddbba07a38cd6fb526ebf66e120444d6b3097332b78efd5b26495b0"}, -] atomicwrites = [ {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"}, {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"}, @@ -595,36 +495,6 @@ black = [ {file = "black-19.10b0-py36-none-any.whl", hash = "sha256:1b30e59be925fafc1ee4565e5e08abef6b03fe455102883820fe5ee2e4734e0b"}, {file = "black-19.10b0.tar.gz", hash = "sha256:c2edb73a08e9e0e6f65a0e6af18b059b8b1cdd5bef997d7a0b181df93dc81539"}, ] -cffi = [ - {file = "cffi-1.14.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1cae98a7054b5c9391eb3249b86e0e99ab1e02bb0cc0575da191aedadbdf4384"}, - {file = "cffi-1.14.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:cf16e3cf6c0a5fdd9bc10c21687e19d29ad1fe863372b5543deaec1039581a30"}, - {file = "cffi-1.14.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:f2b0fa0c01d8a0c7483afd9f31d7ecf2d71760ca24499c8697aeb5ca37dc090c"}, - {file = "cffi-1.14.0-cp27-cp27m-win32.whl", hash = "sha256:99f748a7e71ff382613b4e1acc0ac83bf7ad167fb3802e35e90d9763daba4d78"}, - {file = "cffi-1.14.0-cp27-cp27m-win_amd64.whl", hash = "sha256:c420917b188a5582a56d8b93bdd8e0f6eca08c84ff623a4c16e809152cd35793"}, - {file = "cffi-1.14.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:399aed636c7d3749bbed55bc907c3288cb43c65c4389964ad5ff849b6370603e"}, - {file = "cffi-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:cab50b8c2250b46fe738c77dbd25ce017d5e6fb35d3407606e7a4180656a5a6a"}, - {file = "cffi-1.14.0-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:001bf3242a1bb04d985d63e138230802c6c8d4db3668fb545fb5005ddf5bb5ff"}, - {file = "cffi-1.14.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:e56c744aa6ff427a607763346e4170629caf7e48ead6921745986db3692f987f"}, - {file = "cffi-1.14.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:b8c78301cefcf5fd914aad35d3c04c2b21ce8629b5e4f4e45ae6812e461910fa"}, - {file = "cffi-1.14.0-cp35-cp35m-win32.whl", hash = "sha256:8c0ffc886aea5df6a1762d0019e9cb05f825d0eec1f520c51be9d198701daee5"}, - {file = "cffi-1.14.0-cp35-cp35m-win_amd64.whl", hash = "sha256:8a6c688fefb4e1cd56feb6c511984a6c4f7ec7d2a1ff31a10254f3c817054ae4"}, - {file = "cffi-1.14.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:95cd16d3dee553f882540c1ffe331d085c9e629499ceadfbda4d4fde635f4b7d"}, - {file = "cffi-1.14.0-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:66e41db66b47d0d8672d8ed2708ba91b2f2524ece3dee48b5dfb36be8c2f21dc"}, - {file = "cffi-1.14.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:028a579fc9aed3af38f4892bdcc7390508adabc30c6af4a6e4f611b0c680e6ac"}, - {file = "cffi-1.14.0-cp36-cp36m-win32.whl", hash = "sha256:cef128cb4d5e0b3493f058f10ce32365972c554572ff821e175dbc6f8ff6924f"}, - {file = "cffi-1.14.0-cp36-cp36m-win_amd64.whl", hash = "sha256:337d448e5a725bba2d8293c48d9353fc68d0e9e4088d62a9571def317797522b"}, - {file = "cffi-1.14.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e577934fc5f8779c554639376beeaa5657d54349096ef24abe8c74c5d9c117c3"}, - {file = "cffi-1.14.0-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:62ae9af2d069ea2698bf536dcfe1e4eed9090211dbaafeeedf5cb6c41b352f66"}, - {file = "cffi-1.14.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:14491a910663bf9f13ddf2bc8f60562d6bc5315c1f09c704937ef17293fb85b0"}, - {file = "cffi-1.14.0-cp37-cp37m-win32.whl", hash = "sha256:c43866529f2f06fe0edc6246eb4faa34f03fe88b64a0a9a942561c8e22f4b71f"}, - {file = "cffi-1.14.0-cp37-cp37m-win_amd64.whl", hash = "sha256:2089ed025da3919d2e75a4d963d008330c96751127dd6f73c8dc0c65041b4c26"}, - {file = "cffi-1.14.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3b911c2dbd4f423b4c4fcca138cadde747abdb20d196c4a48708b8a2d32b16dd"}, - {file = "cffi-1.14.0-cp38-cp38-manylinux1_i686.whl", hash = "sha256:7e63cbcf2429a8dbfe48dcc2322d5f2220b77b2e17b7ba023d6166d84655da55"}, - {file = "cffi-1.14.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:3d311bcc4a41408cf5854f06ef2c5cab88f9fded37a3b95936c9879c1640d4c2"}, - {file = "cffi-1.14.0-cp38-cp38-win32.whl", hash = "sha256:675686925a9fb403edba0114db74e741d8181683dcf216be697d208857e04ca8"}, - {file = "cffi-1.14.0-cp38-cp38-win_amd64.whl", hash = "sha256:00789914be39dffba161cfc5be31b55775de5ba2235fe49aa28c148236c4e06b"}, - {file = "cffi-1.14.0.tar.gz", hash = "sha256:2d384f4a127a15ba701207f7639d94106693b6cd64173d6c8988e2c25f3ac2b6"}, -] ciso8601 = [ {file = "ciso8601-2.1.3.tar.gz", hash = "sha256:bdbb5b366058b1c87735603b23060962c439ac9be66f1ae91e8c7dbd7d59e262"}, ] @@ -636,27 +506,6 @@ colorama = [ {file = "colorama-0.4.3-py2.py3-none-any.whl", hash = "sha256:7d73d2a99753107a36ac6b455ee49046802e59d9d076ef8e47b61499fa29afff"}, {file = "colorama-0.4.3.tar.gz", hash = "sha256:e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1"}, ] -cryptography = [ - {file = "cryptography-2.9.2-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:daf54a4b07d67ad437ff239c8a4080cfd1cc7213df57d33c97de7b4738048d5e"}, - {file = "cryptography-2.9.2-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:3b3eba865ea2754738616f87292b7f29448aec342a7c720956f8083d252bf28b"}, - {file = "cryptography-2.9.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:c447cf087cf2dbddc1add6987bbe2f767ed5317adb2d08af940db517dd704365"}, - {file = "cryptography-2.9.2-cp27-cp27m-win32.whl", hash = "sha256:f118a95c7480f5be0df8afeb9a11bd199aa20afab7a96bcf20409b411a3a85f0"}, - {file = "cryptography-2.9.2-cp27-cp27m-win_amd64.whl", hash = "sha256:c4fd17d92e9d55b84707f4fd09992081ba872d1a0c610c109c18e062e06a2e55"}, - {file = "cryptography-2.9.2-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d0d5aeaedd29be304848f1c5059074a740fa9f6f26b84c5b63e8b29e73dfc270"}, - {file = "cryptography-2.9.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:1e4014639d3d73fbc5ceff206049c5a9a849cefd106a49fa7aaaa25cc0ce35cf"}, - {file = "cryptography-2.9.2-cp35-abi3-macosx_10_9_x86_64.whl", hash = "sha256:96c080ae7118c10fcbe6229ab43eb8b090fccd31a09ef55f83f690d1ef619a1d"}, - {file = "cryptography-2.9.2-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:e993468c859d084d5579e2ebee101de8f5a27ce8e2159959b6673b418fd8c785"}, - {file = "cryptography-2.9.2-cp35-abi3-manylinux2010_x86_64.whl", hash = "sha256:88c881dd5a147e08d1bdcf2315c04972381d026cdb803325c03fe2b4a8ed858b"}, - {file = "cryptography-2.9.2-cp35-cp35m-win32.whl", hash = "sha256:651448cd2e3a6bc2bb76c3663785133c40d5e1a8c1a9c5429e4354201c6024ae"}, - {file = "cryptography-2.9.2-cp35-cp35m-win_amd64.whl", hash = "sha256:726086c17f94747cedbee6efa77e99ae170caebeb1116353c6cf0ab67ea6829b"}, - {file = "cryptography-2.9.2-cp36-cp36m-win32.whl", hash = "sha256:091d31c42f444c6f519485ed528d8b451d1a0c7bf30e8ca583a0cac44b8a0df6"}, - {file = "cryptography-2.9.2-cp36-cp36m-win_amd64.whl", hash = "sha256:bb1f0281887d89617b4c68e8db9a2c42b9efebf2702a3c5bf70599421a8623e3"}, - {file = "cryptography-2.9.2-cp37-cp37m-win32.whl", hash = "sha256:18452582a3c85b96014b45686af264563e3e5d99d226589f057ace56196ec78b"}, - {file = "cryptography-2.9.2-cp37-cp37m-win_amd64.whl", hash = "sha256:22e91636a51170df0ae4dcbd250d318fd28c9f491c4e50b625a49964b24fe46e"}, - {file = "cryptography-2.9.2-cp38-cp38-win32.whl", hash = "sha256:844a76bc04472e5135b909da6aed84360f522ff5dfa47f93e3dd2a0b84a89fa0"}, - {file = "cryptography-2.9.2-cp38-cp38-win_amd64.whl", hash = "sha256:1dfa985f62b137909496e7fc182dac687206d8d089dd03eaeb28ae16eec8e7d5"}, - {file = "cryptography-2.9.2.tar.gz", hash = "sha256:a0c30272fb4ddda5f5ffc1089d7405b7a71b0b0f51993cb4e5dbb4590b2fc229"}, -] execnet = [ {file = "execnet-1.7.1-py2.py3-none-any.whl", hash = "sha256:d4efd397930c46415f62f8a31388d6be4f27a91d7550eb79bc64a756e0056547"}, {file = "execnet-1.7.1.tar.gz", hash = "sha256:cacb9df31c9680ec5f95553976c4da484d407e85e41c83cb812aa014f0eddc50"}, @@ -722,10 +571,6 @@ pycodestyle = [ {file = "pycodestyle-2.6.0-py2.py3-none-any.whl", hash = "sha256:2295e7b2f6b5bd100585ebcb1f616591b652db8a741695b3d8f5d28bdc934367"}, {file = "pycodestyle-2.6.0.tar.gz", hash = "sha256:c58a7d2815e0e8d7972bf1803331fb0152f867bd89adf8a01dfd55085434192e"}, ] -pycparser = [ - {file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"}, - {file = "pycparser-2.20.tar.gz", hash = "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"}, -] pydantic = [ {file = "pydantic-1.5.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:2a6904e9f18dea58f76f16b95cba6a2f20b72d787abd84ecd67ebc526e61dce6"}, {file = "pydantic-1.5.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:da8099fca5ee339d5572cfa8af12cf0856ae993406f0b1eb9bb38c8a660e7416"}, @@ -749,16 +594,12 @@ pyflakes = [ {file = "pyflakes-2.2.0-py2.py3-none-any.whl", hash = "sha256:0d94e0e05a19e57a99444b6ddcf9a6eb2e5c68d3ca1e98e90707af8152c90a92"}, {file = "pyflakes-2.2.0.tar.gz", hash = "sha256:35b2d75ee967ea93b55750aa9edbbf72813e06a66ba54438df2cfac9e3c27fc8"}, ] -pymysql = [ - {file = "PyMySQL-0.9.2-py2.py3-none-any.whl", hash = "sha256:95f057328357e0e13a30e67857a8c694878b0175797a9a203ee7adbfb9b1ec5f"}, - {file = "PyMySQL-0.9.2.tar.gz", hash = "sha256:9ec760cbb251c158c19d6c88c17ca00a8632bac713890e465b2be01fdc30713f"}, -] pyparsing = [ {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, ] pypika = [ - {file = "PyPika-0.37.6.tar.gz", hash = "sha256:64510fa36667e8bb654bdc1be5a3a77bac1dbc2f03d4848efac08e39d9cac6f5"}, + {file = "PyPika-0.37.7.tar.gz", hash = "sha256:20bebc05983cd401d428e3beb62d037e5f0271daab2bb5aba82f4e092d4a3694"}, ] pytest = [ {file = "pytest-5.4.2-py3-none-any.whl", hash = "sha256:95c710d0a72d91c13fae35dce195633c929c3792f54125919847fdcdf7caa0d3"}, diff --git a/pyproject.toml b/pyproject.toml index ee491b1..4d9c6d7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,6 +3,16 @@ name = "aerich" version = "0.1.9" description = "A database migrations tool for Tortoise ORM." authors = ["long2ice "] +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] python = "^3.8" @@ -16,17 +26,16 @@ flake8 = "*" isort = "*" black = "^19.10b0" pytest = "*" -aiomysql = "*" -asyncpg = "*" pytest-xdist = "*" mypy = "*" pytest-asyncio = "*" -[tool.taskipy.tasks] -export = "poetry export -f requirements.txt --without-hashes > requirements.txt" -export-dev = "poetry export -f requirements.txt --dev --without-hashes > requirements-dev.txt" +[tool.poetry.extras] +dbdrivers = ["aiomysql", "asyncpg"] [build-system] requires = ["poetry>=0.12"] build-backend = "poetry.masonry.api" +[tool.poetry.scripts] +aerich = "aerich.cli:main" \ No newline at end of file diff --git a/requirements-dev.txt b/requirements-dev.txt deleted file mode 100644 index a2baa92..0000000 --- a/requirements-dev.txt +++ /dev/null @@ -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 diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 863509f..0000000 --- a/requirements.txt +++ /dev/null @@ -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 diff --git a/setup.py b/setup.py deleted file mode 100644 index 830cda3..0000000 --- a/setup.py +++ /dev/null @@ -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(), -) From b4366d2427b4e9066fd905bf95b92c509ebf66b1 Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 18:20:55 +0800 Subject: [PATCH 03/14] update github actions --- .github/workflows/pypi.yml | 14 +++++++------- .github/workflows/test.yml | 10 ++++------ 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index 44f27d3..2bd6168 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -8,14 +8,14 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - uses: actions/setup-python@v1 + - name: Install poetry + uses: abatilo/actions-poetry@v1.5.0 with: - python-version: '3.x' + python_version: 3.8.0 + args: install - name: Build dists run: | - python3 setup.py sdist + make build - name: Pypi Publish - uses: pypa/gh-action-pypi-publish@master - with: - user: __token__ - password: ${{ secrets.pypi_password }} \ No newline at end of file + run: | + make publish \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 37c5c98..ddfcddb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -16,13 +16,11 @@ jobs: - name: Start MySQL run: sudo systemctl start mysql.service - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - name: Install poetry + uses: abatilo/actions-poetry@v1.5.0 with: - python-version: '3.x' - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements-dev.txt + python_version: 3.8.0 + args: install - name: CI env: MYSQL_PASS: root From ffeee3c90180c4b33dcd6519e59e51903a3fae06 Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 18:28:50 +0800 Subject: [PATCH 04/14] update github actions --- .github/workflows/pypi.yml | 2 ++ .github/workflows/test.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index 2bd6168..e97424c 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -10,6 +10,8 @@ jobs: - uses: actions/checkout@v2 - name: Install poetry uses: abatilo/actions-poetry@v1.5.0 + env: + POETRY_VIRTUALENVS_CREATE: false with: python_version: 3.8.0 args: install diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ddfcddb..745c26c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,6 +18,8 @@ jobs: - uses: actions/checkout@v2 - name: Install poetry uses: abatilo/actions-poetry@v1.5.0 + env: + POETRY_VIRTUALENVS_CREATE: false with: python_version: 3.8.0 args: install From 5b9b51db3f87b94e806771d414cd0cb4cf2a27b0 Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 18:38:39 +0800 Subject: [PATCH 05/14] update github actions --- .github/workflows/pypi.yml | 1 + .github/workflows/test.yml | 1 + Makefile | 4 ++-- poetry.lock | 8 +++---- setup.cfg | 47 -------------------------------------- 5 files changed, 8 insertions(+), 53 deletions(-) delete mode 100644 setup.cfg diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index e97424c..5dde7af 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -14,6 +14,7 @@ jobs: POETRY_VIRTUALENVS_CREATE: false with: python_version: 3.8.0 + poetry_version: 1.0.5 args: install - name: Build dists run: | diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 745c26c..a6204c3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,6 +22,7 @@ jobs: POETRY_VIRTUALENVS_CREATE: false with: python_version: 3.8.0 + poetry_version: 1.0.5 args: install - name: CI env: diff --git a/Makefile b/Makefile index 61835f0..2557482 100644 --- a/Makefile +++ b/Makefile @@ -19,10 +19,10 @@ help: @echo " style Auto-formats the code" up: - @poetry install + @poetry update deps: - @poetry update + @poetry install style: deps isort -rc $(checkfiles) diff --git a/poetry.lock b/poetry.lock index 600d4d2..2f44da6 100644 --- a/poetry.lock +++ b/poetry.lock @@ -446,11 +446,11 @@ version = "3.7.4.2" [[package]] 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" optional = false python-versions = "*" -version = "0.1.9" +version = "0.2.2" [extras] dbdrivers = [] @@ -687,6 +687,6 @@ typing-extensions = [ {file = "typing_extensions-3.7.4.2.tar.gz", hash = "sha256:79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae"}, ] wcwidth = [ - {file = "wcwidth-0.1.9-py2.py3-none-any.whl", hash = "sha256:cafe2186b3c009a04067022ce1dcd79cb38d8d65ee4f4791b8888d6599d1bbe1"}, - {file = "wcwidth-0.1.9.tar.gz", hash = "sha256:ee73862862a156bf77ff92b09034fc4825dd3af9cf81bc5b360668d425f3c5f1"}, + {file = "wcwidth-0.2.2-py2.py3-none-any.whl", hash = "sha256:b651b6b081476420e4e9ae61239ac4c1b49d0c5ace42b2e81dc2ff49ed50c566"}, + {file = "wcwidth-0.2.2.tar.gz", hash = "sha256:3de2e41158cb650b91f9654cbf9a3e053cee0719c9df4ddc11e4b568669e9829"}, ] diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 66a6dec..0000000 --- a/setup.cfg +++ /dev/null @@ -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 \ No newline at end of file From 7b4b7ac74999edf30c4d97bcba5f3a91b49e1672 Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 18:58:59 +0800 Subject: [PATCH 06/14] update github actions --- .github/workflows/pypi.yml | 14 ++++---------- .github/workflows/test.yml | 10 +++------- Makefile | 4 ++-- 3 files changed, 9 insertions(+), 19 deletions(-) diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index 5dde7af..ae118ef 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -6,19 +6,13 @@ on: jobs: publish: runs-on: ubuntu-latest + env: + POETRY_VIRTUALENVS_CREATE: false steps: - uses: actions/checkout@v2 - name: Install poetry - uses: abatilo/actions-poetry@v1.5.0 - env: - POETRY_VIRTUALENVS_CREATE: false - with: - python_version: 3.8.0 - poetry_version: 1.0.5 - args: install - - name: Build dists - run: | - make build + run: curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3 - name: Pypi Publish run: | + make build make publish \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a6204c3..edf98fc 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -3,6 +3,8 @@ on: [push, pull_request] jobs: testall: runs-on: ubuntu-latest + env: + POETRY_VIRTUALENVS_CREATE: false services: postgres: image: postgres:latest @@ -17,13 +19,7 @@ jobs: run: sudo systemctl start mysql.service - uses: actions/checkout@v2 - name: Install poetry - uses: abatilo/actions-poetry@v1.5.0 - env: - POETRY_VIRTUALENVS_CREATE: false - with: - python_version: 3.8.0 - poetry_version: 1.0.5 - args: install + run: curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3 - name: CI env: MYSQL_PASS: root diff --git a/Makefile b/Makefile index 2557482..f268f57 100644 --- a/Makefile +++ b/Makefile @@ -52,10 +52,10 @@ test_postgres: testall: deps test_sqlite test_postgres test_mysql -build: +build: deps @poetry build -publish: +publish: deps @poetry publish ci: From e87f67f1e1c5177d95d301ab3b2e56aa056c4c7a Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 18:28:50 +0800 Subject: [PATCH 07/14] update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions --- .github/workflows/pypi.yml | 11 +-- .github/workflows/test.yml | 7 +- MANIFEST.in | 3 - Makefile | 8 +- poetry.lock | 172 +++++++++++++++++++++++++++++++++++-- pyproject.toml | 2 + setup.cfg | 47 ---------- 7 files changed, 180 insertions(+), 70 deletions(-) delete mode 100644 MANIFEST.in delete mode 100644 setup.cfg diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index 2bd6168..7d31dd7 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -8,14 +8,11 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - name: Install poetry - uses: abatilo/actions-poetry@v1.5.0 + - uses: actions/setup-python@v2 with: - python_version: 3.8.0 - args: install - - name: Build dists - run: | - make build + python-version: '3.x' + - uses: dschep/install-poetry-action@v1.3 - name: Pypi Publish run: | + make build make publish \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ddfcddb..ca88620 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -16,11 +16,10 @@ jobs: - name: Start MySQL run: sudo systemctl start mysql.service - uses: actions/checkout@v2 - - name: Install poetry - uses: abatilo/actions-poetry@v1.5.0 + - uses: actions/setup-python@v2 with: - python_version: 3.8.0 - args: install + python-version: '3.x' + - uses: dschep/install-poetry-action@v1.3 - name: CI env: MYSQL_PASS: root diff --git a/MANIFEST.in b/MANIFEST.in deleted file mode 100644 index 5f9c2e9..0000000 --- a/MANIFEST.in +++ /dev/null @@ -1,3 +0,0 @@ -include LICENSE -include README.rst -include requirements.txt \ No newline at end of file diff --git a/Makefile b/Makefile index 61835f0..89ce467 100644 --- a/Makefile +++ b/Makefile @@ -19,10 +19,10 @@ help: @echo " style Auto-formats the code" up: - @poetry install + @poetry update deps: - @poetry update + @poetry install -E dbdrivers style: deps isort -rc $(checkfiles) @@ -52,10 +52,10 @@ test_postgres: testall: deps test_sqlite test_postgres test_mysql -build: +build: deps @poetry build -publish: +publish: deps @poetry publish ci: diff --git a/poetry.lock b/poetry.lock index 600d4d2..e1fde3f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,3 +1,17 @@ +[[package]] +category = "dev" +description = "MySQL driver for asyncio." +name = "aiomysql" +optional = true +python-versions = "*" +version = "0.0.20" + +[package.dependencies] +PyMySQL = ">=0.9,<=0.9.2" + +[package.extras] +sa = ["sqlalchemy (>=1.0)"] + [[package]] category = "main" description = "asyncio bridge to the standard sqlite3 module" @@ -63,6 +77,19 @@ anyio = "*" dev = ["coverage", "pytest-runner", "pytest-trio", "pytest (>=3)", "sphinx", "tox"] docs = ["sphinx"] +[[package]] +category = "dev" +description = "An asyncio PostgreSQL driver" +name = "asyncpg" +optional = true +python-versions = ">=3.5.0" +version = "0.20.1" + +[package.extras] +dev = ["Cython (0.29.14)", "pytest (>=3.6.0)", "Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)", "pycodestyle (>=2.5.0,<2.6.0)", "flake8 (>=3.7.9,<3.8.0)", "uvloop (>=0.14.0,<0.15.0)"] +docs = ["Sphinx (>=1.7.3,<1.8.0)", "sphinxcontrib-asyncio (>=0.2.0,<0.3.0)", "sphinx-rtd-theme (>=0.2.4,<0.3.0)"] +test = ["pycodestyle (>=2.5.0,<2.6.0)", "flake8 (>=3.7.9,<3.8.0)", "uvloop (>=0.14.0,<0.15.0)"] + [[package]] category = "dev" description = "Atomic file writes." @@ -106,6 +133,17 @@ typed-ast = ">=1.4.0" [package.extras] d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] +[[package]] +category = "dev" +description = "Foreign Function Interface for Python calling C code." +name = "cffi" +optional = true +python-versions = "*" +version = "1.14.0" + +[package.dependencies] +pycparser = "*" + [[package]] category = "main" description = "Fast ISO8601 date time parser for Python written in C" @@ -132,6 +170,25 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" version = "0.4.3" +[[package]] +category = "dev" +description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +name = "cryptography" +optional = true +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" +version = "2.9.2" + +[package.dependencies] +cffi = ">=1.8,<1.11.3 || >1.11.3" +six = ">=1.4.1" + +[package.extras] +docs = ["sphinx (>=1.6.5,<1.8.0 || >1.8.0)", "sphinx-rtd-theme"] +docstest = ["doc8", "pyenchant (>=1.6.11)", "twine (>=1.12.0)", "sphinxcontrib-spelling (>=4.0.1)"] +idna = ["idna (>=2.1)"] +pep8test = ["flake8", "flake8-import-order", "pep8-naming"] +test = ["pytest (>=3.6.0,<3.9.0 || >3.9.0,<3.9.1 || >3.9.1,<3.9.2 || >3.9.2)", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,<3.79.2 || >3.79.2)"] + [[package]] category = "dev" description = "execnet: rapid multi-Python deployment" @@ -269,6 +326,14 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "2.6.0" +[[package]] +category = "dev" +description = "C parser in Python" +name = "pycparser" +optional = true +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +version = "2.20" + [[package]] category = "main" description = "Data validation and settings management using python 3.6 type hinting" @@ -290,6 +355,17 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "2.2.0" +[[package]] +category = "dev" +description = "Pure Python MySQL Driver" +name = "pymysql" +optional = true +python-versions = "*" +version = "0.9.2" + +[package.dependencies] +cryptography = "*" + [[package]] category = "dev" description = "Python parsing module" @@ -446,20 +522,24 @@ version = "3.7.4.2" [[package]] 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" optional = false python-versions = "*" -version = "0.1.9" +version = "0.2.2" [extras] dbdrivers = [] [metadata] -content-hash = "dda0d7b8fef9216a0091e97a5cdbd3825be862fbaee3cb9add801dd999b46a77" +content-hash = "e7e2bfd5db53c4c6836d7f7d2827cc275671dc0dbf1a9f4d51100005b60a9548" python-versions = "^3.8" [metadata.files] +aiomysql = [ + {file = "aiomysql-0.0.20-py3-none-any.whl", hash = "sha256:5fd798481f16625b424eec765c56d712ac78a51f3bd0175a3de94107aae43307"}, + {file = "aiomysql-0.0.20.tar.gz", hash = "sha256:d89ce25d44dadb43cf2d9e4603bd67b7a0ad12d5e67208de013629ba648df2ba"}, +] aiosqlite = [ {file = "aiosqlite-0.13.0-py3-none-any.whl", hash = "sha256:50688c40632ae249f986ab3ae2c66a45c0535b84a5d4aae0e0be572b5fed6909"}, {file = "aiosqlite-0.13.0.tar.gz", hash = "sha256:6e92961ae9e606b43b05e29b129e346b29e400fcbd63e3c0c564d89230257645"}, @@ -483,6 +563,29 @@ async-generator = [ asyncclick = [ {file = "asyncclick-7.0.9.tar.gz", hash = "sha256:62cebf3eca36d973802e2dd521ca1db11c5bf4544e9795e093d1a53cb688a8c2"}, ] +asyncpg = [ + {file = "asyncpg-0.20.1-cp35-cp35m-macosx_10_13_x86_64.whl", hash = "sha256:f7184689177eeb5a11fa1b2baf3f6f2e26bfd7a85acf4de1a3adbd0867d7c0e2"}, + {file = "asyncpg-0.20.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:f0c9719ac00615f097fe91082b785bce36dbf02a5ec4115ede0ebfd2cd9500cb"}, + {file = "asyncpg-0.20.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:1388caa456070dab102be874205e3ae8fd1de2577d5de9fa22e65ba5c0f8b110"}, + {file = "asyncpg-0.20.1-cp35-cp35m-win32.whl", hash = "sha256:ec6e7046c98730cb2ba4df41387e10cb8963a3ac2918f69ae416f8aab9ca7b1b"}, + {file = "asyncpg-0.20.1-cp35-cp35m-win_amd64.whl", hash = "sha256:25edb0b947eb632b6b53e5a4b36cba5677297bb34cbaba270019714d0a5fed76"}, + {file = "asyncpg-0.20.1-cp36-cp36m-macosx_10_13_x86_64.whl", hash = "sha256:95cd2df61ee00b789bdcd04a080e6d9188693b841db2bf9a87ebaed9e53147e0"}, + {file = "asyncpg-0.20.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:058baec9d6b75612412baa872a1aa47317d0ff88c318a49f9c4a2389043d5a8d"}, + {file = "asyncpg-0.20.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:c773c7dbe2f4d3ebc9e3030e94303e45d6742e6c2fc25da0c46a56ea3d83caeb"}, + {file = "asyncpg-0.20.1-cp36-cp36m-win32.whl", hash = "sha256:5664d1bd8abe64fc60a0e701eb85fa1d8c9a4a8018a5a59164d27238f2caf395"}, + {file = "asyncpg-0.20.1-cp36-cp36m-win_amd64.whl", hash = "sha256:57666dfae38f4dbf84ffbf0c5c0f78733fef0e8e083230275dcb9ccad1d5ee09"}, + {file = "asyncpg-0.20.1-cp37-cp37m-macosx_10_13_x86_64.whl", hash = "sha256:0c336903c3b08e970f8af2f606332f1738dba156bca83ed0467dc2f5c70da796"}, + {file = "asyncpg-0.20.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:ad5ba062e09673b1a4b8d0facaf5a6d9719bf7b337440d10b07fe994d90a9552"}, + {file = "asyncpg-0.20.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:ba90d3578bc6dddcbce461875672fd9bdb34f0b8215b68612dd3b65a956ff51c"}, + {file = "asyncpg-0.20.1-cp37-cp37m-win32.whl", hash = "sha256:da238592235717419a6a7b5edc8564da410ebfd056ca4ecc41e70b1b5df86fba"}, + {file = "asyncpg-0.20.1-cp37-cp37m-win_amd64.whl", hash = "sha256:74510234c294c6a6767089ba9c938f09a491426c24405634eb357bd91dffd734"}, + {file = "asyncpg-0.20.1-cp38-cp38-macosx_10_13_x86_64.whl", hash = "sha256:391aea89871df8c1560750af6c7170f2772c2d133b34772acf3637e3cf4db93e"}, + {file = "asyncpg-0.20.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:a981500bf6947926e53c48f4d60ae080af1b4ad7fa78e363465a5b5ad4f2b65e"}, + {file = "asyncpg-0.20.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:a9e6fd6f0f9e8bd77e9a4e1ef9a4f83a80674d9136a754ae3603e915da96b627"}, + {file = "asyncpg-0.20.1-cp38-cp38-win32.whl", hash = "sha256:e39aac2b3a2f839ce65aa255ce416de899c58b7d38d601d24ca35558e13b48e3"}, + {file = "asyncpg-0.20.1-cp38-cp38-win_amd64.whl", hash = "sha256:2af6a5a705accd36e13292ea43d08c20b15e52d684beb522cb3a7d3c9c8f3f48"}, + {file = "asyncpg-0.20.1.tar.gz", hash = "sha256:394bf19bdddbba07a38cd6fb526ebf66e120444d6b3097332b78efd5b26495b0"}, +] atomicwrites = [ {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"}, {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"}, @@ -495,6 +598,36 @@ black = [ {file = "black-19.10b0-py36-none-any.whl", hash = "sha256:1b30e59be925fafc1ee4565e5e08abef6b03fe455102883820fe5ee2e4734e0b"}, {file = "black-19.10b0.tar.gz", hash = "sha256:c2edb73a08e9e0e6f65a0e6af18b059b8b1cdd5bef997d7a0b181df93dc81539"}, ] +cffi = [ + {file = "cffi-1.14.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1cae98a7054b5c9391eb3249b86e0e99ab1e02bb0cc0575da191aedadbdf4384"}, + {file = "cffi-1.14.0-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:cf16e3cf6c0a5fdd9bc10c21687e19d29ad1fe863372b5543deaec1039581a30"}, + {file = "cffi-1.14.0-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:f2b0fa0c01d8a0c7483afd9f31d7ecf2d71760ca24499c8697aeb5ca37dc090c"}, + {file = "cffi-1.14.0-cp27-cp27m-win32.whl", hash = "sha256:99f748a7e71ff382613b4e1acc0ac83bf7ad167fb3802e35e90d9763daba4d78"}, + {file = "cffi-1.14.0-cp27-cp27m-win_amd64.whl", hash = "sha256:c420917b188a5582a56d8b93bdd8e0f6eca08c84ff623a4c16e809152cd35793"}, + {file = "cffi-1.14.0-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:399aed636c7d3749bbed55bc907c3288cb43c65c4389964ad5ff849b6370603e"}, + {file = "cffi-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:cab50b8c2250b46fe738c77dbd25ce017d5e6fb35d3407606e7a4180656a5a6a"}, + {file = "cffi-1.14.0-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:001bf3242a1bb04d985d63e138230802c6c8d4db3668fb545fb5005ddf5bb5ff"}, + {file = "cffi-1.14.0-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:e56c744aa6ff427a607763346e4170629caf7e48ead6921745986db3692f987f"}, + {file = "cffi-1.14.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:b8c78301cefcf5fd914aad35d3c04c2b21ce8629b5e4f4e45ae6812e461910fa"}, + {file = "cffi-1.14.0-cp35-cp35m-win32.whl", hash = "sha256:8c0ffc886aea5df6a1762d0019e9cb05f825d0eec1f520c51be9d198701daee5"}, + {file = "cffi-1.14.0-cp35-cp35m-win_amd64.whl", hash = "sha256:8a6c688fefb4e1cd56feb6c511984a6c4f7ec7d2a1ff31a10254f3c817054ae4"}, + {file = "cffi-1.14.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:95cd16d3dee553f882540c1ffe331d085c9e629499ceadfbda4d4fde635f4b7d"}, + {file = "cffi-1.14.0-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:66e41db66b47d0d8672d8ed2708ba91b2f2524ece3dee48b5dfb36be8c2f21dc"}, + {file = "cffi-1.14.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:028a579fc9aed3af38f4892bdcc7390508adabc30c6af4a6e4f611b0c680e6ac"}, + {file = "cffi-1.14.0-cp36-cp36m-win32.whl", hash = "sha256:cef128cb4d5e0b3493f058f10ce32365972c554572ff821e175dbc6f8ff6924f"}, + {file = "cffi-1.14.0-cp36-cp36m-win_amd64.whl", hash = "sha256:337d448e5a725bba2d8293c48d9353fc68d0e9e4088d62a9571def317797522b"}, + {file = "cffi-1.14.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e577934fc5f8779c554639376beeaa5657d54349096ef24abe8c74c5d9c117c3"}, + {file = "cffi-1.14.0-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:62ae9af2d069ea2698bf536dcfe1e4eed9090211dbaafeeedf5cb6c41b352f66"}, + {file = "cffi-1.14.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:14491a910663bf9f13ddf2bc8f60562d6bc5315c1f09c704937ef17293fb85b0"}, + {file = "cffi-1.14.0-cp37-cp37m-win32.whl", hash = "sha256:c43866529f2f06fe0edc6246eb4faa34f03fe88b64a0a9a942561c8e22f4b71f"}, + {file = "cffi-1.14.0-cp37-cp37m-win_amd64.whl", hash = "sha256:2089ed025da3919d2e75a4d963d008330c96751127dd6f73c8dc0c65041b4c26"}, + {file = "cffi-1.14.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3b911c2dbd4f423b4c4fcca138cadde747abdb20d196c4a48708b8a2d32b16dd"}, + {file = "cffi-1.14.0-cp38-cp38-manylinux1_i686.whl", hash = "sha256:7e63cbcf2429a8dbfe48dcc2322d5f2220b77b2e17b7ba023d6166d84655da55"}, + {file = "cffi-1.14.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:3d311bcc4a41408cf5854f06ef2c5cab88f9fded37a3b95936c9879c1640d4c2"}, + {file = "cffi-1.14.0-cp38-cp38-win32.whl", hash = "sha256:675686925a9fb403edba0114db74e741d8181683dcf216be697d208857e04ca8"}, + {file = "cffi-1.14.0-cp38-cp38-win_amd64.whl", hash = "sha256:00789914be39dffba161cfc5be31b55775de5ba2235fe49aa28c148236c4e06b"}, + {file = "cffi-1.14.0.tar.gz", hash = "sha256:2d384f4a127a15ba701207f7639d94106693b6cd64173d6c8988e2c25f3ac2b6"}, +] ciso8601 = [ {file = "ciso8601-2.1.3.tar.gz", hash = "sha256:bdbb5b366058b1c87735603b23060962c439ac9be66f1ae91e8c7dbd7d59e262"}, ] @@ -506,6 +639,27 @@ colorama = [ {file = "colorama-0.4.3-py2.py3-none-any.whl", hash = "sha256:7d73d2a99753107a36ac6b455ee49046802e59d9d076ef8e47b61499fa29afff"}, {file = "colorama-0.4.3.tar.gz", hash = "sha256:e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1"}, ] +cryptography = [ + {file = "cryptography-2.9.2-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:daf54a4b07d67ad437ff239c8a4080cfd1cc7213df57d33c97de7b4738048d5e"}, + {file = "cryptography-2.9.2-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:3b3eba865ea2754738616f87292b7f29448aec342a7c720956f8083d252bf28b"}, + {file = "cryptography-2.9.2-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:c447cf087cf2dbddc1add6987bbe2f767ed5317adb2d08af940db517dd704365"}, + {file = "cryptography-2.9.2-cp27-cp27m-win32.whl", hash = "sha256:f118a95c7480f5be0df8afeb9a11bd199aa20afab7a96bcf20409b411a3a85f0"}, + {file = "cryptography-2.9.2-cp27-cp27m-win_amd64.whl", hash = "sha256:c4fd17d92e9d55b84707f4fd09992081ba872d1a0c610c109c18e062e06a2e55"}, + {file = "cryptography-2.9.2-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d0d5aeaedd29be304848f1c5059074a740fa9f6f26b84c5b63e8b29e73dfc270"}, + {file = "cryptography-2.9.2-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:1e4014639d3d73fbc5ceff206049c5a9a849cefd106a49fa7aaaa25cc0ce35cf"}, + {file = "cryptography-2.9.2-cp35-abi3-macosx_10_9_x86_64.whl", hash = "sha256:96c080ae7118c10fcbe6229ab43eb8b090fccd31a09ef55f83f690d1ef619a1d"}, + {file = "cryptography-2.9.2-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:e993468c859d084d5579e2ebee101de8f5a27ce8e2159959b6673b418fd8c785"}, + {file = "cryptography-2.9.2-cp35-abi3-manylinux2010_x86_64.whl", hash = "sha256:88c881dd5a147e08d1bdcf2315c04972381d026cdb803325c03fe2b4a8ed858b"}, + {file = "cryptography-2.9.2-cp35-cp35m-win32.whl", hash = "sha256:651448cd2e3a6bc2bb76c3663785133c40d5e1a8c1a9c5429e4354201c6024ae"}, + {file = "cryptography-2.9.2-cp35-cp35m-win_amd64.whl", hash = "sha256:726086c17f94747cedbee6efa77e99ae170caebeb1116353c6cf0ab67ea6829b"}, + {file = "cryptography-2.9.2-cp36-cp36m-win32.whl", hash = "sha256:091d31c42f444c6f519485ed528d8b451d1a0c7bf30e8ca583a0cac44b8a0df6"}, + {file = "cryptography-2.9.2-cp36-cp36m-win_amd64.whl", hash = "sha256:bb1f0281887d89617b4c68e8db9a2c42b9efebf2702a3c5bf70599421a8623e3"}, + {file = "cryptography-2.9.2-cp37-cp37m-win32.whl", hash = "sha256:18452582a3c85b96014b45686af264563e3e5d99d226589f057ace56196ec78b"}, + {file = "cryptography-2.9.2-cp37-cp37m-win_amd64.whl", hash = "sha256:22e91636a51170df0ae4dcbd250d318fd28c9f491c4e50b625a49964b24fe46e"}, + {file = "cryptography-2.9.2-cp38-cp38-win32.whl", hash = "sha256:844a76bc04472e5135b909da6aed84360f522ff5dfa47f93e3dd2a0b84a89fa0"}, + {file = "cryptography-2.9.2-cp38-cp38-win_amd64.whl", hash = "sha256:1dfa985f62b137909496e7fc182dac687206d8d089dd03eaeb28ae16eec8e7d5"}, + {file = "cryptography-2.9.2.tar.gz", hash = "sha256:a0c30272fb4ddda5f5ffc1089d7405b7a71b0b0f51993cb4e5dbb4590b2fc229"}, +] execnet = [ {file = "execnet-1.7.1-py2.py3-none-any.whl", hash = "sha256:d4efd397930c46415f62f8a31388d6be4f27a91d7550eb79bc64a756e0056547"}, {file = "execnet-1.7.1.tar.gz", hash = "sha256:cacb9df31c9680ec5f95553976c4da484d407e85e41c83cb812aa014f0eddc50"}, @@ -571,6 +725,10 @@ pycodestyle = [ {file = "pycodestyle-2.6.0-py2.py3-none-any.whl", hash = "sha256:2295e7b2f6b5bd100585ebcb1f616591b652db8a741695b3d8f5d28bdc934367"}, {file = "pycodestyle-2.6.0.tar.gz", hash = "sha256:c58a7d2815e0e8d7972bf1803331fb0152f867bd89adf8a01dfd55085434192e"}, ] +pycparser = [ + {file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"}, + {file = "pycparser-2.20.tar.gz", hash = "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"}, +] pydantic = [ {file = "pydantic-1.5.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:2a6904e9f18dea58f76f16b95cba6a2f20b72d787abd84ecd67ebc526e61dce6"}, {file = "pydantic-1.5.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:da8099fca5ee339d5572cfa8af12cf0856ae993406f0b1eb9bb38c8a660e7416"}, @@ -594,6 +752,10 @@ pyflakes = [ {file = "pyflakes-2.2.0-py2.py3-none-any.whl", hash = "sha256:0d94e0e05a19e57a99444b6ddcf9a6eb2e5c68d3ca1e98e90707af8152c90a92"}, {file = "pyflakes-2.2.0.tar.gz", hash = "sha256:35b2d75ee967ea93b55750aa9edbbf72813e06a66ba54438df2cfac9e3c27fc8"}, ] +pymysql = [ + {file = "PyMySQL-0.9.2-py2.py3-none-any.whl", hash = "sha256:95f057328357e0e13a30e67857a8c694878b0175797a9a203ee7adbfb9b1ec5f"}, + {file = "PyMySQL-0.9.2.tar.gz", hash = "sha256:9ec760cbb251c158c19d6c88c17ca00a8632bac713890e465b2be01fdc30713f"}, +] pyparsing = [ {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, @@ -687,6 +849,6 @@ typing-extensions = [ {file = "typing_extensions-3.7.4.2.tar.gz", hash = "sha256:79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae"}, ] wcwidth = [ - {file = "wcwidth-0.1.9-py2.py3-none-any.whl", hash = "sha256:cafe2186b3c009a04067022ce1dcd79cb38d8d65ee4f4791b8888d6599d1bbe1"}, - {file = "wcwidth-0.1.9.tar.gz", hash = "sha256:ee73862862a156bf77ff92b09034fc4825dd3af9cf81bc5b360668d425f3c5f1"}, + {file = "wcwidth-0.2.2-py2.py3-none-any.whl", hash = "sha256:b651b6b081476420e4e9ae61239ac4c1b49d0c5ace42b2e81dc2ff49ed50c566"}, + {file = "wcwidth-0.2.2.tar.gz", hash = "sha256:3de2e41158cb650b91f9654cbf9a3e053cee0719c9df4ddc11e4b568669e9829"}, ] diff --git a/pyproject.toml b/pyproject.toml index 4d9c6d7..f58161b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -29,6 +29,8 @@ pytest = "*" pytest-xdist = "*" mypy = "*" pytest-asyncio = "*" +aiomysql = {version = "*", optional = true} +asyncpg = {version = "*", optional = true} [tool.poetry.extras] dbdrivers = ["aiomysql", "asyncpg"] diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 66a6dec..0000000 --- a/setup.cfg +++ /dev/null @@ -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 \ No newline at end of file From 2a0435dea9a5517ec417b43a42c3ab167532875c Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 22:14:44 +0800 Subject: [PATCH 08/14] update github actions --- .github/workflows/test.yml | 2 +- Makefile | 3 +-- poetry.lock | 18 +++++++++--------- pyproject.toml | 4 ++-- 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ca88620..1dd1bf2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -28,4 +28,4 @@ jobs: POSTGRES_PASS: 123456 POSTGRES_HOST: 127.0.0.1 POSTGRES_PORT: 5432 - run: make testall \ No newline at end of file + run: make ci \ No newline at end of file diff --git a/Makefile b/Makefile index 89ce467..779cecc 100644 --- a/Makefile +++ b/Makefile @@ -58,5 +58,4 @@ build: deps publish: deps @poetry publish -ci: - @act -P ubuntu-latest=nektos/act-environments-ubuntu:18.04 -b \ No newline at end of file +ci: testall \ No newline at end of file diff --git a/poetry.lock b/poetry.lock index e1fde3f..8594dfb 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,5 +1,5 @@ [[package]] -category = "dev" +category = "main" description = "MySQL driver for asyncio." name = "aiomysql" optional = true @@ -78,7 +78,7 @@ dev = ["coverage", "pytest-runner", "pytest-trio", "pytest (>=3)", "sphinx", "to docs = ["sphinx"] [[package]] -category = "dev" +category = "main" description = "An asyncio PostgreSQL driver" name = "asyncpg" optional = true @@ -134,7 +134,7 @@ typed-ast = ">=1.4.0" d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] [[package]] -category = "dev" +category = "main" description = "Foreign Function Interface for Python calling C code." name = "cffi" optional = true @@ -171,7 +171,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" version = "0.4.3" [[package]] -category = "dev" +category = "main" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." name = "cryptography" optional = true @@ -327,7 +327,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "2.6.0" [[package]] -category = "dev" +category = "main" description = "C parser in Python" name = "pycparser" optional = true @@ -356,7 +356,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "2.2.0" [[package]] -category = "dev" +category = "main" description = "Pure Python MySQL Driver" name = "pymysql" optional = true @@ -455,7 +455,7 @@ python-versions = "*" version = "2020.5.14" [[package]] -category = "dev" +category = "main" description = "Python 2 and 3 compatibility utilities" name = "six" optional = false @@ -529,10 +529,10 @@ python-versions = "*" version = "0.2.2" [extras] -dbdrivers = [] +dbdrivers = ["aiomysql", "asyncpg"] [metadata] -content-hash = "e7e2bfd5db53c4c6836d7f7d2827cc275671dc0dbf1a9f4d51100005b60a9548" +content-hash = "6b1f30cb32cf5915f1ee1f6c6b0e52130bc8f7af92f1a9703dc9632ebce2a977" python-versions = "^3.8" [metadata.files] diff --git a/pyproject.toml b/pyproject.toml index f58161b..5d2e114 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -19,6 +19,8 @@ python = "^3.8" tortoise-orm = "*" asyncclick = "*" pydantic = "*" +aiomysql = {version = "*", optional = true} +asyncpg = {version = "*", optional = true} [tool.poetry.dev-dependencies] taskipy = "*" @@ -29,8 +31,6 @@ pytest = "*" pytest-xdist = "*" mypy = "*" pytest-asyncio = "*" -aiomysql = {version = "*", optional = true} -asyncpg = {version = "*", optional = true} [tool.poetry.extras] dbdrivers = ["aiomysql", "asyncpg"] From a1746e457cb8a9fbc16e26080cfd13f4e86a82f9 Mon Sep 17 00:00:00 2001 From: long2ice Date: Tue, 2 Jun 2020 22:14:44 +0800 Subject: [PATCH 09/14] update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions update github actions --- pyproject.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index f58161b..5b0231e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -19,6 +19,8 @@ python = "^3.8" tortoise-orm = "*" asyncclick = "*" pydantic = "*" +aiomysql = {version = "*", optional = true} +asyncpg = {version = "*", optional = true} [tool.poetry.dev-dependencies] taskipy = "*" From b06da0223ae5fe4a35b4cc7fb1f623f1b9efe02c Mon Sep 17 00:00:00 2001 From: long2ice Date: Wed, 3 Jun 2020 09:39:52 +0800 Subject: [PATCH 10/14] add --build --- .github/workflows/pypi.yml | 1 - Makefile | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index 7d31dd7..3039030 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -14,5 +14,4 @@ jobs: - uses: dschep/install-poetry-action@v1.3 - name: Pypi Publish run: | - make build make publish \ No newline at end of file diff --git a/Makefile b/Makefile index 779cecc..1441828 100644 --- a/Makefile +++ b/Makefile @@ -56,6 +56,6 @@ build: deps @poetry build publish: deps - @poetry publish + @poetry publish --build ci: testall \ No newline at end of file From bf194ca8ce9b08cb91e502b30bf99247f8e4bb2c Mon Sep 17 00:00:00 2001 From: long2ice Date: Wed, 3 Jun 2020 18:42:35 +0800 Subject: [PATCH 11/14] Update model file find method --- CHANGELOG.rst | 4 ++++ aerich/migrate.py | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index bb26271..2eb02fe 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,10 @@ ChangeLog 0.1 === +0.2.0 +----- +- Update model file find method. + 0.1.9 ----- - Fix default_connection when upgrade diff --git a/aerich/migrate.py b/aerich/migrate.py index 891217e..ad545a7 100644 --- a/aerich/migrate.py +++ b/aerich/migrate.py @@ -3,6 +3,7 @@ import os import re from copy import deepcopy from datetime import datetime +from importlib import import_module from typing import Dict, List, Tuple, Type from tortoise import ( @@ -195,7 +196,7 @@ class Migrate: models = config.get("apps").get(app).get("models") for model in models: if model != "aerich.models": - old_model_files.append(model.replace(".", "/") + ".py") + old_model_files.append(import_module(model).__file__) cls.cp_models(app, old_model_files, os.path.join(location, app, cls.get_old_model_file())) From 7413a05e19e584327b784b0eea47a1472d408974 Mon Sep 17 00:00:00 2001 From: long2ice Date: Mon, 8 Jun 2020 18:07:41 +0800 Subject: [PATCH 12/14] set --safe bool --- CHANGELOG.rst | 6 ++++-- aerich/cli.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 2eb02fe..693a619 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,13 +1,15 @@ ========= ChangeLog ========= - -0.1 +0.2 === 0.2.0 ----- - Update model file find method. +- Set ``--safe`` bool. +0.1 +=== 0.1.9 ----- - Fix default_connection when upgrade diff --git a/aerich/cli.py b/aerich/cli.py index 816f0c0..f279c34 100644 --- a/aerich/cli.py +++ b/aerich/cli.py @@ -190,7 +190,7 @@ async def init( @cli.command(help="Generate schema and generate app migrate location.") @click.option( "--safe", - is_flag=True, + type=bool, default=True, help="When set to true, creates the table only when it does not already exist.", show_default=True, From 7bc553221a4d3d18280c27209fe650c97b9e7eb4 Mon Sep 17 00:00:00 2001 From: long2ice Date: Fri, 12 Jun 2020 09:31:01 +0800 Subject: [PATCH 13/14] raise NotImplementedError --- aerich/migrate.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/aerich/migrate.py b/aerich/migrate.py index ad545a7..0cb77dc 100644 --- a/aerich/migrate.py +++ b/aerich/migrate.py @@ -72,8 +72,6 @@ class Migrate: from aerich.ddl.postgres import PostgresDDL cls.ddl = PostgresDDL(connection) - else: - raise NotImplementedError("Current only support MySQL") @classmethod async def _get_last_version_num(cls): @@ -195,8 +193,7 @@ class Migrate: old_model_files = [] models = config.get("apps").get(app).get("models") for model in models: - if model != "aerich.models": - old_model_files.append(import_module(model).__file__) + old_model_files.append(import_module(model).__file__) cls.cp_models(app, old_model_files, os.path.join(location, app, cls.get_old_model_file())) From 73b75349eee24a4c7909400c27cbac6886344300 Mon Sep 17 00:00:00 2001 From: long2ice Date: Fri, 12 Jun 2020 17:53:17 +0800 Subject: [PATCH 14/14] update version 0.2.0 --- .github/workflows/pypi.yml | 8 ++++++-- pyproject.toml | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml index 3039030..2419a4d 100644 --- a/.github/workflows/pypi.yml +++ b/.github/workflows/pypi.yml @@ -12,6 +12,10 @@ jobs: with: python-version: '3.x' - uses: dschep/install-poetry-action@v1.3 + - name: Build dists + run: make build - name: Pypi Publish - run: | - make publish \ No newline at end of file + uses: pypa/gh-action-pypi-publish@master + with: + user: __token__ + password: ${{ secrets.pypi_password }} \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 5d2e114..11e310c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "aerich" -version = "0.1.9" +version = "0.2.0" description = "A database migrations tool for Tortoise ORM." authors = ["long2ice "] license = "MIT"