Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python: noxfile support for extras #838

Closed
tswast opened this issue Nov 4, 2020 · 2 comments · Fixed by #906
Closed

Python: noxfile support for extras #838

tswast opened this issue Nov 4, 2020 · 2 comments · Fixed by #906
Assignees
Labels
priority: p2 Moderately-important priority. Fix may not be included in next release. type: feature request ‘Nice-to-have’ improvement, new feature or different behavior or design.

Comments

@tswast
Copy link
Contributor

tswast commented Nov 4, 2020

We have the following template variables for installing dependencies:

  • unit_test_external_dependencies -- install package from PyPI
  • unit_test_local_dependencies -- install package (in editable mode) from local nearby git (not relevant for non-mono-repo?)
  • unit_test_dependencies -- same as unit_test_local_dependencies?
  • system_test_external_dependencies -- install package from PyPI
  • system_test_local_dependencies -- install package (in editable mode) from local nearby git (not relevant for non-mono-repo?)

In BigQuery, we actually use system_test_local_dependencies and unit_test_local_dependencies to install "extras", but then we have logic to remove the redundant session.install("-e", ".") (see: googleapis/python-bigquery-storage#93)

I propose the following additional template parameters:

  • unit_test_extras_dependencies
  • system_test_extras_dependencies

When these are populated, it'll change session.install("-e", ".") to session.install("-e", ".[dep1,dep2]").

@yoshi-automation yoshi-automation added the triage me I really want to be triaged. label Nov 5, 2020
@busunkim96 busunkim96 added type: feature request ‘Nice-to-have’ improvement, new feature or different behavior or design. and removed triage me I really want to be triaged. labels Nov 5, 2020
@busunkim96
Copy link
Contributor

@tswast That all sounds good to me.

@SurferJeffAtGoogle SurferJeffAtGoogle added the priority: p2 Moderately-important priority. Fix may not be included in next release. label Dec 4, 2020
@tswast
Copy link
Contributor Author

tswast commented Jan 14, 2021

After working around "extras" that aren't released in Python 3.9 (googleapis/python-bigquery-storage#99) perhaps these parameters could take a dictionary of supported python versions to extras?

{
    "3.7": "fastavro,pandas,pyarrow",
    "3.8": "fastavro,pandas,pyarrow",
    "3.9": "fastavro,pandas",
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority: p2 Moderately-important priority. Fix may not be included in next release. type: feature request ‘Nice-to-have’ improvement, new feature or different behavior or design.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants