-
Notifications
You must be signed in to change notification settings - Fork 998
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
Remove cairosvg and submodule PrintrunGTK3 from windows build process #1400
Conversation
…n.svg. cairosvg, cffi and cairocffi not longer needed for projectlayer.py and became obsolete.
add Python 3.11 and x86 builds, add in addition pronsole.exe to build process and artifact upload
…rsions, set py 3.10 x64 as default build version
buildinstructions.txt
Outdated
(install python extension compile environment, see https://wiki.python.org/moin/WindowsCompilers ) | ||
(install git) | ||
git clone http://github.com/kliment/Printrun.git | ||
cd Printrun | ||
git submodule update --init --recursive |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line would not be required since there won't be a submodule any more?
Thank you for this detailed changes explanation. Very helpful.
Isn't Python 3.8 still supported by both wxPython and Pillow? I can see wheels for Python 3.8 on PyPI. On the other hand, you are right that 3.7 seems not supported even though it is listed as if it were so I guess it should be removed on our end as well. |
buildinstructions.txt: readme.md: Python3.8: Had you a chance to run the code for Linux and MacOS? Off topic: |
To be honest, I never looked at this file in past. If we think it is still useful, we probably should merge the usefull bits onto the main README file or, if we did not want to clutter the README, at least upgrade this document to a proper Markdown format and point to it from the main README. As far as this PR goes, I'm happy to leave it as it is now, it can be dealt with later. Thoughts? Did you use this file at all?
Fair enough. Maybe we can just exclude the combination of Python 3.8 and x86 arch on
The machines I've got at home run Python 3.9 or newer, so I can't really print anything using the 3.8 builds on Linux. "The basic automated test passes" is the best I can say :P
No, there aren't any showstoppers that I know of. All yours, please go ahead. I agree with the merging of Plater as well. |
Correct footnote and file link
I didn't use this file too, but maybe other users. I converted it in a markup file and did some more corrections
We can leave it at 3.8 in place and delete only 3.7 from pypi-win.yml and buildpackage-win.yml in a first step. In the end it doesn't matter as we build only 3.10 versions per default for now and in case we activate 3.8 it will build only the x64 version successful. We can take a second look on this later. :) List of additional changes: Readme.md |
Love it. Thanks for your work here.
I'm happy with this as well. Agreed. |
This is the last change/part for this request.
|
With former pull request #1387 (2023-11-20) for projector we no longer need:
VERSION (file), PrintrunGTK3 (submodule), cffi, cairocffi and cairosvg.
In addition I add support for x86 (32-bit windows version) and Python version 3.11.
The console program Pronsole.exe was missed for long time. It is now back and part of the windows executable file set in our repository. I split the file set (pronterface.exe and pronsole.exe) into a x86 and x64 downloadable version.
Changed files:
Buildpackage_win.yml
pypi-win.yml
Buildinstructions.txt
release_windows.bat
requirements.txt
Pillow version needs to be < 10.0 for x86 builds of 32-bit wheels (needed for build of wxPython).
10.x do not support x86 any longer.
With Python 3.12 we final need to drop Windows x86 builds. Further information can be found here.
--> https://pillow.readthedocs.io/en/latest/releasenotes/10.0.0.html#bit-wheels
--> https://pillow.readthedocs.io/en/stable/installation.html
Modifications in detail:
Buildpackage_win.yml:
-remove submodule PrintrunGTK3
-remove cffi from Install dependencies
-remove from all builds: --add-binary "PrintrunGTK3/GTK3Windows10-64/*.dll;." --add-data "VERSION;cairocffi" --add-data "VERSION;cairosvg"
-remove from x86 builds all wxPython exceptions for older python versions
-only one build path for x86 will remain to test x86 version with new wxPython 4.2.1 and its new x86 builds
-for x64 and x86 retain the possibility to compile with different development versions of wxPython if we need to act for x86 or x64 builds
-Add x86 build again
Attention: Minimum version for x86 build needs to be wxPython >= 4.2.1 (2023-11-20)
-Add Python 3.11
pypi-win.yml:
-add python 3.11
requirments.txt:
-remove cffi, cairocffi, cairosvg
-add pillow < 10.0; sys_platform == 'win32'
This is needed to build 32-bit version of wxpython as they use pillow.
release_windows.bat
-add python 3.11 venv
-remove cairosvg workaround
-remove cairocffi, VERSION, submodule PrintrunGTK3 binaries from build process
-remove all build process versions for GTK3 x64,x86 as no longer needed.
-mark Plater standalone application as experimental and not completed for now.
-With wxPpthon 4.2.1 we can build x86 applications again. Remove of x64 only in
comments (point 4.) and how to add the submodule PrintrunGTK3
-restrict Python x86 version between 3.9 and 3.11 as Polygon3 and Pillow seems to have problems with py 3.8
-add pillow workaround for pillow < 10.0
Remove submodule PrintrunGTK3
Remove file VERSION
This was a dummy file for pyinstaller to compile Pronterface. Cairocffi and cairosvg won't find
the GTK3 runtime libraries needed for running Projector under Windows w/o this file. No longer needed.
General Question:
When should we remove old not longer serviced Python versions (3.7 to 3.8) in pypi-win.yml? We don't need them in our github builds (at least for windows) as support for external modules is not longer given (like wxPython/Pillow).
Edit:
I do not expect problems with non Windows versions as the changes belong to windows builds, but we better check this.