-
Notifications
You must be signed in to change notification settings - Fork 72
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
Move to Poetry and pyproject.toml #636
Conversation
I'll hold off on @ramo-j's explicit LGTM on this before merging |
I notice the update to pylint is causing quite a number of new linting errors. My preference would be to fix them in the same PR. Perhaps right now we override them in the config so the tests pass, then re-enable them as part of #637 ? |
Sounds good, let's do that - I wanted to keep the number of changed files low for this one |
# | ||
# This file is generated by l2tdevtools update-dependencies.py, any dependency | ||
# related changes should be made in dependencies.ini. | ||
[MAIN] | ||
[MASTER] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this changed to master because you generated the file in a branch and that is the default? shouldn't this be the MAIN branch here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is from the .pylintrc file config, don't know why it was changed to MAIN before: https://www.codeac.io/documentation/pylint-configuration.html
Merging this now, will fix the pylint issues (#636 (comment)) today |
I used to use and like Pipenv but no longer think it’s viable - the project is in maintenance mode and has some serious unfixed issues ([link](pypa/pipenv#2665), [link](pypa/pipenv#2412)) which have been “fixed” by removing fundamental features since the dev team was [unable to figure out](pypa/pipenv#4988) what was going on in the codebase. Other dev teams are also [abandoning](log2timeline/dftimewolf#636) this package manager. Poetry offers some significant advantages such as compatibility with the pyproject.toml standard, the ability to upgrade a single dependency, and the ability to publish packages.
Poetry (https://python-poetry.org/) is yet another python dependency / virtualenv manager, but it provides significant advantages over pipenv:
It can still generate requirements.txt files for people who want to fall back to just using pip.
Edit: I also upgraded
pylint
, which was quite outdated, and copied / pasted the log2timeline/plaso pylintrc file. We need to go over the error messages / codebase to see what warnings we want to keep and what new things to fix: #637