Closed facelessuser closed 1 year ago
For those popping in, this issue hasn't been forgotten. WxPython is just taking its sweet time to put out a release formally supporting Py 3.10. Tried to build it on mac OS again recently, but the build failed sadly.
Was able to get this running on mac using a snapshot: https://wxpython.org/Phoenix/snapshot-builds/wxPython-4.1.2a1.dev5308+2258f215-cp310-cp310-macosx_10_10_universal2.whl.
The snapshot is still alpha, and I only tested on mac, but it looks like no changes will be needed for mac, assuming nothing major changes before now and the official wxPython release.
Wxpython finally released a 4.2.0 version. I think we can finally start testing for an update.
Initial tests show it works fine on macOS, though the colors for pannels probably need adjusting.
I feel like every couple of wxPython versions, they change how they calculate panel backgrounds, and they are never right.
I also make the mistake and trying it at night or early morning where the mac shifts the colors of the themes, something that wxPython is never aware of.
Ugh, maybe I've never noticed this, but on mac, the colors slightly shift in wxPython as you drag the dialog around. Not to mention colors shift depending on time of day. I think some of those events are handled slightly different, but for panels, they always report the same color. In the past, we always have to adjust them them as it looks weird, so there are cases where the colors don't always match up exactly, but it isn't the end of the world. For now, I'm not going to worry about mac colors.
@facelessuser How can I install this? I cannot install. This is my output:
pip install rummage 1 ✘ 11s
Defaulting to user installation because normal site-packages is not writeable
Collecting rummage
Using cached rummage-4.16.4.tar.gz (7.9 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Installing backend dependencies ... done
Preparing metadata (pyproject.toml) ... done
Collecting wcmatch<9.0,>=8.3
Using cached wcmatch-8.4.1-py3-none-any.whl (39 kB)
Collecting backrefs<6.0,>=5.2
Using cached backrefs-5.4-py310-none-any.whl (381 kB)
Collecting filelock
Using cached filelock-3.9.0-py3-none-any.whl (9.7 kB)
Requirement already satisfied: pygments in /usr/lib/python3.10/site-packages (from rummage) (2.13.0)
Requirement already satisfied: markdown>=3.3.4 in /usr/lib/python3.10/site-packages (from rummage) (3.4.1)
Collecting pymdown-extensions>=9.0
Using cached pymdown_extensions-9.9.1-py3-none-any.whl (219 kB)
Collecting send2trash
Using cached Send2Trash-1.8.0-py3-none-any.whl (18 kB)
Collecting bracex>=2.2
Using cached bracex-2.3.post1-py3-none-any.whl (12 kB)
Collecting wxpython>=4.1.0
Using cached wxPython-4.2.0.tar.gz (71.0 MB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [8 lines of output]
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "<pip-setuptools-caller>", line 34, in <module>
File "/tmp/pip-install-w3h5n8ka/wxpython_8180f8d0ab7848e29085f293d698fc4f/setup.py", line 27, in <module>
from buildtools.config import Config, msg, opj, runcmd, canGetSOName, getSOName
File "/tmp/pip-install-w3h5n8ka/wxpython_8180f8d0ab7848e29085f293d698fc4f/buildtools/config.py", line 30, in <module>
from attrdict import AttrDict
ModuleNotFoundError: No module named 'attrdict'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
If you are on Linux, it is always better to install wxpython first if not already installed. PyPI does not offer up pre-built wheels for wxPython unfortunately, but they do provide a number of pre-built wheels here: https://extras.wxpython.org/wxPython4/extras/linux/. Your distro may already have a package for your python version, that can be installed via their package manager as well. If not, you may have to try and build wxPython yourself. Most of this information is here: https://facelessuser.github.io/Rummage/installation/#linux-prerequisites. If you are one of the more common distros, you have a better chance of finding a pre-built wheel.
It seems, Python 3.10 is supported by WxPython, not 3.11 yet, at least no prebuilt wheels. I should probably at least release a package that mentions it supports 3.10. I guess we'll monitor when wxPython 3.11 support gets released.
The version is updated and will release shortly. There is nothing functionally different than officially supporting 3.10, though technically it could already be installed on 3.10. I will open a new issue to evaluate Python 3.11 issues as soon as Python 3.11 wheels are available on PyPI.
WxPython has not provided any wheels yet for Python 3.10, so we will probably wait for that before we test and say we officially support Python 3.10, but it may still work on Python 3.10, we just won't spend time verifying until we have wxPython wheels built for it.