Hi -- I'm trying to so all the setup necessary to ...
# flytekit
d
Hi -- I'm trying to so all the setup necessary to work on some features for
flytekit
but I'm getting hung up on running
make dev-requirements.txt
. I was able to do the initial setup described in the Contributing guide, but as I understand it, for extras and plugins, we should add these optional requirements to
<http://dev-requirements.in|dev-requirements.in>
. Here's the error I'm getting:
Copy code
make <http://dev-requirements.in|dev-requirements.in>
...
Could not find a version that matches protobuf<4.0.0,>=3.5.0,>=3.6.1,>=4.21.6 (from flytekit==0.0.0+develop->-r <http://requirements.in|requirements.in> (line 1))
Tried: 2.0.3, 2.3.0, 2.4.1, 2.5.0, 2.6.0, 2.6.1, 3.0.0, 3.0.0, 3.1.0, 3.1.0.post1, 3.1.0.post1, 3.2.0, 3.2.0, 3.3.0, 3.4.0, 3.4.0, 3.5.0.post1, 3.5.0.post1, 3.5.1, 3.5.1, 3.5.2, 3.5.2, 3.5.2.post1, 3.5.2.post1, 3.6.0, 3.6.0, 3.6.1, 3.6.1, 3.7.0, 3.7.0, 3.7.1, 3.7.1, 3.8.0, 3.8.0, 3.9.0, 3.9.0, 3.9.1, 3.9.1, 3.9.2, 3.9.2, 3.10.0, 3.10.0, 3.11.0, 3.11.0, 3.11.1, 3.11.1, 3.11.2, 3.11.2, 3.11.2, 3.11.3, 3.11.3, 3.11.3, 3.12.0, 3.12.1, 3.12.2, 3.12.2, 3.12.2, 3.12.4, 3.12.4, 3.12.4, 3.13.0, 3.13.0, 3.13.0, 3.14.0, 3.14.0, 3.14.0, 3.15.0, 3.15.0, 3.15.0, 3.15.1, 3.15.1, 3.15.1, 3.15.2, 3.15.2, 3.15.2, 3.15.3, 3.15.3, 3.15.3, 3.15.4, 3.15.4, 3.15.4, 3.15.5, 3.15.5, 3.15.5, 3.15.6, 3.15.6, 3.15.6, 3.15.7, 3.15.7, 3.15.7, 3.15.8, 3.15.8, 3.15.8, 3.16.0, 3.16.0, 3.16.0, 3.17.0, 3.17.0, 3.17.0, 3.17.1, 3.17.1, 3.17.1, 3.17.2, 3.17.2, 3.17.2, 3.17.3, 3.17.3, 3.17.3, 3.18.0, 3.18.0, 3.18.0, 3.18.1, 3.18.1, 3.18.1, 3.18.3, 3.18.3, 3.18.3, 3.19.0, 3.19.0, 3.19.0, 3.19.1, 3.19.1, 3.19.1, 3.19.2, 3.19.2, 3.19.2, 3.19.3, 3.19.3, 3.19.3, 3.19.4, 3.19.4, 3.19.4, 3.19.5, 3.19.5, 3.19.5, 3.19.6, 3.19.6, 3.19.6, 3.20.0, 3.20.0, 3.20.0, 3.20.1, 3.20.1, 3.20.1, 3.20.2, 3.20.2, 3.20.2, 3.20.3, 3.20.3, 3.20.3, 4.21.0, 4.21.0, 4.21.0, 4.21.0, 4.21.1, 4.21.1, 4.21.1, 4.21.1, 4.21.2, 4.21.2, 4.21.2, 4.21.2, 4.21.3, 4.21.3, 4.21.3, 4.21.3, 4.21.4, 4.21.4, 4.21.4, 4.21.4, 4.21.5, 4.21.5, 4.21.5, 4.21.5, 4.21.6, 4.21.6, 4.21.6, 4.21.6, 4.21.7, 4.21.7, 4.21.7, 4.21.7, 4.21.8, 4.21.8, 4.21.8, 4.21.8
Skipped pre-versions: 2.0.0b0, 3.0.0a2, 3.0.0a3, 3.0.0b1, 3.0.0b1.post1, 3.0.0b1.post2, 3.0.0b2, 3.0.0b2, 3.0.0b2.post1, 3.0.0b2.post1, 3.0.0b2.post2, 3.0.0b2.post2, 3.0.0b3, 3.0.0b4, 3.0.0b4, 3.2.0rc1, 3.2.0rc1, 3.2.0rc1.post1, 3.2.0rc1.post1, 3.2.0rc2, 3.2.0rc2, 3.7.0rc2, 3.7.0rc2, 3.7.0rc3, 3.7.0rc3, 3.8.0rc1, 3.8.0rc1, 3.9.0rc1, 3.9.0rc1, 3.10.0rc1, 3.10.0rc1, 3.11.0rc1, 3.11.0rc1, 3.11.0rc2, 3.11.0rc2, 3.12.0rc1, 3.12.0rc2, 3.13.0rc3, 3.13.0rc3, 3.13.0rc3, 3.14.0rc1, 3.14.0rc1, 3.14.0rc1, 3.14.0rc2, 3.14.0rc2, 3.14.0rc2, 3.14.0rc3, 3.14.0rc3, 3.14.0rc3, 3.15.0rc1, 3.15.0rc1, 3.15.0rc1, 3.15.0rc2, 3.15.0rc2, 3.15.0rc2, 3.16.0rc1, 3.16.0rc1, 3.16.0rc1, 3.16.0rc2, 3.16.0rc2, 3.16.0rc2, 3.17.0rc1, 3.17.0rc1, 3.17.0rc1, 3.17.0rc2, 3.17.0rc2, 3.17.0rc2, 3.18.0rc1, 3.18.0rc1, 3.18.0rc1, 3.18.0rc2, 3.18.0rc2, 3.18.0rc2, 3.19.0rc1, 3.19.0rc1, 3.19.0rc1, 3.19.0rc2, 3.19.0rc2, 3.19.0rc2, 3.20.0rc1, 3.20.0rc1, 3.20.0rc1, 3.20.0rc2, 3.20.0rc2, 3.20.0rc2, 3.20.1rc1, 3.20.1rc1, 3.20.1rc1, 4.0.0rc1, 4.0.0rc1, 4.0.0rc1, 4.0.0rc2, 4.0.0rc2, 4.0.0rc2, 4.21.0rc1, 4.21.0rc1, 4.21.0rc1, 4.21.0rc1, 4.21.0rc2, 4.21.0rc2, 4.21.0rc2, 4.21.0rc2
There are incompatible versions in the resolved dependencies:
  protobuf<4.0.0,>=3.5.0 (from flyteidl==1.1.22->flytekit==0.0.0+develop->-r <http://requirements.in|requirements.in> (line 1))
  protobuf>=4.21.6 (from grpcio-status==1.50.0->flytekit==0.0.0+develop->-r <http://requirements.in|requirements.in> (line 1))
  protobuf<4,>=3.6.1 (from flytekit==0.0.0+develop->-r <http://requirements.in|requirements.in> (line 1))
make: *** [Makefile:62: requirements.txt] Error 2
I'm using a
conda
environment instead of using
virtualenv
as recommended on the Contributing guide, but this should just work, and it did for the initial setup. I have tried this in a fresh environment using
conda create -n flyte-dev python=3.8
then
conda activate flyte-dev
but still get this error. Is there a known issue with the
<http://dev-requirements.in|dev-requirements.in>
? Is there a workaround for this?
I'll create a bug report, but I first wanted to make sure I'm not doing something wrong.
k
this looks weird? cc @Eduardo Apolinario (eapolinario)?
e
It looks like the new version of grpcio (1.50.0) is pulling in a a version of protobuf > 4. We're in the process of updating the protobuf dependency, but while we do this, can you set a upper bound for grpcio to be less than 1.50.0?
d
I see pretty consistent usage of
grpcio-status==1.47.0
so I'm not sure where the
1.50.0
constraint is coming from.
I see this in the console, but I still don't understand the
!=1.45.0
constraint.
Copy code
grpcio!=1.45.0,<2.0,>=1.43.0 (from flytekit==0.0.0+develop->-r <http://requirements.in|requirements.in> (line 1))
  grpcio-status!=1.45.0,>=1.43 (from flytekit==0.0.0+develop->-r <http://requirements.in|requirements.in> (line 1))
Attaching the stdout and stderr from running
Copy code
make dev-requirements.txt
I added
-vvv
to the
PIP_COMPILE
command in the Makefile in order to get way too much output.
I guess one attachment per message. Here's the stderr.
e
the
dev-requirements.txt
make target runs
pip-compile
, which updates the dependencies (including grpcio). Sorry for not being clear in my previous message. What I suggested was to add the
grpcio<=1.47.0
and
grpcio-status<=1.47.0
to
<http://requirements.in|requirements.in>
and run make again. The
grpc!=1.45.0
comes from a bad version released by the grpc team (constraint in setup.py: https://github.com/flyteorg/flytekit/blob/master/setup.py#L51)
d
Thanks @Eduardo Apolinario (eapolinario)! That fixes it. I'll make a ticket and a PR.
I created this issue: https://github.com/flyteorg/flyte/issues/3006 Feel free to add more commentary. And I'm working on the PR now.
e
thank you so much!
left a minor comment in the PR.
d
The DCO check is failing:
There are 2 commits incorrectly signed off. This means that the author(s) of these commits failed to include a Signed-off-by line in their commit message.
Is that actually a blocker and something I need to address? This one is new to me.
e
click on the link in the github check and it'll be self-explanatory what you can do to fix it. Usually I simply click the "set the DCO to pass" button
d
Thanks. This was in fact painless. My blood pressure goes up any time I do a novel git command.
e
I totally get it. Unfortunately we can't remove the DCO check, it's a cncf requirement. Thanks for you contribution, @Dennis O'Brien. I just merged your PR.
154 Views