Marking this as an RC as it will take some time for me to get all
packages out and I might need to fix various packaging related bugs.
Will mark as 4.0.4 after all packages exist, should not have application
changes between these two.
Fix the issues with cx_Freeze builds on newer versions of python and
with newer version of PyQt5
- Update .gitignore to ignore .spec files
- Update package.py to use pyInstaller instead of cx_Freeze
- Update requirements-windows to have pyInstaller instead of cx_Freeze
- Update setup.nsi to work with build and packaging changes
- Add win_version_info.temp to build a version information file for
pyInstaller as part of the package.py script
- Update qt/preferences_dialog.py to resize based on layout with fixed
sizing constraints
- Remove _setupUi from qt/se/preferences_dialog.py and just use the
parent class's function
- Remove unused imports from qt/se/preferences_dialog.py
- Update ISSUE_TEMPLATE.md to help obtain better information for bug
reports.
- Update README.md to reflect more recent changes and highlight areas of
need.
* Update setup.nsi
- Always display all language choices to fix#461
- Stop recursively removing installation directory as that
is not a safe operation. This may leave the installation
directory after uninstallation but should be empty. Fix#456.
* Update requirements-windows.txt
- Add pypiwin32 for cx-freeze as it was issuing a warning
- Prevent version 5.1.0 of cx-freeze as it produces non-working
packages for some reason. Version 5.0.2 and 6.0b1 work fine.
* Update setup to delete correct files
Installer will now delete the files in the installation folder along
with the folder if it is empty. Bumped minimum cx-Freeze version to
5.1.1 as files are structured differently in older versions.
Update qtlib to prevent error on multiple calls to close the progress window. I have not been able to duplicate the issue again, to track down the root cause.
Ref #449
These methods were previously called recursively and it seemed to cause
problems in some cases. The recursive nature of these functions not
bringing any notable advantage and `os.walk()` being of better style
anyway, I removed that recursive nature.
Hopefully fixes#421
Previously, as soon as an interpreter that wasn't the one having been
used for `env` was used by tox, we would get errors because our C
modules wouldn't be built for this interpreter.
The makefile has been changed to make `make modules` interpreter-aware,
thus fixing this problem.
* Update run.py & .gitignore for windows
- Update run.py to execute on windows as SIGQUIT is not available.
- Update .gitignore to ignore the generate .pyd files
Ref #300, #393
* Update package.py for windows
Add package_windows back into package.py
- Using cx_freeze for freezing installation
- Will be using nsis for actual installer
Tested with python 3.5 64bit on windows 10
Ref #393
* Update makefile for windows (+2 misc)
- Update the makefile to support windows
- Use different bin path in virtualenv
- Use pyd instead of so files
- Tested with Msys2
- Add *.exe to .gitignore
- Fix minor format error in package.py
Ref #393
* Add requirements-windows
Add the requirements-windows.txt
- contains cx-Freeze for bundling
Ref #393
* Add initial setup.nsi
Initial Version of a NSIS installer script
- Multi-user install (install for just one or all)
- Registers uninstaller (more values need to finish up)
- Tested both single and all install / uninstall and works
- Still need to add parameters instead of hardcoded values in some spots
- Need to clean up vendor folders / keys if empty on uninstall
- Need to add the other dupeGuru languages to the language list
- Minor cleanup of script needed as well
Ref #393
* Update setup.nsi
Updates to setup.nsi including:
- Defines from CLI
- Version information (MAJOR, MINOR, PATCH)
- Bits (64 / 32)
- SourcePath (if we wanted something other than build)
- Added extra defines to move application specifics to one location
- Added extra defines for uninstall information
- Added calculation of install size
- Added switching between 64 and 32 bit contexts (need to verify
functionality)
- Updated output file naming
- Added NSIS supported languages which are also supported by dupeGuru
- Added rest of registry keys for uninstall information
- Added missing registry key for installType
- Added removeing Vendor folder and registry key if empty on uninstall
Should be very close to having this installer script ready to integrate
into the package.py script if desired.
Ref #393
* Update README & requirements-windows
Minor update to README to indicate windows is supported. Add PyQt5 to
requirements-windows.txt to make installation easier.
* Update packaging for windows
- Update package.py to integrate NSIS for windows
- Update makefile to deal with a few additional windows issues
- Add Windows.md to contain specific windows instructions, if we want
this can be merged with README.md
- Minor formatting update to setup.nsi
Ref #393
* Update README & Windows Instructions
- Update the README to include a reference to the Windows instructions.
- Add some additional notes into Windows Instructions and remove one
incorrect command.
- Update .gitignore to ignore all permutations of env* to allow for
multiple side by side virtual environments (used to build different
versions for windows)
Ref: #393
* Update Window.md
Fix broken python link and move nsis link for consistency.
* More Details in Windows.md
Update Windows.md including:
- Information on compilier requirements for windows
- Notes about the windows 10 sdk
- Some clarification around some of the steps
- Addition of msys2 links
Going to review this a bit more to polish it up.
Ref #393.
This option allows us to avoid venv+pip-install operations. We can use
this in situations where we already know we have all dependencies met
(in a Gentoo ebuild, for example...) and wish to avoid useless work and
potential problems.
It's a deployment headache. Old sparkle versions generate runtime warnings about security and up to date version requires me to compile on 10.10, but after many tries, it seems that I absolutely need to build on my minimum requirements version which is 10.8. So screw Sparkle.