Merge branch 'master' into exclude_list

This commit is contained in:
glubsy 2020-12-29 15:55:44 +01:00
commit 90c7c067b7
10 changed files with 29 additions and 42 deletions

View File

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

View File

@ -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> $ cd <dupeGuru directory>
$ py -3.7 -m venv .\env $ py -3.7 -m venv .\env
$ .\env\Scripts\activate $ .\env\Scripts\activate
$ pip install -r requirements.txt -r requirements-windows.txt $ pip install -r requirements.txt
$ python build.py $ python build.py
$ python run.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 PYTHON='py -3.7'
$ make run $ 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 ### 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. 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.

View File

@ -54,6 +54,12 @@ def parse_args():
dest="normpo", dest="normpo",
help="Normalize all PO files (do this before commit).", 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() (options, args) = parser.parse_args()
return options return options
@ -182,6 +188,8 @@ def main():
build_mergepot() build_mergepot()
elif options.normpo: elif options.normpo:
build_normpo() build_normpo()
elif options.modules:
build_pe_modules()
else: else:
build_normal() build_normal()

View File

@ -3,5 +3,5 @@
"longname": "dupeGuru", "longname": "dupeGuru",
"execname": "dupeguru", "execname": "dupeguru",
"arch": "any", "arch": "any",
"iconpath": "/usr/share/dupeguru/dgse_logo_128.png" "iconpath": "dupeguru"
} }

View File

@ -8,4 +8,5 @@ all:
chmod +x src/run.py chmod +x src/run.py
cp -R src/ "$(CURDIR)/debian/{pkgname}/usr/share/{execname}" cp -R src/ "$(CURDIR)/debian/{pkgname}/usr/share/{execname}"
cp "$(CURDIR)/debian/{execname}.desktop" "$(CURDIR)/debian/{pkgname}/usr/share/applications" cp "$(CURDIR)/debian/{execname}.desktop" "$(CURDIR)/debian/{pkgname}/usr/share/applications"
ln -s "/usr/share/{execname}/dgse_logo_128.png" "$(CURDIR)/debian/{pkgname}/usr/pixmaps/{execname}.png"
ln -s "/usr/share/{execname}/run.py" "$(CURDIR)/debian/{pkgname}/usr/bin/{execname}" ln -s "/usr/share/{execname}/run.py" "$(CURDIR)/debian/{pkgname}/usr/bin/{execname}"

View File

@ -3,5 +3,5 @@
"longname": "dupeGuru", "longname": "dupeGuru",
"execname": "dupeguru", "execname": "dupeguru",
"arch": "any", "arch": "any",
"iconpath": "/usr/share/dupeguru/dgse_logo_128.png" "iconpath": "dupeguru"
} }

View File

@ -1 +1 @@
3.0 (native) 3.0 (native)

View File

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

View File

@ -2,4 +2,6 @@ Send2Trash>=1.3.0
sphinx>=1.2.2 sphinx>=1.2.2
polib>=1.0.4 polib>=1.0.4
hsaudiotag3k>=1.1.3 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'

22
tox.ini
View File

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