Skip to content

textual-web can't be installed while depending on Python 3.12 (macOS) #31

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

Open
davep opened this issue Nov 6, 2023 · 7 comments
Open

Comments

@davep
Copy link
Contributor

davep commented Nov 6, 2023

It appears that textual-web can't currently be installed when Python 3.12 will be the environment's Python (at least on macOS, Python installed via pyenv).

Using pipx, for example, I get the following error:

Fatal error from pip prevented installation. Full pip output in file:
    /Users/davep/.local/pipx/logs/cmd_2023-11-06_08.18.46_pip_errors.log

pip failed to build packages:
    aiohttp
    uvloop

Some possibly relevant errors from pip install:
    fatal error: too many errors emitted, stopping now [-ferror-limit=]

Error installing textual-web.

An example log:

cmd_2023-11-06_08.12.43_pip_errors.log

If I force Python 3.11:

$ pyenv global 3.11
$ pipx install --force --python (which python) textual-web

(using fish above, use appropriate substitution syntax for your shell of choice) it installs just fine.

@TomJGooding
Copy link

It looks like Python 3.12 is only supported in the aiohttp beta currently.

@TomJGooding
Copy link

It looks like Python 3.12 is only supported in the aiohttp beta currently.

aiohttp v3.9 has just been released. It looks like uvloop added Python 3.12 support in v0.18.

@4b11b4
Copy link

4b11b4 commented Nov 21, 2023

Also running into this issue, but only for uvloop
Uploading cmd_2023-11-21_08.04.31_pip_errors.log…

@jco-c
Copy link

jco-c commented Nov 24, 2023

Same issue for Windows 10 on python 3.12. Some package used by textual-web depends on multidict and frozenlist (maybe also aiohttp?), which both don't have wheels for Windows yet.
PRs for both of them exist already though:
aio-libs/frozenlist#553
aio-libs/multidict#877

@ssteinerx
Copy link

3.12.1 on Ubuntu 23.10, pipx fails with:

pip failed to build package:
    uvloop

But, in a 3.12.1 virtualenv?

$ pip install uvloop
Collecting uvloop
  Downloading uvloop-0.19.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.9 kB)
Downloading uvloop-0.19.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.2/4.2 MB 15.9 MB/s eta 0:00:00
Installing collected packages: uvloop
Successfully installed uvloop-0.19.0

Go figure.

@va7wv
Copy link

va7wv commented Jan 1, 2025

Same issue here. Unuseable on Fedora 41 in a venv. Seems like this project is dead now.

Fails at:

Building wheels for collected packages: uvloop
  Building wheel for uvloop (pyproject.toml) ... /

@notdaniel
Copy link

notdaniel commented Mar 28, 2025

This is purely due to the pinned version of uvloop, which apparently caused build problems for people even at that time, and was fixed in this commit: MagicStack/uvloop#604

I forked the repo, updated the packages (including and especially uvloop) and that solved the problem. That commmit is here: notdaniel/textual-web@96371e7 and if anyone wants to try it, you can install it with pipx/pip/whatever directly from git: pipx install git+https://github.com/notdaniel/textual-web.git@fix-failing-uvloop

I could open a PR for this, but I'm not sure 1) if this project is still being maintained, or 2) if pinning all the packages to new versions broke anything non-obvious or just isn't desired for compatibility reasons.

@va7wv I am on Fedora 41 as well, so when I found this comment, I assumed it was a Fedora issue, but not the case! uvloop v0.19 also did not build on my Mac. So just a coincidence :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants