You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/01/09 17:15:00 UTC

[jira] [Commented] (AIRFLOW-5167) Dependancy conflict with grpc-google-iam-v1

    [ https://issues.apache.org/jira/browse/AIRFLOW-5167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17012054#comment-17012054 ] 

ASF GitHub Bot commented on AIRFLOW-5167:
-----------------------------------------

rayrrr commented on pull request #7116: [AIRFLOW-5167] Rolling dependencies for GCP
URL: https://github.com/apache/airflow/pull/7116
 
 
   As a potential fix to https://issues.apache.org/jira/browse/AIRFLOW-5167 this commit changes outdated hard-pinned dependencies to rolling dependencies.
   
   While both pinned and rolling have their pros and cons, in this situation, it might be best to just deal with the bugs from rolling breaking changes as they pop up.
   
   Alternately, we should re-pin from time to time with totally hard-pinned deps. What we currently have here is a mix, so it should change one way or the other.
   
   ---
   Issue link: WILL BE INSERTED BY [boring-cyborg](https://github.com/kaxil/boring-cyborg)
   
   - [X] Description above provides context of the change
   - [X] Commit message/PR title starts with `[AIRFLOW-NNNN]`. AIRFLOW-NNNN = JIRA ID<sup>*</sup>
   - [ ] Unit tests coverage for changes (not needed for documentation changes)
   - [X] Commits follow "[How to write a good git commit message](http://chris.beams.io/posts/git-commit/)"
   - [X] Relevant documentation is updated including usage instructions.
   - [X] I will engage committers as explained in [Contribution Workflow Example](https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#contribution-workflow-example).
   
   <sup>*</sup> For document-only changes commit message can start with `[AIRFLOW-XXXX]`.
   
   ---
   In case of fundamental code change, Airflow Improvement Proposal ([AIP](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvements+Proposals)) is needed.
   In case of a new dependency, check compliance with the [ASF 3rd Party License Policy](https://www.apache.org/legal/resolved.html#category-x).
   In case of backwards incompatible changes please leave a note in [UPDATING.md](https://github.com/apache/airflow/blob/master/UPDATING.md).
   Read the [Pull Request Guidelines](https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#pull-request-guidelines) for more information.
   
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Dependancy conflict with grpc-google-iam-v1
> -------------------------------------------
>
>                 Key: AIRFLOW-5167
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-5167
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: gcp
>    Affects Versions: 1.10.4
>            Reporter: Sujay Mansingh
>            Priority: Trivial
>
> If we use a tool that does script requirements checking (e.g. {{pip-compile}}) then an erroe is thrown when handling the dependencies for {{apache-airflow[gcp_api]}}
> {code:java}
> $ pip-compile --version
> pip-compile, version 3.7.0
> $ cat requirements.in
> apache-airflow[gcp_api]
> $ pip-compile -o requirements.txt requirements.in
> Could not find a version that matches grpc-google-iam-v1<0.12dev,<0.13dev,>=0.11.4,>=0.12.3
> Tried: 0.9.0, 0.10.0, 0.10.1, 0.11.1, 0.11.3, 0.11.4, 0.12.0, 0.12.1, 0.12.2, 0.12.3
> There are incompatible versions in the resolved dependencies.
> {code}
> Looks like a set of inconsistent dependencies in the google libs :/
> {code:java}
> $ pip-compile -v -o requirements.txt requirements.in | grep -i grpc-google-iam
>   google-cloud-container==0.3.0 requires google-api-core[grpc]<2.0.0dev,>=1.14.0, grpc-google-iam-v1<0.13dev,>=0.12.3
>   google-cloud-bigtable==0.33.0 requires google-api-core[grpc]<2.0.0dev,>=1.6.0, google-cloud-core<2.0dev,>=1.0.0, grpc-google-iam-v1<0.12dev,>=0.11.4
>   google-cloud-spanner==1.9.0 requires google-api-core[grpc,grpcgcp]<2.0.0dev,>=1.4.1, google-cloud-core<2.0dev,>=1.0.0, grpc-google-iam-v1<0.12dev,>=0.11.4
>   adding ['grpc-google-iam-v1', '<0.12dev,<0.13dev,>=0.11.4,>=0.12.3', '[]']
>   grpc-google-iam-v1<0.12dev,<0.13dev,>=0.11.4,>=0.12.3
> Could not find a version that matches grpc-google-iam-v1<0.12dev,<0.13dev,>=0.11.4,>=0.12.3
> Tried: 0.9.0, 0.10.0, 0.10.1, 0.11.1, 0.11.3, 0.11.4, 0.12.0, 0.12.1, 0.12.2, 0.12.3
> There are incompatible versions in the resolved dependencies.
> {code}
> So it looks like {{google-cloud-bigtable==0.33.0}} and {{google-cloud-spanner==1.9.0}} require a version that is {{>=0.11.4}} and {{<0.12dev}}
> {{google-cloud-container==0.3.0}} upsets everything though by specifying version {{>=0.12.3}} and {{<0.13dev}}
> For now, we can work around issue by not checking any conflicts when installing {{apache_airflow[gcp]}}.
> That isn't ideal
>  - All it means is that the version of {{grpc-google-iam-v1}} that is specified last will be installed
>  - I'm assuming that there are no major api changes in {{grpc-google-iam}} between {{<0.12dev}} and {{<0.13dev}}. If there are then I imagine tests would fail, but it still feels a little wrong to allow use of a lib that doesn't match the version required
>  - Relaxing the check just means that we could have a conflict elsewhere that isn't reported
> I understand this is not an issue with airflow, but more to do with the google python libraries.
>  However it does affect us when we try to use airflow and be strict with python requirements.
> Any ideas on what to do?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)