From: Aaron Griffin Date: Wed, 6 Nov 2024 20:40:56 +0000 (-0500) Subject: Improve write_pyi usage X-Git-Tag: rel_1_14_1~11^2 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=f826aada4c605ac3bb52e85add7718477c0751a2;p=thirdparty%2Fsqlalchemy%2Falembic.git Improve write_pyi usage Fixes #1524 ### Description Due to some problems when running write_pyi, this includes the following changes: 1. move the sys.path.append up before alembic is imported - this is using global imports otherwise 2. use tox to run write_pyi in order to avoid globally installed dependencies ### Checklist This pull request is: - [ ] A documentation / typographical error fix - Good to go, no issue or tests are needed - [x] A short code fix - please include the issue number, and create an issue if none exists, which must include a complete example of the issue. one line code fixes without an issue and demonstration will not be accepted. - Please include: `Fixes: #` in the commit message - please include tests. one line code fixes without tests will not be accepted. - [ ] A new feature implementation - please include the issue number, and create an issue if none exists, which must include a complete example of how the feature would look. - Please include: `Fixes: #` in the commit message - please include tests. **Have a nice day!** Closes: #1525 Pull-request: https://github.com/sqlalchemy/alembic/pull/1525 Pull-request-sha: 679ea5c67ebbf5062891d50dabf6323cf5348d82 Change-Id: I2d837a5dfe3cb252a0f0a6937310741045103da6 --- diff --git a/tools/write_pyi.py b/tools/write_pyi.py index 363d727e..b2ad2300 100644 --- a/tools/write_pyi.py +++ b/tools/write_pyi.py @@ -11,12 +11,12 @@ from tempfile import NamedTemporaryFile import textwrap import typing +sys.path.append(str(Path(__file__).parent.parent)) + from alembic.autogenerate.api import AutogenContext from alembic.ddl.impl import DefaultImpl from alembic.runtime.migration import MigrationInfo -sys.path.append(str(Path(__file__).parent.parent)) - if True: # avoid flake/zimports messing with the order from alembic.operations.base import BatchOperations from alembic.operations.base import Operations diff --git a/tox.ini b/tox.ini index f1bfcac3..77439be3 100644 --- a/tox.ini +++ b/tox.ini @@ -101,3 +101,12 @@ deps= commands = flake8 ./alembic/ ./tests/ setup.py docs/build/conf.py {posargs} black --check setup.py tests alembic + +[testenv:write_pyi] +basepython = python3 +deps= + sqlalchemy>=2 + mako + zimports + black==24.1.1 +commands = python tools/write_pyi.py