Skip to content

fix: remove obsolete boto3 extra from aiobotocore dependency#64330

Open
nidhi1603 wants to merge 11 commits intoapache:mainfrom
nidhi1603:fix/remove-aiobotocore-boto3-extra
Open

fix: remove obsolete boto3 extra from aiobotocore dependency#64330
nidhi1603 wants to merge 11 commits intoapache:mainfrom
nidhi1603:fix/remove-aiobotocore-boto3-extra

Conversation

@nidhi1603
Copy link
Copy Markdown

Remove obsolete [boto3] extra from aiobotocore dependency in Amazon provider's pyproject.toml.

aiobotocore 3.3.0 removed the boto3 extra (aio-libs/aiobotocore#1424).
Since boto3 is already a required dependency of the Amazon provider package, the extra is unnecessary.

closes: #64283


Was generative AI tooling used to co-author this PR?
  • Yes (please specify the tool below)

  • Read the Pull Request Guidelines for more information. Note: commit author/co-author name and email in commits become permanently public when merged.
  • For fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
  • When adding dependency, check compliance with the ASF 3rd Party License Policy.
  • For significant user-facing changes create newsfragment: {pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.

aiobotocore 3.3.0 removed the boto3 extra (aio-libs/aiobotocore#1424).
Since boto3 is already a required dependency of the Amazon provider
package, the extra is unnecessary.

Fixes apache#64283
@nidhi1603 nidhi1603 requested a review from o-nikolas as a code owner March 27, 2026 20:07
@boring-cyborg
Copy link
Copy Markdown

boring-cyborg bot commented Mar 27, 2026

Congratulations on your first Pull Request and welcome to the Apache Airflow community! If you have any issues or are unsure about any anything please check our Contributors' Guide (https://github.com/apache/airflow/blob/main/contributing-docs/README.rst)
Here are some useful points:

  • Pay attention to the quality of your code (ruff, mypy and type annotations). Our prek-hooks will help you with that.
  • In case of a new feature add useful documentation (in docstrings or in docs/ directory). Adding a new operator? Check this short guide Consider adding an example DAG that shows how users should use it.
  • Consider using Breeze environment for testing locally, it's a heavy docker but it ships with a working Airflow and a lot of integrations.
  • Be patient and persistent. It might take some time to get a review or get the final approval from Committers.
  • Please follow ASF Code of Conduct for all communication including (but not limited to) comments on Pull Requests, Mailing list and Slack.
  • Be sure to read the Airflow Coding style.
  • Always keep your Pull Requests rebased, otherwise your build might fail due to changes not related to your commits.
    Apache Airflow is a community-driven project and together we are making it better 🚀.
    In case of doubts contact the developers at:
    Mailing List: dev@airflow.apache.org
    Slack: https://s.apache.org/airflow-slack

@boring-cyborg boring-cyborg bot added area:providers provider:amazon AWS/Amazon - related issues labels Mar 27, 2026
@eladkal eladkal requested review from ferruzzi and vincbeck March 27, 2026 22:25
@jroachgolf84
Copy link
Copy Markdown
Collaborator

@nidhi1603 - what were some of the tests that you ran here?

@nidhi1603
Copy link
Copy Markdown
Author

@nidhi1603 - what were some of the tests that you ran here?

I verified that boto3 remains a direct dependency in the Amazon provider's pyproject.toml (listed under [project] dependencies), so removing the [boto3] extra from aiobotocore doesn't change what gets installed.
I didn't have a full Airflow environment set up to run a deferrable AWS operator end-to-end. If you'd like me to set that up and test a specific operator, happy to do so — any recommendation on which one to use?

@jroachgolf84
Copy link
Copy Markdown
Collaborator

I'd suggest checking out the documentation for running Airflow locally with breeze. @vincbeck provided a scenario that makes sense to test.

@nidhi1603
Copy link
Copy Markdown
Author

I'd suggest checking out the documentation for running Airflow locally with breeze. @vincbeck provided a scenario that makes sense to test.

I set up Breeze locally and validated this change in the Airflow Breeze environment.

Environment:

  • Python 3.10
  • PostgreSQL backend

I also verified inside the Breeze container that the relevant packages resolve correctly after removing the obsolete [boto3] extra:

  • aiobotocore 2.26.0
  • boto3 1.41.5
  • botocore 1.41.5

I then ran the Amazon provider deferrable test sweep with:

pytest providers/amazon/tests -k deferrable -q | tee /tmp/amazon_deferrable_test.txt

Result:

  • 56 passed
  • 3743 deselected
  • 1 warning

So the deferrable AWS operator/sensor paths are working correctly on my side after this dependency change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:providers provider:amazon AWS/Amazon - related issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

aiobotocore no longer have boto3 extra

2 participants