- Updated min version check in setup.py to Python 3.6
- Updated isort config file and calls to align with v5.x
- Added init-hook for gi imports in .pylintrc to avoid invalid no-member issues
- Makefile: added lock, show-tree, bandit, black, mypy; updated test, cover, dev, isort, autopep8, check, isort-check, flake8, pylint; removed req, requirements;
- Updated .travis.yml to use poetry and make
- Added my email in AUTHORS
- Updated CONTRIBUTING.md
- Updated lint_python.yml to use poetry and make, reorganized instructions to have all install related steps first
- sorted imports: lutris, lutris-wrapper, cleanup_prefix.py and multiple files in tests dir
By default, the scummvm runner looks up the data directory relative to
the executable. It expects it to be at ../share/scummvm. That works for
a system-installed version of scummvm, where the binary is in /usr/bin
and the data is in /usr/share/scummvm. However, we shouldn't make
assumptions about the directory structure for a custom executable.
This allows setting a custom data directory in addition to the custom
executable.
Instead of depending on direct descendants of our process exiting as
a signal for checking the process tree, poll 10 times a second
instead. This allows us to build some sensible "game start detection"
which fixes behaviors when the initial game process is considered
excluded (such steam/winesteam games).
It has a minor consequence of making lutris-wrapper much more
complicated. I tried my best to add some comments to explain what
is going on. I also added another test.
If `lutris-wrapper` receives and processes a `SIGTERM` but then receives another one, kill all tracked children with `SIGKILL`. This feature is a part of the work necessary to fix#1798.
Added a test for `lutris-wrapper`.