Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Poetry & tooling #4

Closed
PieterjanMontens opened this issue Apr 27, 2022 · 4 comments
Closed

Poetry & tooling #4

PieterjanMontens opened this issue Apr 27, 2022 · 4 comments

Comments

@PieterjanMontens
Copy link
Contributor

Having used pip, poetry and pipenv & even contributed to some, I'd like to suggest to move to Poetry for packaging & version management.

  1. It uses pyproject.toml, as recommended by PEP518, along with it's own lockfile (poetry.lock) which doesn't get in the way
  2. The tool evolves pretty well, simple to use, and appreciated by the community. Having used it for the pas 2 years, I have yet to find a problem with it
  3. Easy local venv management
  4. Integrates well with docker : RUN poetry config virtualenvs.create false && poetry install -no-dev --no-interaction --no-ansi

Along with poetry can be added code cleanup, formatting & linting tools : isort, flake8, pylint, black, ... we just have to agree on the basic set. Most use pyproject.toml for settings, except for flake8 which needs his own file (or pyproject.toml with some monkey patching).

Is Poetry OK ? And which tools could be added to the repo (I'd take all of them, but that may be overkill) ?

@avdempsey
Copy link
Collaborator

I'm on board with poetry, isort, flake8, pylint, and black. A separate config file for flake8 sounds easier than monkey-patching to make pyproject.toml work. The repo is already formatted with black (but I've been doing this manually).

Once these are set up, I'll configure GitHub actions to enforce.

@avdempsey
Copy link
Collaborator

Considering #5 we could also make psycopg2 and sentry optional extra dependencies in the pyproject.toml.

@avdempsey
Copy link
Collaborator

I've started a work in progress: #6

@avdempsey
Copy link
Collaborator

I've merged poetry, pylint, black, pytest, tox configs: #6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants