PythonistaGuild / TwitchIO

An Async Bot/API wrapper for Twitch made in Python.
https://twitchio.dev
MIT License
785 stars 163 forks source link

[speed] and [sounds] extra dependencies installation. #394

Open EvieePy opened 1 year ago

EvieePy commented 1 year ago

This issue is a pinned issue relating to installing TwitchIO with extras.

The issue with installing some of these dependencies is easily fixed on Python 3.10 and newer.

To install twitchio with speed or sound extras simply specifiy them like below: pip install twitchio[speed] --extra-index-url https://pip.twitchio.dev

The reason we have decided to use an extra index URL is because some of these packages are not easily installable or do not have wheels built to install on newer python versions.

If you have any issues regarding installing dependecies with either speed or sounds, please reply to this issue.

This index is maintained by a long time friend and is completely open source, visit it here: https://github.com/AbstractUmbra/abstractumbra.github.io

Aluerie commented 1 year ago

If you have any issues regarding installing dependecies with either speed or sounds, please reply to this issue.

I tried the following commands

pip install twitchio[speed] --extra-index-url https://pip.twitchio.dev
python -m pip install "twitchio[speed] @ git+https://github.com/TwitchIO/TwitchIO.git"  

and they both give same error: image


while the error suggestion is quite clear - to go to https://visualstudio.microsoft.com/visual-cpp-build-tools/ and grab C++ tools - idk if I'm really supposed to download 5GB just for twitchio[speed] to work, so I guess, it's better to ask.


Side note: I actually had same error with cchardet (while using second line without extra index) but searching in Pythonista discord server led me to

python -m pip install cchardet --extra-index-url https://abstractumbra.github.io/pip/ --no-cache-dir   

which is ~probably~ same as from your index, but it solved the issue for cchardet.

However, looks like it won't work for ciso8601 because twitchio requirements are ciso8601<2.3,>=2.2 while they only have pre-built wheels for 2.3 and umbra site too. I might be clueless tho.

IAmTomahawkx commented 1 year ago

idk if I'm really supposed to download 5GB just for twitchio to work, so I guess, it's better to ask.

These C-based dependencies are entirely optional, im not quite sure what you mean. Unless you need the speed extra for some reason, simply don't install them

Aluerie commented 1 year ago

Ehm, well, I guess, I shouldnt have said that. Sorry, if I'm out of touch.

It's just it looks like you, guys, want to simplify the [speed] installation process with pre-built wheels (so we dont have to download 5GB C++ tools) and it failed for me - so I came to ask about why twitchio reqs are ciso8601<2.3,>=2.2 when your index has 2.3 wheels :c ( and they have it on PyPI since 2.3 as well https://github.com/closeio/ciso8601/issues/25#issuecomment-1362087093)

IAmTomahawkx commented 1 year ago

Yeah those can probably be updated

IAmTomahawkx commented 1 year ago

version reqs have been relaxed on master.