Blazemeter / apiritif

Apiritif: API testing framework in Python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Depends on codecov

joakimnordling opened this issue · comments

It seems like I'm unable to install latest version of apiritif (1.1.3) due to it depending on codecov and that the authors of it decided to pull it from PyPI. They've issued a statement at https://about.codecov.io/blog/message-regarding-the-pypi-package/

It looks like apiritif is not really using codecov for anything. Searching for codecov shows it's listed in requirements.txt and .travis.yml. The latter is also trying to install it itself, so I belive adding it to the requirements.txt (that is parsed also for the requirements when installing the package) has even originally most likely been an accident.

Would it be possible to validate that codecov is indeed not a dependency to install apiritif and get a new release of it out, that does no longer list codecov as a dependency?

Since I've not heard anything back yet I decided to do a workaround. I'm not aware of any way to override the list of dependencies for a package, so what I found easiest to do was to fork the project on GitHub with the change and publish the fork using another name on PyPI.

I incorporated the change that @silvio-dp already made (i.e. remove codecov from requirements.txt) in the PR that he closed and left the .travis.yml alone, as that does not deal with the publishing of the package and is not included in the package either. This is the minimal change that would again allow users to install and use the package.

In the fork I did some minor changes to the README.md (mentioned the reason to the fork and that it'll be abandoned when this issue is resolved) and adjusted the URLs, authors etc in setup.py. I'm not too familiar with python package publishing or the best practices of how to deal with such metadata changes when creating a fork. Thus deep apologies if I've done some unintended mistake to take too much credit for it or left something in place that might cause some extra burden on the maintainers of this project. If that is the case, let me known and I'll fix it. However, preferably I'll just delete it when the issue has been fixed.

If anyone else is struggling with this in the meantime, feel free to check out the changes in the https://github.com/ioxiocom/apiritif repository and make your own fork and upload it to PyPI or if you trust me enough install it using pip install apiritif-no-codecov; no code changes are required to switch. However be warned that that package will most likely be deleted once the issue is fixed here.

A quick message to the maintaners of this project:

I'd highly value if you could remove the codecov from requirements.txt, bump the version number and do a new release to PyPI. That is all it takes to fix this issue for the people who use apiritif. You can then after that take your time to check how to deal with the necessary changes in the .travis.yaml file.

commented

I essentially ended up doing the same thing minus the publishing to PyPi. Created a fork and built a wheel without codecov. I've been using this as a local file dependency in my project until this is resolved or I decide to move on to another tool.

The codecov package has been re-instated to PyPI as version 2.1.13, which means installing apiritif now again works. It should still get rid of codecov as a dependency for installing it, but the urgency of this has now drastically changed to lower.