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

Do not add "extra" if provider is already required dependency #44195

Open
potiuk opened this issue Nov 19, 2024 · 1 comment
Open

Do not add "extra" if provider is already required dependency #44195

potiuk opened this issue Nov 19, 2024 · 1 comment
Assignees
Labels
area:dependencies Issues related to dependencies problems area:providers

Comments

@potiuk
Copy link
Member

potiuk commented Nov 19, 2024

When we see a providers is a dependency in "cross-provider-dependecies" - we add it automatically - when we build the package - as optional extra. However a number of providers also have the same provider as required dependency, and in this case adding an extra makes little sense.

Example https://airflow.apache.org/docs/apache-airflow-providers-jdbc/stable/index.html#cross-provider-package-dependencies - JDBC provider has "common.sql" extra but it also have "common.sql" as required dependency.

If that is the case, we should skip generating extra when the provider is prepared. This happens in

def get_package_extras(provider_id: str, version_suffix: str) -> dict[str, list[str]]:

@potiuk potiuk converted this from a draft issue Nov 19, 2024
@dosubot dosubot bot added area:dependencies Issues related to dependencies problems area:providers labels Nov 19, 2024
@amoghrajesh amoghrajesh self-assigned this Nov 20, 2024
@amoghrajesh
Copy link
Contributor

Assigning to self. Will take a stab at it soon.

@potiuk potiuk moved this from Ready to In progress in CI / CD planned work Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:dependencies Issues related to dependencies problems area:providers
Projects
Status: In progress
Development

No branches or pull requests

2 participants