Skip to content
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

Dependency conflict #129

Closed
BachoSeven opened this issue Apr 26, 2020 · 12 comments
Closed

Dependency conflict #129

BachoSeven opened this issue Apr 26, 2020 · 12 comments

Comments

@BachoSeven
Copy link
Contributor

BachoSeven commented Apr 26, 2020

Hi, I'm unsure how I could resolve this, I tried using normal pip and also pipx(contained installation) but I always get this:

ERROR: pygogo 0.10.0 has requirement future~=0.15.2, but you'll have future 0.18.2 which is incompatible.
@XayOn
Copy link
Owner

XayOn commented Nov 17, 2020

Hi @BachoSeven , did you try a virtualenv?
Conflicts between dependencies on installed packages are pretty common.

However, I've updated the project, using poetry now and updated all deps, so this shoulD work now for you.

@XayOn XayOn closed this as completed Nov 17, 2020
@BachoSeven
Copy link
Contributor Author

I was able to install through pip, but it looks like it's 2.0.1, while your last release here is 3.0.0a. I also think it's not updated because typing katcr --help does not show the --engines option, for instance.

@XayOn
Copy link
Owner

XayOn commented Nov 18, 2020

Hi @BachoSeven I've just uploaded "katcr-3.0.0a0" to pypi, have in account that its an alpha.

This is basically an "emergency" alpha, as most torrent providers had died or changed radically their webpages. (I.E, tpb using javascript...) making previous version hardly usable except with jackett.

It comes with major changes (and some drawbacks 😢 )

Basically, as improvements:

  • Its more magnet-centered, looks for magnet links with a regex thus making scrapping a lot easier and a smaller codebase (more mantainable).
  • Huge cleanup of dead torrent sites, added a few new ones
  • Added torrent streaming capabilities (just set your favourite player on the PLAYER environment variable, and use --stream and --interactive togheter)
  • Jackett support works nice
  • Docker now directly sets katcr as entrypoint

As drawbacks:

  • Documentation is still WIP
  • KatBot is gone, the telegram part has to be rewritten
  • Tests are gone too
  • It now requires libtorrent (will make this part optional with an extra section tomorrow)

@BachoSeven
Copy link
Contributor Author

That sounds great, especially about the Jackett support, I actually discovered katcr while looking for a nice cli tool for Jackett, I agree that using Jackett is gonna be more reliable than manually updating the torrent sites

P.S. I'll try to make an AUR package for this tool sometime soon

@XayOn
Copy link
Owner

XayOn commented Nov 20, 2020

The AUR package would be really nice!

I just improved the jackett support a bit, it wasnt working with torrentstream, and I've added a configuration file to store the api key and URL.

@BachoSeven
Copy link
Contributor Author

Hei, I've been trying to make the AUR package, but I have some technical difficulties, since on Arch I need to follow the Packaging Guidelines, which means I cannot use pip to install, but rather I have to add all necessary dependencies. Moreover, since not all dependencies listed in pyproject.toml were present in Arch/AUR, I went ahead and packaged some of them, and some of the dependencies of the dependencies(...)

Unfortunately, even after doing all that, the tests fail because, being on Arch, robobrowser pulls in the latest version of werkzeug, rather than 0.16.1 as required by your torrentmirror package. So, the unsolved library breakings (see 1, 2) introduced in robobrowser by newer versions of werkzeug make the tests fail. robobrowser seems to be unmaintained, so do you think I should make a package for werkzeug==0.16?

@BachoSeven
Copy link
Contributor Author

If you would not mind(it would make things a lot easier), you could try using the workaround shown here:
Namely, adding

import werkzeug
werkzeug.cached_property = werkzeug.utils.cached_property

BEFORE import robobrowser, so in our case it would be necessary here for torrentmirror (and perhaps here for the test in this repo). This way, I could package using the latest werkzeug version.

What do you think?

@BachoSeven
Copy link
Contributor Author

btw, here are my packages for torrentmirror and katcr (latter is not uploaded because it doesn't build)

@XayOn
Copy link
Owner

XayOn commented Apr 4, 2021

@BachoSeven I actually closed this because robobrowser is no longer a dependency 😟

Maybe you're packaging an older version?

@XayOn
Copy link
Owner

XayOn commented Apr 4, 2021

Oh! i see, it's a subdependency of torrentmirror, let's continue this discussion over there. I've opened XayOn/torrentmirror#1

@BachoSeven
Copy link
Contributor Author

Feel free to add the AUR package to the installation methods, it works now(with optional support for streaming as well).

@XayOn
Copy link
Owner

XayOn commented Apr 6, 2021

Done, thanks @BachoSeven 👍🏽

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

2 participants