Update Windows Requirements & CI

- Merge windows requirements into requirements.txt and requirements-extra.txt
- Update tox.ini to always use build.py
- Update build.py to have module only option
- Update tox.ini to text python 3.9
- Update .travis.yml to test 3.8 and 3.9 on newer Ubuntu LTS
-Update .travis.yml to work with changes to windows tox
(also update windows to 3.8)
Cette révision appartient à :
Andrew Senetar 2020-12-28 20:59:01 -06:00
Parent bf7d720126
révision d539517525
Signé par: arsenetar
ID de la clé GPG: C63300DCE48AB2F1
6 fichiers modifiés avec 25 ajouts et 40 suppressions

Voir le fichier

@ -5,11 +5,6 @@ install:
script: tox
matrix:
include:
- os: "linux"
dist: "xenial"
python: "3.8"
script:
- tox -e style
- os: "linux"
dist: "xenial"
python: "3.6"
@ -17,18 +12,15 @@ matrix:
dist: "xenial"
python: "3.7"
- os: "linux"
dist: "xenial"
dist: "focal"
python: "3.8"
- os: "linux"
dist: "focal"
python: "3.9"
- os: "windows"
language: shell
python: "3.7"
env: "PATH=/c/python37:/c/python37/Scripts:$PATH"
python: "3.8"
env: "PATH=/c/python38:/c/python39/Scripts:$PATH"
before_install:
- choco install python --version=3.7.6
- choco install make
- cp /c/python37/python.exe /c/python37/python3.exe
before_script:
- pip3 install -r requirements-windows.txt
- python3 build.py
script:
- tox -e WINDOWS
- choco install python --version=3.8.6
- cp /c/python38/python.exe /c/python38/python3.exe

Voir le fichier

@ -21,7 +21,7 @@ To build with a different python version 3.5 vs 3.7 or 32 bit vs 64 bit specify
$ cd <dupeGuru directory>
$ py -3.7 -m venv .\env
$ .\env\Scripts\activate
$ pip install -r requirements.txt -r requirements-windows.txt
$ pip install -r requirements.txt
$ python build.py
$ python run.py
@ -37,8 +37,6 @@ Then the following execution of the makefile should work. Pass the correct valu
$ make PYTHON='py -3.7'
$ make run
NOTE: Install PyQt5 & cx-Freeze with requirements-windows.txt into the venv before running the packaging scripts in the section below.
### Generate Windows Installer Packages
You need to use the respective x86 or x64 version of python to build the 32 bit and 64 bit versions. The build scripts will automatically detect the python architecture for you. When using build.py make sure the resulting python works before continuing to package.py. NOTE: package.py looks for the 'makensis' executable in the default location for a 64 bit windows system. Run the following in the respective virtual environment.

Voir le fichier

@ -54,6 +54,12 @@ def parse_args():
dest="normpo",
help="Normalize all PO files (do this before commit).",
)
parser.add_option(
"--modules",
action="store_true",
dest="modules",
help="Build the python modules.",
)
(options, args) = parser.parse_args()
return options
@ -182,6 +188,8 @@ def main():
build_mergepot()
elif options.normpo:
build_normpo()
elif options.modules:
build_pe_modules()
else:
build_normal()

Voir le fichier

@ -2,3 +2,4 @@ pytest>=5,<6
flake8
tox-travis
black
pyinstaller>=3.4,<4.0; sys_platform == 'win32'

Voir le fichier

@ -2,4 +2,6 @@ Send2Trash>=1.3.0
sphinx>=1.2.2
polib>=1.0.4
hsaudiotag3k>=1.1.3
distro>=1.5.0
distro>=1.5.0
PyQt5 >=5.4,<6.0; sys_platform == 'win32'
pywin32>=200; sys_platform == 'win32'

24
tox.ini
Voir le fichier

@ -1,35 +1,19 @@
[tox]
envlist = style,py36,py37,py38
envlist = py36,py37,py38,py39
skipsdist = True
skip_missing_interpreters = True
[testenv]
whitelist_externals =
make
setenv =
PYTHON="{envpython}"
commands =
make modules
py.test core hscommon
python build.py --modules
flake8
{posargs:py.test core hscommon}
deps =
-r{toxinidir}/requirements.txt
-r{toxinidir}/requirements-extra.txt
[testenv:style]
deps =
{[testenv]deps}
flake8
commands =
flake8
[testenv:WINDOWS]
deps =
{[testenv]deps}
-r{toxinidir}/requirements-windows.txt
commands =
python build.py
python package.py
[flake8]
exclude = .tox,env,build,cocoalib,cocoa,help,./qt/dg_rc.py,cocoa/run_template.py,./pkg
max-line-length = 120