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
Test against all supported Python versions and target platforms #108
Comments
I think that some of these could be pruned out. We've been doing a lot of
talk over the last couple of weeks, but no one has done real persistent
work on PythonTurtle since I developed it a decade ago. I worry that
setting goals that are too difficult are just going to make it less likely
that you're going to stick around and develop PythonTurtle to an actual
release.
If you're intent on supporting all the combinations you specified, and
you're going to actually do it, that'll be great. I won't stand in your
way. I think that the most important setup for users is an installer for
Windows that bundles Python 3.7 and the latest wxPython, and for this case
there's no need for so many combinations of versions. I know you're not
very interested in Windows. Keep in mind that this Windows version is why
PythonTurtle became part of the official curriculum in Saudi Arabia, and is
also used in other schools throughout the world. It's helped introduce
Python to millions of students.
In any case, feel free to proceed. The only question to me is whether
you're going to keep working past the initial step of excitement and to the
point where there's an actual release, whatever platform it may be.
…On Sun, Sep 23, 2018 at 3:10 PM Peter Bittner ***@***.***> wrote:
We should automate testing (and building installers) against *all
combinations* of:
1. target platforms (Windows, macOS, GNU/Linux distros)
2. supported Python versions (2.7, 3.5, 3.6, 3.7, PyPy, PyPy3)
3. supported versions of wxPython (wxgtk2.8, wxgtk3.0, wxgtk4.0)
This may or may not require switching from Travis
<https://travis-ci.org/cool-RR/PythonTurtle> to (or using in addition)
AppVeyor
<https://packaging.python.org/guides/supporting-windows-using-appveyor/>.
It will make sense to use prepared Docker images
<wxWidgets/Phoenix#1003> for all combinations.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#108>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/AADdygcd9Gu_l-xD35zZ05RxGtLQ3useks5ud3odgaJpZM4W1rRM>
.
|
If PyInstaller is actually packaging Python (3.7) in a way that is completely independent of the target platform and the wxPython version used in PythonTurtle's implementation is actually available for the target platform (or - even better - if also the wxPython dependencies are bundled with the binary) then there should be no need to worry about testing against several combinations. What I'm worrying about is: If it proves true that substantial changes done to the code base that make PythonTurtle run on Python 3.7 alone entail that it won't run on, say, Windows or macOS you will most probably refuse to merge the changes. For obvious reasons. Given that there are no tests that allow us to verify (future) changes will work out we need to do some preparation work. Employ linting was one of them (unfortunately with less impact than hoped for -- it would require some pair-programming, a dedicated sprint -- or just so personal dedication of yours as you are the one to know the code base best in order to make critical decisions). I think, now it's your turn. You've already given your 👍 to using PyInstaller. Now we need a list of what steps are required to make packaging a release happen. For simplicity's sake we take it for granted that the result for running PyInstaller will work on all three supported target platforms (Windows, macOS, GNU/Linux) is some way. If there is anything specific needed for GNU/Linux that you can't determine I'm ready to jump in. Thank you! |
|
This issue now seems to be fixed for most parts:
We should probably also run the test suite on both Windows and macOS. Just to make sure that differences across platforms, if they affect our code base, are potentially spotted (or at least, that we can write a test reproducing a platform dependent behavior, if this is being discovered). |
Ooops, there is something wrong with the macOS build on Travis:
|
Aha, it actually installs the correct version (a wheel for macOS). However, the |
I will likely replace the Travis and AppVeyor builds by GitHub Actions, which covers the whole spectrum and actually works, as proven by the setup I have for PyClean. For building the MSI installer I found two interesting projects that may be able to help us out:
EDIT There is even a Python-powered WiX-based MSI creator: WiX.Py (unfortuantely still based on Python 2) I opened sk1project/wixpy#18. Python 3 support seems on its way. |
Sounds good.
…On Sun, Aug 30, 2020 at 4:20 PM Peter Bittner ***@***.***> wrote:
I will likely replace the Travis and AppVeyor builds by GitHub Actions,
which covers the whole spectrum and actually works, as proven by the
setup I have for PyClean <https://github.com/bittner/pyclean/actions>.
For building the MSI installer I found two interesting projects that may
be able to help us out:
- https://github.com/microsoft/github-actions-for-desktop-apps
- https://github.com/mmckegg/msi-packager
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#108 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAN3SQTXXSLSMOFYJEHFS3SDJGZNANCNFSM4FWWWRGA>
.
|
We should automate testing (and building installers) against all combinations of:
This may or may not require switching from Travis to (or using in addition) AppVeyor.
It will make sense to use prepared Docker images for all combinations.
Related Issues
src
module name (src
->pythonturtle
) #106The text was updated successfully, but these errors were encountered: