Comments (15)
Are there any plans to address this? My team as well as others at the company are pinning to 1.6.0 as our build process requires installing dependencies from source
from backoff.
I have pip at 20.0.1 and this still fails.
It makes not possible to use backoff as AWS Lambda dependency.
from backoff.
This is frustrating because the only way I'm sure how to fix this is to go back to setuptools. I can try to take another stab at finding a workaround.
from backoff.
@bgreen-litl
Don't let your fans down because of somebody else (poetry) problem.
from backoff.
Closing, as this seems to work fine now.
from backoff.
Ugh.
I followed a trail of comments and issues from python-poetry/poetry#760 and it sounds like the issue might possibly be fixed by a forthcoming version of pip? pypa/pip#5739
I also read that flit had a similar issue with circular build dependencies but ended up working around it even without an updated pip. I would rather try to stick to the PEP 517 route rather than convert back to setuptools if I can help it. That could mean either waiting for a pip or poetry update or maybe we could look into using flit if that is immune from this issue.
from backoff.
@bgreen-litl I tested with current pip from master and the problem still persists. pep 517 (as expected) doesn't solve the problem of circular dependencies within build dependencies.
I would rather see poetry being fixed, so maybe lets wait for a resolution from that discussion.
Maybe a quick resolution would be to generate setup.py
using https://pypi.org/project/poetry-setup, as part of the release process. I never tried it, but I guess that should work.
from backoff.
Do you think this will work around your problem? #68
I simply ran poetry-setup and checked in the generated requirements.txt and setup.py
from backoff.
in short: Still doesn't work, but if remove pyproject.toml
then it works.
Here is what is did to test:
- install pip from master
% cd /tmp
% git clone https://github.com/pypa/pip
% cd pip
% virtualenv env
% ./env/bin/pip install -e .
- Install
backoff
via url
% ./env/bin/pip install --no-binary :all: https://github.com/bgreen-litl/backoff/archive/e9a43c09d7155c8ad5e00af529c46450a08568d4.zip
...
LookupError: https://files.pythonhosted.org/packages/f7/f7/bbd9213bfe76cb7821c897f9ed74877fd74993b4ca2fe9513eb5a31030f9/tomlkit-0.5.3.tar.gz#sha256=d6506342615d051bc961f70bfcfa3d29b6616cc08a3ddfd4bc24196f16fd4ec2 (from https://pypi.org/simple/tomlkit/) (requires-python:>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*) is already being built: tomlkit<0.6.0,>=0.5.1 from https://files.pythonhosted.org/packages/f7/f7/bbd9213bfe76cb7821c897f9ed74877fd74993b4ca2fe9513eb5a31030f9/tomlkit-0.5.3.tar.gz#sha256=d6506342615d051bc961f70bfcfa3d29b6616cc08a3ddfd4bc24196f16fd4ec2 (from poetry>=0.12)
- Install
backoff
from path withoutpyproject.toml
% cd /tmp
% git clone https://github.com/bgreen-litl/backoff
% cd backoff
% git checkout poetry-setup
% rm pyproject.toml
% cd ../pip
% ./env/bin/pip install --no-binary :all: ../backoff
Processing /tmp/backoff
Skipping bdist_wheel for backoff, due to binaries being disabled for it.
Installing collected packages: backoff
Running setup.py install for backoff ... done
Successfully installed backoff-1.8.0
from backoff.
I'm still poking into this upsteam, but does pip install --no-use-pep517 .
allow you to do the setup.py build without removing pyproject.toml?
from backoff.
@garbas Is there any flags I can pass to pypi2nix so that I can test the question above?
I'm itching to package up the latest Apache Airflow build for NixOS but I can't using pypi2nix until this is resolved.
from backoff.
Is there a plan to release a fix for this?
from backoff.
It appears that poetry might have a fix for this now?
python-poetry/poetry#760 (comment)
Would someone be willing to test this?
from backoff.
This seems fixed? I didn't do anything on the backoff side, but it seems this was fixed upstream...
$ pip install backoff --no-binary :all:
Collecting backoff
Downloading backoff-1.10.0.tar.gz (13 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing wheel metadata ... done
Building wheels for collected packages: backoff
Building wheel for backoff (PEP 517) ... done
Created wheel for backoff: filename=backoff-1.10.0-py2.py3-none-any.whl size=12843 sha256=38a4acc7ba434397bc4f8922be6d530be710c9d275a853ad75cdd82fef55d994
Stored in directory: /Users/rgreen/Library/Caches/pip/wheels/25/a9/aa/07a70ee055ad3e343004e668a35520446862dae7611c115da0
Successfully built backoff
Installing collected packages: backoff
Successfully installed backoff-1.10.0
Am I missing anything?
from backoff.
Works fine now.
from backoff.
Related Issues (20)
- Duplicate logging in some special cases HOT 1
- How do I use this?
- Obtain value returned by backoff_handler function after maximum tries is reached
- max_retries HOT 1
- max_time only applies _after_ first retry?
- Canonical way to handle error bursting
- Add exponential decay
- How to handle backoff on Facebook cursor? HOT 1
- Improve Typing and Error Handling in `on_exception`
- question about max_time
- Feature Request: add a way to use backoff in a context manager HOT 2
- feature request: toggle decorator on/off
- `backoff.on_predicate` does not work for `staticmethod`s
- Expose typing hints as they are part of the API
- Add support for globally disabling retries
- How to provide arguments to `on_backoff` function HOT 1
- Feature Request: support direct invocation with functools.partial
- Maintenance help? HOT 7
- README: `max_value` arg to `@backoff.on_predicate(backoff.fibo...)` -- if not obsolete, then maybe just confusing?
- Prevent error message in case of giveup using
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from backoff.