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

Fix pre_gen_project.py file because of missed adjustment of python ve… #132

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 14 additions & 15 deletions .github/workflows/tests-pip.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,23 +31,22 @@ jobs:
pytest tests

version-check:
runs-on: ${{ matrix.os }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.6]
os: [ubuntu-20.04]
python-version: [ 3.9, 3.11 ]
name: "Version Check: Python ${{ matrix.python-version }}"
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Cookiecutter
run: |
python -m pip install --upgrade pip
pip install cookiecutter~=1.7.2
- name: Run Version Check
run: |
python tests/version_check.py --fail
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Cookiecutter and dependencies
run: |
python -m pip install --upgrade pip
python -m pip install cookiecutter packaging
- name: Run Version Check
run: |
python tests/version_check.py --fail
12 changes: 6 additions & 6 deletions hooks/pre_gen_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,22 +11,22 @@
import platform
import re
import sys
from distutils.version import StrictVersion
from packaging.version import Version
import warnings

import cookiecutter


with warnings.catch_warnings():
warnings.simplefilter("ignore", category=DeprecationWarning)
# check Python version (3.8 or higher)
if StrictVersion(platform.python_version()) < StrictVersion("3.8.0"):
# check Python version (3.9 or higher)
if Version(platform.python_version()) < Version("3.9.0"):
print(f"ERROR: You are using Python {platform.python_version()},",
"but Python 3.8 or higher is required to use this template")
"but Python 3.9 or higher is required to use this template")
sys.exit(1)
# check cookiecutter version (1.7.2 or higher)
if StrictVersion(cookiecutter.__version__) < StrictVersion('1.7.2'):
print(f"ERROR: You are using cookiecutter {cookiecutter.__version__}"
if Version(cookiecutter.__version__) < Version('1.7.2'):
print(f"ERROR: You are using cookiecutter {cookiecutter.__version__}"
"but cookiecutter 1.7.2 or higher is required to use this template")
sys.exit(1)

Expand Down
2 changes: 1 addition & 1 deletion tests/version_check.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
shutil.rmtree(temp_dir, ignore_errors=True)

# handle possible issues & give proper return codes
if b'Python 3.8 or higher' in stdout or b'successfully created' in stdout:
if b'Python 3.9 or higher' in stdout or b'successfully created' in stdout:
status = {True: "failed", False: "succeded"}
if actual_fail == expect_fail:
print(f"Python {platform.python_version()} {status[expect_fail]} as expected")
Expand Down
Loading