Skip to content

Switched to extra_requires for Python 2 specific requirements#16133

Merged
mehrdada merged 1 commit intogrpc:masterfrom
a-musing-moose:feature/python-environment-markers
Jul 26, 2018
Merged

Switched to extra_requires for Python 2 specific requirements#16133
mehrdada merged 1 commit intogrpc:masterfrom
a-musing-moose:feature/python-environment-markers

Conversation

@a-musing-moose
Copy link
Copy Markdown
Contributor

Modern Python dependancy tooling as defined in PEP-508 should use environment markers for Python version specific requirements.

This allows the grpcio package to work with dependancy resolvers like poetry

@thelinuxfoundation
Copy link
Copy Markdown

Thank you for your pull request. Before we can look at your contribution, we need to ensure all contributors are covered by a Contributor License Agreement.

After the following items are addressed, please respond with a new comment here, and the automated system will re-verify.

Regards,
CLA GitHub bot

Modern Python dependancy tooling as defined in PEP-508 should use environment markers for Python version specific requirements.

This allows the `grpcio` package to work with dependancy resolvers like poetry
@a-musing-moose a-musing-moose force-pushed the feature/python-environment-markers branch from 2ba99fb to 2e4ab7a Compare July 25, 2018 06:27
@mehrdada mehrdada self-requested a review July 26, 2018 06:12
@mehrdada mehrdada self-assigned this Jul 26, 2018
@mehrdada mehrdada added kokoro:run release notes: no Indicates if PR should not be in release notes labels Jul 26, 2018
@mehrdada mehrdada added release notes: yes Indicates if PR needs to be in release notes and removed release notes: no Indicates if PR should not be in release notes labels Jul 26, 2018
@grpc-testing
Copy link
Copy Markdown

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 1,976,356      Total (=)      1,976,356

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
10,770,407      Total (<)     10,770,414

 No significant differences in binary sizes


@mehrdada mehrdada merged commit 158fb28 into grpc:master Jul 26, 2018
@mehrdada
Copy link
Copy Markdown
Contributor

Thanks for the PR!

(Note to self: watch the distribtests suite on master to ensure Python distribtests pass on all platforms after this change)

@a-musing-moose a-musing-moose deleted the feature/python-environment-markers branch July 26, 2018 10:17
@mehrdada
Copy link
Copy Markdown
Contributor

@mehrdada mehrdada added release notes: no Indicates if PR should not be in release notes and removed release notes: yes Indicates if PR needs to be in release notes labels Jul 26, 2018
@a-musing-moose
Copy link
Copy Markdown
Contributor Author

Apologies. Are you using a recent version of setuptools for the installation? I believe it needs to be fairly recent.

An alternative is to use environmental markers in the install_requires section: https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-platform-specific-dependencies. But again this requires as recent version of setuptools.

@mehrdada
Copy link
Copy Markdown
Contributor

We have a bunch of docker images that we use to test our package installation: https://github.com/grpc/grpc/tree/master/tools/dockerfile/distribtest/

I'm not up to date with the state of affairs with setuptools but perhaps we could do both extra_requires and the current one? I am open to most solutions as long as you can verify them to work with the dockerfiles under python_* directories under the URL above.

@mehrdada
Copy link
Copy Markdown
Contributor

@a-musing-moose
Copy link
Copy Markdown
Contributor Author

Thanks @mehrdada. I will spend some more time on it today and make sure I can verify using the docker images.

@lock lock bot locked as resolved and limited conversation to collaborators Oct 24, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants