From 74d99087879646e0395980af0c5b6b11b1302063 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 14:36:35 +0100 Subject: [PATCH 01/19] Replaced badge from travis --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e450150..b7de2fa 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Potodo -[![Build Status](https://travis-ci.com/Seluj78/Potodo.svg?branch=master)](https://travis-ci.com/Seluj78/Potodo) +![Build status](https://github.com/AFPy/Potodo/workflows/Tox%20tests/badge.svg) [![All Contributors](https://img.shields.io/badge/all_contributors-5-orange.svg?style=flat-square)](#contributors-) From 69d4a3154121d499b27e563fc35e6dd830599158 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 14:45:49 +0100 Subject: [PATCH 02/19] Added pypi version badge --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index b7de2fa..5fc203b 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@ [![All Contributors](https://img.shields.io/badge/all_contributors-5-orange.svg?style=flat-square)](#contributors-) +![PyPI](https://img.shields.io/pypi/v/potodo) + Potodo, a (almost) flawless TODO/progress listing CLI tool for po files. ### Potodo is part of poutils! From b9e89001f54817ded4d2d728108ac3a176a38756 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 14:52:17 +0100 Subject: [PATCH 03/19] Trying --- .github/workflows/python-publish.yml | 2 +- tox.ini | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml index 4e1ef42..cc3d7d0 100644 --- a/.github/workflows/python-publish.yml +++ b/.github/workflows/python-publish.yml @@ -5,7 +5,7 @@ name: Upload Python Package on: release: - types: [created] + types: [created, published, edited] jobs: deploy: diff --git a/tox.ini b/tox.ini index 8a85732..ef94f7a 100644 --- a/tox.ini +++ b/tox.ini @@ -7,8 +7,8 @@ skip_missing_interpreters = True [gh-actions] python = - 3.6: py36 - 3.7: py37 + 3.6: tox py36 + 3.7: tox py37 3.8: py38, mypy, flake8, black 3.9: py39, mypy, flake8, black From 656c7a7b3127f2e82b87e605010c552052bcdd9a Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 14:53:40 +0100 Subject: [PATCH 04/19] Updated when they ruyn --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a0b3206..43b8fbf 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -3,10 +3,10 @@ name: Tox tests on: push: branches: - - '*' + - master pull_request: branches: - - '*' + - master jobs: build: From 44e22e32719f49c7a044a0937cd93cee03985c2f Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 14:55:12 +0100 Subject: [PATCH 05/19] Trying another format for tox --- tox.ini | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tox.ini b/tox.ini index ef94f7a..ef43baa 100644 --- a/tox.ini +++ b/tox.ini @@ -7,10 +7,10 @@ skip_missing_interpreters = True [gh-actions] python = - 3.6: tox py36 - 3.7: tox py37 - 3.8: py38, mypy, flake8, black - 3.9: py39, mypy, flake8, black + 3.6: tox -e py36 + 3.7: tox -e py37 + 3.8: tox -e py38,mypy,flake8,black + 3.9: tox -e py39,mypy,flake8,black [testenv] deps = From dab9882751feb7be4c707fce16be8625527c31d0 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 14:58:27 +0100 Subject: [PATCH 06/19] Trying another setup --- .github/workflows/tests.yml | 45 ++++++++++++++++++++++++------------- requirements-dev.txt | 9 ++++++++ tox.ini | 7 ------ 3 files changed, 38 insertions(+), 23 deletions(-) create mode 100644 requirements-dev.txt diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 43b8fbf..76f0968 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,22 +9,35 @@ on: - master jobs: - build: - runs-on: ubuntu-latest + build_ubuntu: strategy: - max-parallel: 5 matrix: - python-version: [3.6, 3.7, 3.8, 3.9] - + os: [ubuntu-latest, macos-latest] + name: ${{ matrix.os }} + runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v1 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install tox tox-gh-actions - - name: Test with tox - run: tox + - uses: actions/checkout@v2 + - uses: actions/setup-python@v2 + with: + python-version: '3.6' + - uses: actions/setup-python@v2 + with: + python-version: '3.7' + - uses: actions/setup-python@v2 + with: + python-version: '3.8' + - uses: actions/setup-python@v2 + with: + python-version: '3.9' + - uses: actions/cache@v2 + with: + path: | + .venv + .tox + key: ${{ matrix.os }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} + - name: tox + run: | + python3.8 -m venv .venv + .venv/bin/python -m pip install --upgrade pip + .venv/bin/python -m pip install tox + .venv/bin/tox -q -p all diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 0000000..2e80aa2 --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,9 @@ +polib==1.1.0 +requests==2.25.0 +simple-term-menu==0.10.4 +gitignore_parser==0.0.8 +tox +virtualenv +flake8 +mypy +black diff --git a/tox.ini b/tox.ini index ef43baa..1cc492b 100644 --- a/tox.ini +++ b/tox.ini @@ -5,13 +5,6 @@ extend-ignore = E501 # line length handled by black. envlist = py36, py37, py38, py39, flake8, mypy, black skip_missing_interpreters = True -[gh-actions] -python = - 3.6: tox -e py36 - 3.7: tox -e py37 - 3.8: tox -e py38,mypy,flake8,black - 3.9: tox -e py39,mypy,flake8,black - [testenv] deps = pytest From 2fd4b4a3c2d2e32a2846a4d54888338cdcefad87 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:05:45 +0100 Subject: [PATCH 07/19] Fixed black and flake8 --- .github/workflows/tests.yml | 2 +- potodo/cache.py | 7 +++---- potodo/github.py | 4 +++- potodo/interactive.py | 4 ++-- potodo/po_file.py | 4 ++-- potodo/potodo.py | 21 ++++++++------------- 6 files changed, 19 insertions(+), 23 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 76f0968..6c01429 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -12,7 +12,7 @@ jobs: build_ubuntu: strategy: matrix: - os: [ubuntu-latest, macos-latest] + os: [ubuntu-latest, macos-latest, windows-latest] name: ${{ matrix.os }} runs-on: ${{ matrix.os }} steps: diff --git a/potodo/cache.py b/potodo/cache.py index 5613169..1bbfe7f 100644 --- a/potodo/cache.py +++ b/potodo/cache.py @@ -1,19 +1,18 @@ import logging -from tempfile import NamedTemporaryFile import os import pickle from pathlib import Path +from tempfile import NamedTemporaryFile +from typing import Any from typing import cast from typing import Dict -from typing import Any from potodo import __version__ as VERSION from potodo.po_file import PoFileStats def get_cache_file_content( - cache_args: Any, - path: str = ".potodo/cache.pickle", + cache_args: Any, path: str = ".potodo/cache.pickle", ) -> Dict[Path, PoFileStats]: logging.debug("Trying to load cache from %s", path) try: diff --git a/potodo/github.py b/potodo/github.py index be263f9..9e9deac 100644 --- a/potodo/github.py +++ b/potodo/github.py @@ -29,7 +29,9 @@ def get_repo_url(repo_path: Path) -> str: stderr=subprocess.STDOUT, ) except subprocess.CalledProcessError: - print("potodo needs to be ran in a git repository, or use the `-p` `--path` argument.") + print( + "potodo needs to be ran in a git repository, or use the `-p` `--path` argument." + ) exit(1) logging.debug("Found repo url %s from %s", url, repo_path) return url diff --git a/potodo/interactive.py b/potodo/interactive.py index 283b600..6c52820 100644 --- a/potodo/interactive.py +++ b/potodo/interactive.py @@ -1,9 +1,9 @@ +import webbrowser from pathlib import Path +from typing import Callable from typing import cast from typing import Iterable from typing import List -from typing import Callable -import webbrowser from simple_term_menu import TerminalMenu diff --git a/potodo/po_file.py b/potodo/po_file.py index f1647b8..da67d92 100644 --- a/potodo/po_file.py +++ b/potodo/po_file.py @@ -2,14 +2,14 @@ import logging import os from pathlib import Path +from typing import Any +from typing import Callable from typing import Dict from typing import Iterable from typing import List from typing import Mapping from typing import Sequence from typing import Set -from typing import Callable -from typing import Any import polib diff --git a/potodo/potodo.py b/potodo/potodo.py index 6c784c3..cbd87cc 100644 --- a/potodo/potodo.py +++ b/potodo/potodo.py @@ -8,12 +8,12 @@ from typing import List from typing import Sequence from typing import Tuple + from gitignore_parser import parse_gitignore from potodo import __version__ from potodo.arguments_handling import check_args from potodo.github import get_issue_reservations - from potodo.json import json_dateconv from potodo.logging import setup_logging from potodo.po_file import get_po_stats_from_repo_or_cache @@ -110,7 +110,7 @@ def non_interactive_output( buffer: List[Any] = [] folder_stats: Dict[str, int] = {"translated": 0, "total": 0} printed_list: List[bool] = [] - + for po_file in sorted(po_files): # For each file in those files from that directory if not only_fuzzy or po_file.fuzzy_entries: @@ -131,17 +131,15 @@ def non_interactive_output( show_reservation_dates, matching_files, ) - + # Once all files have been processed, print the dir and the files # or store them into a dict to print them once all directories have # been processed. if json_format: - add_dir_stats( - directory_name, buffer, folder_stats, printed_list, dir_stats - ) + add_dir_stats(directory_name, buffer, folder_stats, printed_list, dir_stats) else: print_dir_stats(directory_name, buffer, folder_stats, printed_list) - + total_translated += folder_stats["translated"] total_entries += folder_stats["total"] @@ -206,6 +204,7 @@ def exec_potodo( if is_interactive: from potodo.interactive import interactive_output + interactive_output(path, exclude, ignore_matches) else: non_interactive_output( @@ -341,15 +340,11 @@ def buffer_add( def main() -> None: parser = argparse.ArgumentParser( - prog="potodo", - description="List and prettify the po files left to translate.", + prog="potodo", description="List and prettify the po files left to translate.", ) parser.add_argument( - "-p", - "--path", - help="execute Potodo in path", - metavar="path", + "-p", "--path", help="execute Potodo in path", metavar="path", ) parser.add_argument( From 9b20fc1023bf9e1bc2775721818c957d14e104ef Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:09:48 +0100 Subject: [PATCH 08/19] Trying another tox run --- .github/workflows/tests.yml | 43 ++++++++++++++++--------------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 6c01429..be44aa5 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,35 +9,30 @@ on: - master jobs: - build_ubuntu: + test: + name: Run tox + runs-on: [ubuntu-latest, macos-latest] strategy: matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - name: ${{ matrix.os }} - runs-on: ${{ matrix.os }} + tox: + - py_version: '3.6' + env: py36 + - py_version: '3.7' + env: py37 + - py_version: '3.8' + env: py38,flake8,mypy,black + - py_version: '3.9' + env: py39 steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 with: - python-version: '3.6' - - uses: actions/setup-python@v2 - with: - python-version: '3.7' - - uses: actions/setup-python@v2 - with: - python-version: '3.8' - - uses: actions/setup-python@v2 - with: - python-version: '3.9' + python-version: ${{ matrix.tox.py_version }} - uses: actions/cache@v2 with: - path: | - .venv - .tox - key: ${{ matrix.os }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} - - name: tox - run: | - python3.8 -m venv .venv - .venv/bin/python -m pip install --upgrade pip - .venv/bin/python -m pip install tox - .venv/bin/tox -q -p all + path: .tox + key: ${{ matrix.tox.python-version }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} + - name: Install tox + run: python3 -m pip install tox + - name: Run tox + run: tox -q -p all -e ${{ matrix.tox.env }} From f47e5bfffc0623c579d42e779bb25cee7dc333c1 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:11:43 +0100 Subject: [PATCH 09/19] Fixed os bug --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index be44aa5..2ed04b8 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -11,9 +11,9 @@ on: jobs: test: name: Run tox - runs-on: [ubuntu-latest, macos-latest] strategy: matrix: + os: [ubuntu-latest, macos-latest] tox: - py_version: '3.6' env: py36 From 1880a7a97bf1636f5ca3deb68df951e6d4a7bd6c Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:12:30 +0100 Subject: [PATCH 10/19] Only ubuntu --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 2ed04b8..4285d75 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -11,9 +11,9 @@ on: jobs: test: name: Run tox + runs-on: ubuntu-latest strategy: matrix: - os: [ubuntu-latest, macos-latest] tox: - py_version: '3.6' env: py36 From 7cab885d5793696e7459c5ee19f292d45b1d73a2 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:19:35 +0100 Subject: [PATCH 11/19] Fixed tox errors --- .github/workflows/tests.yml | 1 + potodo/cache.py | 3 ++- potodo/potodo.py | 13 +++++++++---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 4285d75..583757d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -12,6 +12,7 @@ jobs: test: name: Run tox runs-on: ubuntu-latest + # TODO: Add macos-latest strategy: matrix: tox: diff --git a/potodo/cache.py b/potodo/cache.py index 1bbfe7f..12f58c7 100644 --- a/potodo/cache.py +++ b/potodo/cache.py @@ -12,7 +12,8 @@ def get_cache_file_content( - cache_args: Any, path: str = ".potodo/cache.pickle", + cache_args: Any, + path: str = ".potodo/cache.pickle", ) -> Dict[Path, PoFileStats]: logging.debug("Trying to load cache from %s", path) try: diff --git a/potodo/potodo.py b/potodo/potodo.py index cbd87cc..f853377 100644 --- a/potodo/potodo.py +++ b/potodo/potodo.py @@ -154,8 +154,9 @@ def non_interactive_output( ) ) else: - total_completion = 100 * total_translated / total_entries - print(f"\n\n# TOTAL ({total_completion:.2f}% done)\n") + if total_entries != 0: + total_completion = 100 * total_translated / total_entries + print(f"\n\n# TOTAL ({total_completion:.2f}% done)\n") def exec_potodo( @@ -340,11 +341,15 @@ def buffer_add( def main() -> None: parser = argparse.ArgumentParser( - prog="potodo", description="List and prettify the po files left to translate.", + prog="potodo", + description="List and prettify the po files left to translate.", ) parser.add_argument( - "-p", "--path", help="execute Potodo in path", metavar="path", + "-p", + "--path", + help="execute Potodo in path", + metavar="path", ) parser.add_argument( From 9c53ea223e5e885e06ba77f9a9af1326f570f4f0 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:22:17 +0100 Subject: [PATCH 12/19] Trying os matrix --- .github/workflows/tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 583757d..645f767 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -15,6 +15,7 @@ jobs: # TODO: Add macos-latest strategy: matrix: + os: [ubuntu-latest, macos-latest] tox: - py_version: '3.6' env: py36 From 7e0df0b3c0e2106356559fa7a14ed949a40c1a20 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:23:51 +0100 Subject: [PATCH 13/19] Moved to var --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 645f767..77cc1f1 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -11,7 +11,7 @@ on: jobs: test: name: Run tox - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }} # TODO: Add macos-latest strategy: matrix: From 09bde52a1e43702b1fa082c3a19af0947f56b68f Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:25:28 +0100 Subject: [PATCH 14/19] Trying better format --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 77cc1f1..d1de170 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -36,5 +36,5 @@ jobs: key: ${{ matrix.tox.python-version }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} - name: Install tox run: python3 -m pip install tox - - name: Run tox + - name: Run tox on ${{ matrix.os }} for Python ${{ matrix.tox.py_version }} run: tox -q -p all -e ${{ matrix.tox.env }} From 389cf9faa254d8a67d03fcb5449e555c62e52101 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:25:41 +0100 Subject: [PATCH 15/19] renamed workflow --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index d1de170..88a415a 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,4 +1,4 @@ -name: Tox tests +name: Tests on: push: From ef984a1e2006fb9d05c954493bc34e954b7305eb Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:26:36 +0100 Subject: [PATCH 16/19] Removed todo --- .github/workflows/tests.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 88a415a..fa618a6 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -12,7 +12,6 @@ jobs: test: name: Run tox runs-on: ${{ matrix.os }} - # TODO: Add macos-latest strategy: matrix: os: [ubuntu-latest, macos-latest] From 73e178e77f5fa57869877a42192353dd2a29f2b7 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:27:41 +0100 Subject: [PATCH 17/19] Added os on cache key --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index fa618a6..da262b1 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -32,7 +32,7 @@ jobs: - uses: actions/cache@v2 with: path: .tox - key: ${{ matrix.tox.python-version }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} + key: ${{ matrix.os }}-${{ matrix.tox.python-version }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} - name: Install tox run: python3 -m pip install tox - name: Run tox on ${{ matrix.os }} for Python ${{ matrix.tox.py_version }} From ec2cb6e350057721fdda6a521fecdbc4d57d8a49 Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:28:54 +0100 Subject: [PATCH 18/19] version bump --- potodo/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/potodo/__init__.py b/potodo/__init__.py index af75cdd..c19b203 100644 --- a/potodo/__init__.py +++ b/potodo/__init__.py @@ -2,4 +2,4 @@ __author__ = """Jules Lasne""" __email__ = "jules.lasne@gmail.com" -__version__ = "0.19.0" +__version__ = "0.19.1" From b6e13b4e890b24aa9f52ac92a8130234e25704aa Mon Sep 17 00:00:00 2001 From: Jules Lasne Date: Thu, 26 Nov 2020 15:29:43 +0100 Subject: [PATCH 19/19] Fixed name --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index da262b1..6a768f4 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,7 +10,7 @@ on: jobs: test: - name: Run tox + name: Run tox on ${{ matrix.os }} for Python ${{ matrix.tox.py_version }} runs-on: ${{ matrix.os }} strategy: matrix: @@ -35,5 +35,5 @@ jobs: key: ${{ matrix.os }}-${{ matrix.tox.python-version }}-${{ hashFiles('tox.ini') }}-${{ hashFiles('requirements-dev.txt') }} - name: Install tox run: python3 -m pip install tox - - name: Run tox on ${{ matrix.os }} for Python ${{ matrix.tox.py_version }} + - name: Run tox run: tox -q -p all -e ${{ matrix.tox.env }}