Have you enabled troubleshooting mode?
Describe the bug
I have been updating a lot of scrapers in the Community repository lately and several users have reported this bug to me. If a package is updated upstream in a way that it gains a new dependency, updating that package does not install the new dependency which makes it seem broken. Take for example the Evil Angel metadata scraper which was recently updated to have the Altwolia package as a dependency.
This happens because the requirements for packages are only resolved in the "Available scrapers" window, where the resulting resolution is also used to show which transitive dependencies will be installed alongside whatever package the user chose to install: choosing Evil Angel here would include Altwolia (a direct dependency of Evil Angel) as well as py_common, a dependency of Altwolia.
The current workaround for this is telling users to install Altwolia manually.
Steps to reproduce
- Have an older version of a scraper like Evil Angel, xEmpire, Wicked, TabooHeat that depends on AlgoliaAPI installed
- Update that scraper to a newer version that has removed its AlgoliaAPI dependency and gained an Altwolia dependency
- Try using this scraper: it will fail to resolve Altwolia
Expected behaviour
The installPackage GraphQL call should update dependencies as well as installing new dependencies. It should not remove old dependencies because there's no way to know if those are still relevant for other packages.
Stash version
v0.31.1
Have you enabled troubleshooting mode?
Describe the bug
I have been updating a lot of scrapers in the Community repository lately and several users have reported this bug to me. If a package is updated upstream in a way that it gains a new dependency, updating that package does not install the new dependency which makes it seem broken. Take for example the Evil Angel metadata scraper which was recently updated to have the Altwolia package as a dependency.
This happens because the requirements for packages are only resolved in the "Available scrapers" window, where the resulting resolution is also used to show which transitive dependencies will be installed alongside whatever package the user chose to install: choosing Evil Angel here would include Altwolia (a direct dependency of Evil Angel) as well as py_common, a dependency of Altwolia.
The current workaround for this is telling users to install Altwolia manually.
Steps to reproduce
Expected behaviour
The
installPackageGraphQL call should update dependencies as well as installing new dependencies. It should not remove old dependencies because there's no way to know if those are still relevant for other packages.Stash version
v0.31.1