apache-airflow-providers-amazon

Changelog

9.1.0

Features

  • feat: add OpenLineage support for RedshiftToS3Operator (#41632)

  • Add 'SageMakerProcessingSensor' (#43144)

  • Make 'RedshiftDataOperator'  handle multiple queries (#42900)

Bug Fixes

  • fix(providers/amazon): alias is_authorized_dataset to is_authorized_asset (#43470)

  • Remove returns in final clause of athena hooks (#43426)

  • fix: replace \s with space in EksHook (#43849)

  • Fix 'HttpToS3Operator' throws exception if s3_bucket parameter is not passed (#43828)

  • Add 'container_name' and update 'awslogs_stream_prefix' pattern (#43138)

  • Check if awslogs_stream_prefix already ends with container_name (#43724)

  • bugfix description should be optional for openlineage integration with 'AthenaOperator' (#43576)

  • (bugfix): 'EcsRunTaskOperator' decouple 'volume_configurations' from 'capacity_provider_strategy' (#43047)

  • GlueJobOperator: add option to wait for cleanup before returning job status (#43688)

  • Resolve 'GlueJobTrigger' serialization bug causing verbose to always be True (#43622)

  • Remove returns in final clause of S3ToDynamoDBOperator (#43456)

Misc

  • Remove sqlalchemy-redshift dependency (#43271)

  • feat(providers/amazon): Use asset in common provider (#43110)

  • Restrict looker-sdk version 24.18.0 and microsoft-kiota-http 1.3.4 (#42954)

  • Limit mypy-boto3-appflow (#43436)

  • Move PythonOperator to Standard provider (#42081)

  • Add support for semicolon stripping to DbApiHook, PrestoHook, and TrinoHook (#41916)

  • Remove deprecations from cncf.kubernetes provider (#43689)

  • Fix docstring for AthenaTrigger (#43616)

9.0.0

Breaking changes

Warning

In order to support session reuse in RedshiftData operators, the following breaking changes were introduced:

The database argument is now optional and as a result was moved after the sql argument which is a positional one. Update your DAGs accordingly if they rely on argument order. Applies to:

  • RedshiftDataHook’s execute_query method

  • RedshiftDataOperator

RedshiftDataHook’s execute_query method now returns a QueryExecutionOutput object instead of just the statement ID as a string.

RedshiftDataHook’s parse_statement_resposne method was renamed to parse_statement_response.

S3ToRedshiftOperator’s schema argument is now optional and was moved after the s3_key positional argument. Update your DAGs accordingly if they rely on argument order.

Warning

All deprecated classes, parameters and features have been removed from the Amazon provider package. The following breaking changes were introduced:

  • Hooks

    • Removed sleep_time parameter from AthenaHook. Use poll_query_status instead

    • Removed BaseAsyncSessionFactory

    • Removed AwsBaseAsyncHook

    • Removed start_from_head parameter from AwsLogsHook.get_log_events method

    • Removed sts_hook property from QuickSightHook

    • Removed RedshiftAsyncHook

    • Removed S3 connection type. Please use aws as conn_type instead, and specify bucket_name in service_config.s3 within extras

    • Removed wait_for_completion, check_interval and verbose parameters from SageMakerHook.start_pipeline method

    • Removed wait_for_completion, check_interval and verbose parameters from SageMakerHook.stop_pipeline method

  • Operators

    • Removed source parameter from AppflowRunOperator

    • Removed overrides parameter from BatchOperator. Use container_overrides instead

    • Removed status_retries parameter from BatchCreateComputeEnvironmentOperator

    • Removed get_hook method from DataSyncOperator. Use hook property instead

    • Removed wait_for_completion, waiter_delay and waiter_max_attempts parameters from EcsDeregisterTaskDefinitionOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed wait_for_completion, waiter_delay and waiter_max_attempts parameters from EcsRegisterTaskDefinitionOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed eks_hook property from EksCreateClusterOperator. Use hook property instead

    • Removed pod_context, pod_username and is_delete_operator_pod parameters from EksPodOperator

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrStartNotebookExecutionOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrStopNotebookExecutionOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed max_tries parameter from EmrContainerOperator. Use max_polling_attempts instead

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrCreateJobFlowOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrServerlessCreateApplicationOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrServerlessStartJobOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrServerlessStopApplicationOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed waiter_countdown and waiter_check_interval_seconds parameters from EmrServerlessDeleteApplicationOperator. Please use waiter_max_attempts and waiter_delay instead

    • Removed delay parameter from GlueDataBrewStartJobOperator. Use waiter_delay instead

    • Removed hook_params parameter from RdsBaseOperator

    • Removed increment as possible value from action_if_job_exists parameter from SageMakerProcessingOperator

    • Removed increment as possible value from action_if_job_exists parameter from SageMakerTransformOperator

    • Removed increment as possible value from action_if_job_exists parameter from SageMakerTrainingOperator

  • Secrets

    • Removed from full_url_mode and are_secret_values_urlencoded as possible key in kwargs from SecretsManagerBackend

  • Sensors

    • Removed get_hook method from BatchSensor. Use hook property instead

    • Removed get_hook method from DmsTaskBaseSensor. Use hook property instead

    • Removed get_hook method from EmrBaseSensor. Use hook property instead

    • Removed get_hook method from GlueCatalogPartitionSensor. Use hook property instead

    • Removed get_hook method from GlueCrawlerSensor. Use hook property instead

    • Removed quicksight_hook property from QuickSightSensor. Use QuickSightSensor.hook instead

    • Removed sts_hook property from QuickSightSensor

    • Removed get_hook method from RedshiftClusterSensor. Use hook property instead

    • Removed get_hook method from S3KeySensor. Use hook property instead

    • Removed get_hook method from SageMakerBaseSensor. Use hook property instead

    • Removed get_hook method from SqsSensor. Use hook property instead

    • Removed get_hook method from StepFunctionExecutionSensor. Use hook property instead

  • Transfers

    • Removed aws_conn_id parameter from AwsToAwsBaseOperator. Use source_aws_conn_id instead

    • Removed bucket and delimiter parameters from GCSToS3Operator. Use gcs_bucket instead of bucket

  • Triggers

    • Removed BatchOperatorTrigger. Use BatchJobTrigger instead

    • Removed BatchSensorTrigger. Use BatchJobTrigger instead

    • Removed region parameter from EksCreateFargateProfileTrigger. Use region_name instead

    • Removed region parameter from EksDeleteFargateProfileTrigger. Use region_name instead

    • Removed poll_interval and max_attempts parameters from EmrCreateJobFlowTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed poll_interval and max_attempts parameters from EmrTerminateJobFlowTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed poll_interval parameter from EmrContainerTrigger. Use waiter_delay instead

    • Removed poll_interval parameter from GlueCrawlerCompleteTrigger. Use waiter_delay instead

    • Removed delay and max_attempts parameters from GlueDataBrewJobCompleteTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed RdsDbInstanceTrigger. Use the other RDS triggers such as RdsDbDeletedTrigger, RdsDbStoppedTrigger or RdsDbAvailableTrigger

    • Removed poll_interval and max_attempts parameters from RedshiftCreateClusterTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed poll_interval and max_attempts parameters from RedshiftPauseClusterTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed poll_interval and max_attempts parameters from RedshiftCreateClusterSnapshotTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed poll_interval and max_attempts parameters from RedshiftResumeClusterTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed poll_interval and max_attempts parameters from RedshiftDeleteClusterTrigger. Use waiter_delay and waiter_max_attempts instead

    • Removed SageMakerTrainingPrintLogTrigger. Use SageMakerTrigger instead

  • Utils

    • Removed test_endpoint_url as possible key in extra_config from AwsConnectionWrapper. Please set endpoint_url in service_config.sts within extras

    • Removed s3 as possible value in conn_type from AwsConnectionWrapper. Please update your connection to have conn_type='aws'

    • Removed session_kwargs as key in connection extra config. Please specify arguments passed to boto3 session directly

    • Removed host from AWS connection, please set it in extra['endpoint_url'] instead

    • Removed region parameter from AwsHookParams. Use region_name instead

  • Remove deprecated stuff from Amazon provider package (#42450)

  • Support session reuse in 'RedshiftDataOperator' (#42218)

Features

  • Add STOPPED to the failure cases for Sagemaker Training Jobs (#42423)

Bug Fixes

  • 'S3DeleteObjects' Operator: Handle dates passed as strings (#42464)

  • Small fix to AWS AVP cli init script (#42479)

  • Make the AWS logging faster by reducing the amount of sleep (#42449)

  • Fix logout in AWS auth manager (#42447)

  • fix(providers/amazon): handle ClientError raised after key is missing during table.get_item (#42408)

Misc

  • Drop python3.8 support core and providers (#42766)

  • Removed conditional check for task context logging in airflow version 2.8.0 and above (#42764)

  • Rename dataset related python variable names to asset (#41348)

  • Remove identity center auth manager cli (#42481)

  • Refactor AWS Auth manager user output (#42454)

  • Remove 'sqlalchemy-redshift' dependency from Amazon provider (#42830)

  • Revert "Remove 'sqlalchemy-redshift' dependency from Amazon provider" (#42864)

8.29.0

Features

  • Adding support for volume configurations in ECSRunTaskOperator (#42087)

  • Openlineage s3 to redshift operator integration (#41575)

Bug Fixes

  • ECSExecutor: Drop params that aren't compatible with EC2 (#42228)

  • Fix 'GlueDataBrewStartJobOperator' template fields (#42073)

  • validate aws service exceptions in waiters (#41941)

  • Fix treatment of "#" in S3Hook.parse_s3_url() (#41796)

  • fix: remove part of openlineage extraction from S3ToRedshiftOperator (#41631)

  • filename template arg in providers file task handlers backward compitability support (#41633)

  • fix: select_query should have precedence over default query in RedshiftToS3Operator (#41634)

Misc

  • Actually move saml to amazon provider (mistakenly added in papermill) (#42148)

  • Use base aws classes in AWS Glue DataBrew Operators/Triggers (#41848)

  • Move 'register_views' to auth manager interface (#41777)

  • airflow.models.taskinstance deprecations removed (#41784)

  • remove deprecated soft_fail from providers (#41710)

  • remove deprecated soft_fail from providers part2 (#41727)

  • Limit watchtower as depenendcy as 3.3.0 breaks moin. (#41612)

  • Remove deprecated log handler argument filename_template (#41552)

8.28.0

Note

This release of provider is only available for Airflow 2.8+ as explained in the Apache Airflow providers support policy.

Warning

When deferrable mode was introduced for RedshiftDataOperator, in version 8.17.0, tasks configured with deferrable=True and wait_for_completion=True would not enter the deferred state. Instead, the task would occupy an executor slot until the statement was completed. A workaround may have been to set wait_for_completion=False. In this version, tasks set up with wait_for_completion=False will not wait anymore, regardless of the value of deferrable.

Features

  • Add incremental export and cross account export functionality in 'DynamoDBToS3Operator' (#41304)

  • EKS Overrides for AWS Batch submit_job (#40718)

Bug Fixes

  • Fix 'AwsTaskLogFetcher' missing logs (#41515)

  • Fix the Exception name and unpin dependency in 'RdsHook' (#41256)

  • Fix RedshiftDataOperator not running in deferred mode as expected (#41206)

Misc

  • Partial fix for example_dynamodb_to_s3.py (#41517)

  • Remove deprecated code is AWS provider (#41407)

  • Bump minimum Airflow version in providers to Airflow 2.8.0 (#41396)

  • Limit moto temporarily - 5.0.12 is breaking our tests (#41244)

8.27.0

Features

  • Add RedriveExecution support to 'StepFunctionStartExecutionOperator' (#40976)

  • openlineage: add support for hook lineage for S3Hook (#40819)

  • Introduce Amazon Kinesis Analytics V2 (Managed Service for Apache Flink application)  (#40765)

Bug Fixes

  • Make EMR Container Trigger max attempts retries match the Operator (#41008)

  • Fix 'RdsStopDbOperator' operator in deferrable mode (#41059)

  • Fix 'RedshiftCreateClusterOperator' to always specify 'PubliclyAccessible' (#40872)

  • Fix Redshift cluster operators and sensors using deferrable mode (#41191)

  • Fix 'EmrServerlessStartJobOperator' with deferrable mode (#41103)

Misc

  • Update 'example_redshift' and 'example_redshift_s3_transfers' to use 'RedshiftDataHook' instead of 'RedshiftSQLHook' (#40970)

  • openlineage: migrate OpenLineage provider to V2 facets. (#39530)

  • [AIP-62] Translate AIP-60 URI to OpenLineage (#40173)

  • Move AWS Managed Service for Apache Flink sensor states to Hook (#40896)

  • Replace usages of task context logger with the log table (#40867)

  • Deprecate 'SageMakerTrainingPrintLogTrigger' (#41158)

8.26.0

Note

Reduce memory footprint of S3KeyTrigger Decorator provide_bucket_name_async is removed. Async does not require a separated decorator. The old one is removed and users can use provide_bucket_name for coroutine functions, async iterators, and normal synchronous functions. Hook method get_file_metadata_async is now an async iterator Previously, the metadata objects were accumulated in a list. Now the objects are yielded as we page through the results. To get a list you may use async for in a list comprehension. S3KeyTrigger avoids loading all positive matches into memory in some circumstances

Note

This release contains significant resources utilization improvements for async sessions

Features

  • Do not dynamically determine op links for emr serverless (#40627)

  • Be able to remove ACL in S3 hook's copy_object (#40518)

  • feat(aws): provide the context to check_fn in S3 sensor (#40686)

Bug Fixes

  • fix OpenLineage extraction for AthenaOperator (#40545)

  • Reduce memory footprint of s3 key trigger (#40473)

  • Adding cluster to ecs trigger event to avoid defer error (#40482)

  • Fix deferrable AWS SageMaker operators (#40706)

  • Make 'AwsAuthManager' compatible with only Airflow >= 2.9 (#40690)

  • Add serialization opt to s3 operator (#40659)

Misc

  • Use base aws classes in AWS Glue Data Catalog Sensors (#40492)

  • Use base aws classes in AWS Glue Crawlers Operators/Sensors/Triggers (#40504)

  • Share data loader to across asyncio boto sessions (#40658)

  • Send executor logs to task logs in 'EcsExecutor' (#40468)

  • Send executor logs to task logs in 'AwsBatchExecutor' (#40698)

8.25.0

Features

  • Add Amazon Comprehend Document Classifier (#40287)

Bug Fixes

  • Fix 'importlib_metadata' import in aws utils (#40134)

  • openlineage, redshift: do not call DB for schemas below Airflow 2.10 (#40197)

  • Lazy match escaped quotes in 'RedshiftToS3Operator' (#40206)

  • Use stdlib 'importlib.metadata' for retrieve 'botocore' package version (#40137)

Misc

  • Update pandas minimum requirement for Python 3.12 (#40272)

8.24.0

Features

  • ECS Overrides for AWS Batch submit_job (#39903)

  • Add transfer operator S3ToDynamoDBOperator (#39654)

  • Adding Glue Data Quality Rule Recommendation Run  (#40014)

  • Allow user-specified object attributes to be used in check_fn for S3KeySensor (#39950)

  • Adding Amazon Glue Data Quality Service (#39923)

Bug Fixes

  • Deduplicate model name in SageMakerTransformOperator (#39956)

  • Fix: remove process_func from templated_fields (#39948)

  • Fix aws assume role session creation when deferrable (#40051)

Misc

  • Resolving ECS fargate deprecated warnings (#39834)

  • Resolving EMR notebook deprecated warnings (#39829)

  • Bump boto min versions (#40052)

  • docs: mention minimum boto3 1.34.52 for AWS provider when using Batch 'ecs_properties_override' (#39983)

8.23.0

Features

  • Amazon Bedrock - Retrieve and RetrieveAndGenerate (#39500)

  • Introduce Amazon Comprehend Service (#39592)

Bug Fixes

  • fix: empty openlineage dataset name for AthenaExtractor (#39677)

  • Fix default value for aws batch operator retry strategy (#39608)

  • Sagemaker trigger: pass the job name as part of the event (#39671)

  • Handle task adoption for batch executor (#39590)

  • bugfix: handle invalid cluster states in NeptuneStopDbClusterOperator (#38287)

  • Fix automatic termination issue in 'EmrOperator' by ensuring 'waiter_max_attempts' is set for deferrable triggers (#38658)

Misc

  • Resolving EMR deprecated warnings (#39743)

  • misc: add comment about remove unused code (#39748)

8.22.0

Features

  • 'S3DeleteObjectsOperator' Added ability to filter keys by last modified time (#39151)

  • Amazon Bedrock - Add Knowledge Bases and Data Sources integration (#39245)

Bug Fixes

  • EcsExcecutor Scheduler to handle incrementing of try_number (#39336)

  • ECS Executor: Set tasks to RUNNING state once active (#39212)

Misc

  • Add 'jmespath' as an explicit dependency (#39350)

  • Drop 'xmlsec' dependency (#39534)

  • Reapply templates for all providers (#39554)

  • Faster 'airflow_version' imports (#39552)

  • enh(amazon_hook): raise not found exception instead of general exception when download file (#39509)

  • Simplify 'airflow_version' imports (#39497)

8.21.0

Note

This release of provider is only available for Airflow 2.7+ as explained in the Apache Airflow providers support policy.

Features

  • Added logging_config,snapstart,ephemeral_storage parameters to aws lambdacreatefunctionoperator (#39300)

Bug Fixes

  • Fix bug in GlueJobOperator where consecutive runs fail when a local script file is used (#38960)

  • Update 'is_authorized_custom_view' from auth manager to handle custom actions (#39167)

  • Update logic to allow retries in AWS Batch Client hook to be effective (#38998)

  • Amazon Bedrock - Model Throughput Provisioning (#38850)

Misc

  • Adding MSGraphOperator in Microsoft Azure provider (#38111)

  • Bump minimum Airflow version in providers to Airflow 2.7.0 (#39240)

  • Allow importing the aws executors with a shorter path (#39093)

  • Remove flag from AWS auth manager to use it (#39033)

  • Limit xmlsec<1.3.14  (#39104)

8.20.0

Features

  • AWS Batch Executor (#37618)

  • Add fallback 'region_name' value to AWS Executors (#38704)

  • Introduce Amazon Bedrock service (#38602)

  • Amazon Bedrock - Model Customization Jobs (#38693)

  • ECS Executor - add support to adopt orphaned tasks. (#37786)

  • Update AWS auth manager CLI command to not disable AVP schema validation (#38301)

Bug Fixes

  • Reduce 's3hook' memory usage (#37886)

  • Add check in AWS auth manager to check if the Amazon Verified Permissions schema is up to date (#38333)

  • fix: EmrServerlessStartJobOperator not serializing DAGs correctly when partial/expand is used. (#38022)

  • fix(amazon): add return statement to yield within a while loop in triggers (#38396)

  • Fix set deprecated amazon operators arguments in 'MappedOperator' (#38346)

  • 'ECSExecutor' API Retry bug fix (#38118)

  • Fix 'region' argument in 'MappedOperator' based on 'AwsBaseOperator' / 'AwsBaseSensor' (#38178)

  • Fix bug for ECS Executor where tasks were being skipped if one task failed. (#37979)

  • Fix init checks for aws redshift to s3 operator (#37861)

Misc

  • Make the method 'BaseAuthManager.is_authorized_custom_view' abstract (#37915)

  • Replace "Role" by "Group" in AWS auth manager (#38078)

  • Avoid use of 'assert' outside of the tests (#37718)

  • Use 'AwsLogsHook' when fetching Glue job logs (#38010)

  • Implement 'filter_permitted_dag_ids' in AWS auth manager (#37666)

  • AWS auth manager CLI: persist the policy store description when doing updates (#37946)

  • Change f-string to formatting into the logging messages for Batch Executor (#37929)

8.19.0

Features

  • Implement 'filter_permitted_menu_items' in AWS auth manager (#37627)

  • Implement 'batch_is_authorized_*' APIs in AWS auth manager (#37430)

Bug Fixes

  • Fix init checks for aws 'eks' (#37674)

  • Fix init checks for aws gcs_to_s3 (#37662)

Misc

  • Use named loggers instead of root logger (#37801)

  • Avoid non-recommended usage of logging (#37792)

  • Unify 'aws_conn_id' type to always be 'str | None' (#37768)

  • Limit 'pandas' to '<2.2' (#37748)

  • Implement AIP-60 Dataset URI formats (#37005)

  • Bump min versions of openapi validators (#37691)

  • Update action names in AWS auth manager (#37572)

8.18.0

Features

  • ECS Executor - Add backoff on failed task retry (#37109)

  • SqlToS3Operator: feat/ add max_rows_per_file parameter (#37055)

  • Adding Amazon Neptune Hook and Operators (#37000)

  • Add retry configuration in 'EmrContainerOperator' (#37426)

  • Create CLI commands for AWS auth manager to create AWS Identity Center related resources (#37407)

  • Add extra operator links for EMR Serverless (#34225)

Bug Fixes

  • Fix 'log_query' to format SQL statement correctly in 'AthenaOperator' (#36962)

  • check sagemaker training job status before deferring 'SageMakerTrainingOperator' (#36685)

Misc

  • Merge all ECS executor configs following recursive python dict update (#37137)

  • Update default value for 'BatchSensor' (#37234)

  • remove info log from download_file (#37211)

  • S3ToRedshiftOperator templating aws_conn_id (#37195)

  • Updates to ECS Docs (#37125)

  • feat: Switch all class, functions, methods deprecations to decorators (#36876)

  • Replace usage of 'datetime.utcnow' and 'datetime.utcfromtimestamp' in providers (#37138)

  • add type annotations to Amazon provider "execute_coplete" methods (#36330)

8.17.0

Features

  • add deferrable mode to RedshiftDataOperator (#36586)

  • Adds support for capacity providers to ECS Executor (#36722)

  • Add use_regex argument for allowing 'S3KeySensor' to check s3 keys with regular expression (#36578)

  • Add deferrable mode to RedshiftClusterSensor (#36550)

  • AthenaSqlHook implementation (#36171)

  • Create CLI commands for AWS auth manager to create Amazon Verified Permissions related resources (#36799)

  • Implement 'is_authorized_dag' in AWS auth manager (#36619)

Bug Fixes

  • Fix stacklevel in warnings.warn into the providers (#36831)

  • EC2 'CreateInstance': terminate instances in on_kill (#36828)

  • Fallback to default value if '[aws] cloudwatch_task_handler_json_serializer' not set (#36851)

  • AWS auth manager: raise AirflowOptionalProviderfeature exception for AVP command (#36824)

  • check transform job status before deferring SageMakerTransformOperator (#36680)

  • check sagemaker processing job status before deferring (#36658)

  • check job_status before BatchOperator execute in deferrable mode (#36523)

  • Update the redshift hostname check to avoid possible bugs (#36703)

  • Refresh credentials in 'AwsEcsExecutor' (#36179)

Misc

  • Fix docstring for apply_wildcard parameter in 'S3ListOperator'. Changed the order of docstring for fix (#36679)

  • Use base aws classes in AWS DMS Operators/Sensors (#36772)

  • Use base aws classes in AWS Redshift Data API Operators (#36764)

  • Use base aws classes in Amazon EventBridge Operators (#36765)

  • Use base aws classes in Amazon QuickSight Operators/Sensors (#36776)

  • Use base aws classes in AWS Datasync Operators (#36766)

  • Use base aws classes in Amazon DynamoDB Sensors (#36770)

  • Use base aws classes in AWS CloudFormation Operators/Sensors (#36771)

  • Set min pandas dependency to 1.2.5 for all providers and airflow (#36698)

  • Bump min version of amazon-provider related dependencies (#36660)

8.16.0

Features

  • Add AWS Step Functions links (#36599)

  • Add OpenLineage support for Redshift SQL (#35794)

Bug Fixes

  • Fix assignment of template field in '__init__' in 'AwsToAwsBaseOperator' (#36604)

  • Fix assignment of template field in '__init__' in 'DataSyncOperator' (#36605)

  • Check redshift cluster state before deferring to triggerer (#36416)

Misc

  • Use base aws classes in Amazon SQS Operators/Sensors/Triggers (#36613)

  • Use base aws classes in Amazon SNS Operators (#36615)

  • Use base aws classes in AWS Step Functions Operators/Sensors/Triggers (#36468)

8.15.0

Features

  • Add Amazon Athena query results extra link (#36447)

Bug Fixes

  • fix(providers/amazon): remove event['message'] call in EmrContainerOperator.execute_complete|as the key message no longer exists (#36417)

  • handle tzinfo in S3Hook.is_keys_unchanged_async (#36363)

Misc

  • Use base aws classes in Amazon ECS Operators/Sensors/Triggers (#36393)

8.14.0

Features

  • Add 'jsonpath_ng.ext.parse' support for 'SqsSensor' (#36170)

  • Increase ConflictException retries to 4 total (#36337)

  • Increase width of execution_date input in trigger.html (#36278) (#36304)

  • Allow storage options to be passed (#35820)

Bug Fixes

  • Remove 'is_authorized_cluster_activity' from auth manager (#36175)

  • Follow BaseHook connection fields method signature in child classes (#36086)

Misc

  • Add code snippet formatting in docstrings via Ruff (#36262)

  • Remove remaining Airflow 2.6 backcompat code from Amazon Provider (#36324)

8.13.0

Note

This release of provider is only available for Airflow 2.6+ as explained in the Apache Airflow providers support policy.

Features

  • Support IAM authentication for Redshift serverless (#35897)

  • Implement 'is_authorized_variable' in AWS auth manager (#35804)

  • Enhance 'attribute_value' in 'DynamoDBValueSensor' to accept list (#35831)

Bug Fixes

  • Fix handling of single quotes in 'RedshiftToS3Operator' (#35986)

  • Fix a bug in get_iam_token for Redshift Serverless (#36001)

  • Fix reraise outside of try block in 'AthenaHook.get_output_location' (#36008)

  • Fix a bug with accessing hooks in EKS trigger (#35989)

  • Fix a bug in method name used in 'GlacierToGCSOperator' (#35978)

  • Fix EC2Hook get_instance for client_type api (#35960)

  • Avoid creating the hook in the EmrServerlessCancelJobsTrigger init (#35992)

  • Stop getting message from event after migrating 'EmrContainerTrigger' to 'AwsBaseWaiterTrigger' (#35892)

  • Fix for 'EksCreateClusterOperator' deferrable mode (#36079)

Misc

  • Bump minimum Airflow version in providers to Airflow 2.6.0 (#36017)

  • Update 'boto3' and 'botocore' versions notes (#36073)

  • Improve typing hints for only_client_type decorator (#35997)

  • Refactor some methods in EmrContainerHook (#35999)

  • Refactor get_output_location in AthenaHook (#35996)

  • Move RDS hook to a cached property in RDS trigger (#35990)

  • Replace default empty dict value by None in AzureBlobStorageToS3Operator (#35977)

  • Update 'set_context' signature to match superclass one and stop setting the instance attribute in CloudwatchTaskHandler (#35975)

  • Use S3 hook instead of AwsGenericHook in AWS S3 FS (#35973)

  • AWS auth manager: implement all 'is_authorized_*' methods (but 'is_authorized_dag') (#35928)

  • Remove setting a non-existing object param and use local var instead in S3Hook (#35950)

8.12.0

Features

  • Add 'EC2HibernateInstanceOperator' and 'EC2RebootInstanceOperator' (#35790)

  • Add OpenLineage support to 'S3FileTransformOperator' (#35819)

  • Add OpenLineage support to S3Operators - Copy, Delete and Create Object (#35796)

  • Added retry strategy parameter to Amazon AWS provider Batch Operator to allow dynamic Batch retry strategies (#35789)

  • Added name field to template_fields in EmrServerlessStartJobOperator (#35648)

  • openlineage, aws: Add OpenLineage support for AthenaOperator. (#35090)

  • Implement login and logout in AWS auth manager (#35488)

Bug Fixes

  • Fix Batch operator's retry_strategy (#35808)

  • Fix and reapply templates for provider documentation (#35686)

  • Make EksPodOperator exec config not rely on log level (#35771)

  • Fix 'configuration_overrides' parameter in 'EmrServerlessStartJobOperator' (#35787)

Misc

  • Updated docstring: 'check_key_async' is now in line with description of '_check_key_async' (#35799)

  • Check attr on parent not self re TaskContextLogger set_context (#35780)

  • Allow a wider range of watchtower versions (#35713)

  • Extend task context logging support for remote logging using AWS S3 (#32950)

  • Log failure reason for containers if a task fails for ECS Executor (#35496)

8.11.0

Breaking changes

Features

  • Add support for anonymous access to s3 buckets for objectstorage (#35273)

  • ECS Executor Health Check (#35412)

Bug Fixes

  • Fix AWS RDS hook's DB instance state check (#34773)

  • Fix parameter syntax in Amazon docstrings (#35349)

  • Improve error handling in AWS Links (#35518)

  • Update ECS executor healthcheck with a catchall except (#35512)

Misc

  • Move ECS Executor to its own file (#35418)

  • Clarify "task" in ECS Executor log messages (#35304)

  • Make optional 'output_location' attribute in 'AthenaOperator' (#35265)

8.10.0

Note

This release introduce experimental feature: AWS ECS Executor.

Features

  • Add AWS ECS Executor (#34381)

  • AIP-58: Add Airflow ObjectStore (AFS) (#34729)

  • Add Http to s3 operator (#35176)

Bug Fixes

  • Enable encryption in S3 download_files() hook. (#35037)

Misc

  • Use base aws classes in Amazon AppFlow Operators (#35082)

  • Use base aws classes in Amazon Athena Operators/Sensors/Triggers (#35133)

  • Use base aws classes in Amazon Lambda Operators/Sensors (#34890)

  • Use base aws classes in Amazon S3 Glacier Operators/Sensors (#35108)

  • Expose catalog parameter in 'AthenaOperator' (#35103)

8.9.0

Features

  • Add Glue 'DataBrew' operator (#34807)

  • Add 'check_interval' and 'max_attempts' as parameter of 'DynamoDBToS3Operator' (#34972)

Bug Fixes

  • Set 'EcsRunTaskOperator' default waiter duration to 70 days (#34928)

8.8.0

Note

This release of provider is only available for Airflow 2.5+ as explained in the Apache Airflow providers support policy.

Features

  • Implements 'AwsBaseOperator' and 'AwsBaseSensor' (#34784)

  • Extend hooks arguments into 'AwsBaseWaiterTrigger' (#34884)

  • Allow setup 'endpoint_url' per-service in AWS Connection (#34593)

  • Include AWS Lambda execution logs to task logs (#34692)

Bug Fixes

  • fix(providers/amazon): respect soft_fail argument when exception is raised (#34134)

  • do not fail operator if we cannot find logs (#34570)

  • Respect 'soft_fail' argument when running 'BatchSensors' (#34592)

  • Respect 'soft_fail' argument when running 'SqsSensor' (#34569)

  • Respect 'soft_fail' argument when running 'EcsBaseSensor' (#34596)

  • Respect 'soft_fail' argument when running 'SageMakerBaseSensor' (#34565)

  • Respect 'soft_fail' parameter in 'S3KeysUnchangedSensor' and 'S3KeySensor' (#34550)

  • Respect 'soft_fail' parameter in 'LambdaFunctionStateSensor' (#34551)

  • Respect 'soft_fail' parameter in 'AthenaSensor' (#34553)

  • Respect 'soft_fail' parameter in 'QuickSightSensor' (#34555)

  • Respect 'soft_fail' parameter in 'GlacierJobOperationSensor' (#34557)

  • Respect 'soft_fail' parameter in 'GlueJobSensor', 'GlueCatalogPartitionSensor' and 'GlueCrawlerSensor' (#34559)

  • Respect 'soft_fail' parameter in 'StepFunctionExecutionSensor' (#34560)

Misc

  • Refactor consolidate import from io in providers (#34378)

  • Upgrade watchtower to 3.0.1 (#25019) (#34747)

  • Bump min airflow version of providers (#34728)

  • Refactor: consolidate import time in providers (#34402)

  • Refactor usage of str() in providers (#34320)

  • Refactor import from collections (#34406)

  • Clarify Amazon Lambda invocation and sensing (#34653)

  • Refactor multiple equals to contains in providers (#34441)

  • Rename 'bucket' to 'gcs_bucket' in 'GCSToS3Operator' (#33031)

  • Remove duplicate 'asgiref' dependency in Amazon Provider (#34580)

  • Update 'BatchOperator' operator_extra_links property (#34506)

  • sagemaker.py spell error fix (#34445)

  • Use 'airflow.exceptions.AirflowException' in providers (#34511)

  • Use 'AirflowProviderDeprecationWarning' in the deprecated decorator in Amazon provider (#34488)

  • Use 'AirflowProviderDeprecationWarning' in EMR Operators (#34453)

  • Deprecate get_hook in DataSyncOperator and use hook instead (#34427)

  • Refactor shorter defaults in providers (#34347)

8.7.1

Bug Fixes

  • Bugfix: Fix RDS triggers parameters so that they handle serialization/deserialization (#34222)

  • Use a AwsBaseWaiterTrigger-based trigger in EmrAddStepsOperator deferred mode (#34216)

Misc

  • Refactor: Think positively in providers (#34279)

  • Remove unused parameter 'cluster_role_arn' from 'EksPodOperator''s docstring (#34300)

  • Correct parameter names in docstring for 'S3CreateObjectOperator' (#34263)

  • Refactor: Simplify comparisons (#34181)

  • Simplify  to bool(...) (#34258)

8.7.0

Warning

A bug introduced in version 8.0.0 caused all EcsRunTaskOperator tasks to detach from the ECS task and fail after 10 minutes, even if the ECS task was still running. In this version we are fixing it by returning the default waiter_max_attempts value to sys.maxsize.

Features

  • Add Amazon SQS Notifier (#33962)

  • Add Amazon SNS Notifier (#33828)

Bug Fixes

  • Increase 'waiter_max_attempts' default value in 'EcsRunTaskOperator' (#33712)

  • Fix AWS 'EmrStepSensor' ignoring the specified 'aws_conn_id' in deferred mode  (#33952)

  • Fix type annotation in AppflowHook (#33881)

  • Make Amazon Chime connection lazy loaded and consistent with docs (#34000)

  • respect "soft_fail" argument when running BatchSensor in deferrable mode (#33405)

Misc

  • Refactor: Consolidate import and usage of random (#34108)

  • Consolidate importing of os.path.* (#34060)

  • Refactor regex in providers (#33898)

  • Refactor: Simplify loop in aws/triggers/batch.py (#34052)

  • Combine similar if logics in providers (#33987)

  • Replace single quotes by double quotes in tests (#33864)

  • Remove useless string join from providers (#33968)

  • Make 'aws.session_factory' part of Amazon provider configuration documentation (#33960)

  • Refactor unneeded  jumps in providers (#33833)

  • Replace try - except pass by contextlib.suppress in providers (#33980)

  • Remove some useless try/except from providers code (#33967)

  • Refactor: Replace lambdas with comprehensions in providers (#33771)

  • Replace sequence concatenation by unpacking in Airflow providers (#33933)

  • Reorganize devel_only extra in airflow's setup.py (#33907)

  • Remove explicit str concat from Airflow providers package and tests (#33860)

  • Improve modules import in AWS provider by move some of them into a type-checking block (#33780)

  • Always use 'Literal' from 'typing_extensions' (#33794)

  • Use literal dict instead of calling dict() in providers (#33761)

  • remove unnecessary and rewrite it using list in providers (#33763)

8.6.0

Features

  • Added Amazon SageMaker Notebook hook and operators (#33219)

  • Add 'deferrable' option to 'LambdaCreateFunctionOperator' (#33327)

  • Add Deferrable mode to GlueCatalogPartitionSensor (#33239)

  • Add 'sql_hook_params' parameter to 'S3ToSqlOperator' (#33427)

  • Add 'sql_hook_params' parameter to 'SqlToS3Operator' (#33425)

  • Add parameter to pass role ARN to 'GlueJobOperator ' (#33408)

  • Add new RdsStartExportTaskOperator parameters (#33251)

Bug Fixes

  • Fix bug in task logs when using AWS CloudWatch. Do not set 'start_time' (#33673)

  • Fix AWS Batch waiter failure state (#33656)

  • Fix AWS appflow waiter (#33613)

  • Fix striping tags when falling back to update in 'SageMakerEndpointOperator' (#33487)

Misc

  • Simplify conditions on len() in providers/amazon (#33565)

  • Remove non-public interface usage in EcsRunTaskOperator (#29447)

  • Upgrade botocore/aiobotocore minimum requirements (#33649)

  • Consolidate import and usage of itertools (#33479)

  • Consolidate import and usage of pandas (#33480)

  • always push ECS task ARN to xcom in 'EcsRunTaskOperator' (#33703)

  • Use 'boto3.client' linked to resource meta instead of create new one for waiters (#33552)

8.5.1

Bug Fixes

  • Get failure information on EMR job failure (#32151)

  • Fix get_log_events() in AWS logs hook (#33290)

Misc

  • Improve fetching logs from AWS (#33231)

  • Refactor: Simplify code in providers/amazon (#33222)

  • Implement EventBridge enable and disable rule operators (#33226)

  • Update mypy-boto3-appflow dependency (#32930)

  • use 'cached_property' from functools in 'RdsBaseOperator' (#33133)

  • Use set for 'template_fields' of 'EcsDeregisterTaskDefinitionOperator' (#33129)

8.5.0

Features

  • openlineage, sagemaker: add OpenLineage support for SageMaker's Processing, Transform and Training operators (#31816)

  • Add Amazon EventBridge PutRule hook and operator (#32869)

  • Add GCS Requester Pays bucket support to GCSToS3Operator (#32760)

Bug Fixes

  • Check google provider version in GCSToS3Operator before provide match_glob param (#32925)

  • Set longer default 'waiter_max_attempts' for deferred BatchJobOperator (#33045)

Misc

  • openlineage, sagemaker: add missing OpenLineage type signature (#33114)

  • Add S3Bucket for mypy (#33028)

8.4.0

Features

  • Add endpoint_url in test_connection (#32664)

  • Add support for querying Redshift Serverless clusters (#32785)

  • Add Deferrable mode to StepFunctionStartExecutionOperator (#32563)

  • Add Deferrable mode for EMR Serverless Start Job Operator (#32534)

  • Add Eventbridge PutEvents operator and hook (#32498)

  • add deferrable mode to rds start & stop DB (#32437)

  • EMR serverless Create/Start/Stop/Delete Application deferrable mode (#32513)

  • Make Start and Stop SageMaker Pipelines operators deferrable (#32683)

  • Deferrable mode for EKS Create/Delete Operator (#32355)

Bug Fixes

  • FIX AWS deferrable operators by using AioCredentials when using 'assume_role' (#32733)

  • [bugfix] fix AWS triggers where deserialization would crash if region was not specified (#32729)

  • Fix bug in prune_dict where empty dict and list would be removed even in strict mode (#32573)

  • Fix S3ToRedshiftOperator does not support default values on UPSERT (#32558)

  • Do not return success from AWS ECS trigger after max_attempts (#32589)

Misc

  • Move all k8S classes to cncf.kubernetes provider (#32767)

  • Limit Appflow mypy to 1.28.12 as it introduces strange typing issue (#32901)

  • Further limit mypy-boto3-appflow as the fix is not in sight (#32927)

8.3.1

Bug Fixes

  • Append region info to S3ToRedshitOperator if present (#32328)

8.3.0

Features

  • Add 'ChimeWebhookHook' (#31939)

  • Add 'ChimeNotifier' (#32222)

  • Add deferrable mode to S3KeysUnchangedSensor (#31940)

  • Add deferrable mode to 'RdsCreateDbInstanceOperator' and 'RdsDeleteDbInstanceOperator' (#32171)

  • Add deferrable mode for 'AthenaOperator' (#32186)

  • Add a deferrable mode to 'BatchCreateComputeEnvironmentOperator' (#32036)

  • Add deferrable mode in EMR operator and sensor (#32029)

  • add async wait method to the "with logging" aws utils (#32055)

  • Add custom waiters to EMR Serverless  (#30463)

  • Add an option to 'GlueJobOperator' to stop the job run when the TI is killed (#32155)

  • deferrable mode for 'SageMakerTuningOperator' and 'SageMakerEndpointOperator' (#32112)

  • EKS Create/Delete Nodegroup Deferrable mode (#32165)

  • Deferrable mode for ECS operators (#31881)

  • feature: AWS - GlueJobOperator - job_poll_interval (#32147)

  • Added 'AzureBlobStorageToS3Operator' transfer operator (#32270)

  • Introduce a base class for aws triggers (#32274)

Bug Fixes

  • bugfix: break down run+wait method in ECS operator (#32104)

  • Handle 'UnboundLocalError' while parsing invalid 's3_url' (#32120)

  • Fix 'LambdaInvokeFunctionOperator' payload parameter type (#32259)

  • Bug fix GCSToS3Operator: avoid 'ValueError' when 'replace=False' with files already in S3 (#32322)

Misc

  • Deprecate 'delimiter' param and source object's wildcards in GCS, introduce 'match_glob' param. (#31261)

  • aws waiter util: log status info with error level on waiter error (#32247)

  • rewrite method used in ecs to fetch less logs (#31786)

  • Refactor Eks Create Cluster Operator code (#31960)

  • Use a waiter in 'AthenaHook' (#31942)

  • Add 'on_finish_action' to 'KubernetesPodOperator' (#30718)

  • Add default_deferrable config (#31712)

  • deprecate arbitrary parameter passing to RDS hook (#32352)

  • quick fix on RDS operator to prevent parameter collision (#32436)

  • Remove ability to specify arbitrary hook params in AWS RDS trigger (#32386)

  • Only update crawler tags if present in config dict (#32331)

8.2.0

Note

This release dropped support for Python 3.7

Features

  • Add deferrable option to EmrTerminateJobFlowOperator (#31646)

  • Add Deferrable option to EmrCreateJobFlowOperator (#31641)

  • Add deferrable mode to 'BatchSensor'  (#30279)

  • Add deferrable mode for S3KeySensor (#31018)

  • Add Deferrable mode to Emr Add Steps operator (#30928)

  • Add deferrable mode in Redshift delete cluster (#30244)

  • Add deferrable mode to AWS glue operators (Job & Crawl) (#30948)

  • Add deferrable param in BatchOperator (#30865)

  • Add Deferrable Mode to RedshiftCreateClusterSnapshotOperator (#30856)

  • Deferrable mode for EksCreateFargateProfileOperator and EksDeleteFargateProfileOperator (#31657)

  • allow anonymous AWS access (#31659)

  • Support of wildcard in S3ListOperator and S3ToGCSOperator (#31640)

  • Add 'deferrable' param in 'EmrContainerSensor' (#30945)

  • Add realtime container execution logs for BatchOperator (#31837)

Bug Fixes

  • Various fixes on ECS run task operator (#31838)

  • fix return values on glue operators deferrable mode (#31694)

  • Add back missing AsyncIterator import (#31710)

  • Use a continuation token to get logs in ecs (#31824)

  • Fetch status in while loop so as to not exit too early (#31804)

  • [AWS hook] use provided client to get the official waiter on fallback (#31748)

  • handle missing LogUri in emr 'describe_cluster' API response (#31482)

Misc

  • Add Python 3.11 support (#27264)

  • Added config template field to EmrServerlessStartJobOperator (#31746)

  • Add null check for host in Amazon Redshift connection (#31567)

  • add workgroup to templated fields (#31574)

  • Add docstring and signature for _read_remote_logs (#31623)

  • Deprecate 'wait_for_completion' from 'EcsRegisterTaskDefinitionOperator' and 'EcsDeregisterTaskDefinitionOperator' (#31884)

  • Remove Python 3.7 support (#30963)

  • Change Deferrable implementation for RedshiftResumeClusterOperator to follow standard (#30864)

  • Change Deferrable implementation for RedshiftPauseClusterOperator to follow standard (#30853)

8.1.0

Note

This release of provider is only available for Airflow 2.4+ as explained in the Apache Airflow providers support policy.

Features

  • DynamoDBToS3Operator - Add a feature to export the table to a point in time. (#31142)

  • Add deferrable param in SageMakerTransformOperator (#31063)

  • Add deferrable param in SageMakerTrainingOperator (#31042)

  • Add deferrable param in SageMakerProcessingOperator (#31062)

  • Add IAM authentication to Amazon Redshift Connection by AWS Connection (#28187)

  • 'StepFunctionStartExecutionOperator': get logs in case of failure (#31072)

  • Add on_kill to EMR Serverless Job Operator (#31169)

  • Add Deferrable Mode for EC2StateSensor (#31130)

Bug Fixes

  • bigfix: EMRHook  Loop through paginated response to check for cluster id (#29732)

Misc

  • Bump minimum Airflow version in providers (#30917)

  • Add template field to S3ToRedshiftOperator (#30781)

  • Add extras links to some more EMR Operators and Sensors (#31032)

  • Add retries to S3 delete_bucket (#31192)

  • Add tags param in RedshiftCreateClusterSnapshotOperator (#31006)

  • improve/fix glue job logs printing (#30886)

  • Import aiobotocore only if deferrable is true (#31094)

  • Update return types of 'get_key' methods on 'S3Hook' (#30923)

  • Support 'shareIdentifier' in BatchOperator (#30829)

  • BaseAWS - Override client when resource_type is user to get custom waiters (#30897)

  • Add future-compatible mongo Hook typing (#31289)

  • Handle temporary credentials when resource_type is used to get custom waiters (#31333)

8.0.0

Breaking changes

Warning

In this version of the provider, deprecated GCS hook’s parameter delegate_to is removed from the following operators: GCSToS3Operator, GlacierToGCSOperator and GoogleApiToS3Operator. Impersonation can be achieved instead by utilizing the impersonation_chain param.

Removed deprecated parameter google_cloud_storage_conn_id from GCSToS3Operator, gcp_conn_id should be used instead.

Removed deprecated parameter max_tries from the Athena & EMR hook & operators in favor of max_polling_attempts.

Removed deprecated method waiter from emr hook in favor of the more generic airflow.providers.amazon.aws.utils.waiter.waiter

Removed deprecated unused parameter cluster_identifier from Redshift Cluster’s hook method get_cluster_snapshot_status

Removed deprecated method find_processing_job_by_name from Sagemaker hook, use count_processing_jobs_by_name instead.

Removed deprecated module airflow.providers.amazon.aws.operators.aws_lambda in favor of airflow.providers.amazon.aws.operators.lambda_function

Removed EcsOperator in favor of EcsRunTaskOperator. EcsTaskLogFetcher and EcsProtocol should be imported from the hook.

Removed AwsLambdaInvokeFunctionOperator in favor of LambdaInvokeFunctionOperator.

Removed deprecated param await_result from RedshiftDataOperator in favor of wait_for_completion. Some methods from this operator should be imported from the hook instead.

Removed deprecated RedshiftSQLOperator in favor of the generic SQLExecuteQueryOperator. The parameter that was passed as redshift_conn_id needs to be changed to conn_id, and the behavior should stay the same.

Removed deprecated method get_conn_uri from secrets manager in favor of get_conn_value Also removed deprecated method get_conn_uri from systems manager. deserialize_connection(...).get_uri() should be used instead.

Removed deprecated and unused param s3_conn_id from ImapAttachmentToS3Operator, MongoToS3Operator and S3ToSFTPOperator.

  • remove delegate_to from GCP operators and hooks (#30748)

  • Remove deprecated code from Amazon provider (#30755)

Features

  • add a stop operator to emr serverless (#30720)

  • SqlToS3Operator - Add feature to partition SQL table (#30460)

  • New AWS sensor DynamoDBValueSensor (#28338)

  • Add a "force" option to emr serverless stop/delete operator (#30757)

  • Add support for deferrable operators in AMPP (#30032)

Bug Fixes

  • Fixed logging issue (#30703)

  • DynamoDBHook - waiter_path() to consider 'resource_type' or 'client_type' (#30595)

  • Add ability to override waiter delay in EcsRunTaskOperator (#30586)

  • Add support in AWS Batch Operator for multinode jobs (#29522)

  • AWS logs. Exit fast when 3 consecutive responses are returned from AWS Cloudwatch logs (#30756)

  • Fix async conn for none aws_session_token (#30868)

Misc

  • Remove @poke_mode_only from EmrStepSensor (#30774)

  • Organize Amazon providers docs index (#30541)

  • Remove duplicate param docstring in EksPodOperator (#30634)

  • Update AWS EMR Cluster Link to use the new dashboard (#30844)

  • Restore aiobotocore as optional dependency of amazon provider (#30874)

7.4.1

Bug Fixes

  • Fix 'RedshiftResumeClusterOperator' deferrable implementation (#30370)

Misc

  • Add more info to quicksight error messages (#30466)

  • add template field for s3 bucket (#30472)

  • Add s3_bucket to template fields in SFTP to S3 operator (#30444)

7.4.0

Features

  • Add deferrable mode to 'RedshiftResumeClusterOperator' (#30090)

  • Add 'AwsToAwsBaseOperator' (#30044)

  • Add deferrable mode in RedshiftPauseClusterOperator (#28850)

  • Add support of a different AWS connection for DynamoDB (#29452)

  • Add 'EC2CreateInstanceOperator', 'EC2TerminateInstanceOperator' (#29548)

  • Make update config behavior optional in GlueJobOperator (#30162)

  • custom waiters with dynamic values, applied to appflow (#29911)

  • Support deleting the local log files when using remote logging (#29772)

Misc

  • Move string enum class to utils module + add test (#29906)

  • Align cncf provider file names with AIP-21 (#29905)

  • rewrite polling code for appflow hook (#28869)

7.3.0

Features

  • add num rows affected to Redshift Data API hook (#29797)

  • Add 'wait_for_completion' param in 'RedshiftCreateClusterOperator' (#29657)

  • Add Amazon Redshift-data to S3<>RS Transfer Operators (#27947)

  • Allow to specify which connection, variable or config are being looked up in the backend using *_lookup_pattern parameters (#29580)

  • Implement file credentials provider for AWS hook AssumeRoleWithWebIdentity (#29623)

  • Implement custom boto waiters for some EMR operators (#29822)

Bug Fixes

  • fix code checking job names in sagemaker (#29245)

  • Avoid emitting fallback message for S3TaskHandler if streaming logs (#29708)

  • Use waiters in ECS Operators instead of inner sensors (#29761)

Misc

  • Impovements for RedshiftDataOperator: better error reporting and an ability to return SQL results (#29434)

  • Standardize AWS lambda naming (#29749)

  • AWS Glue job hook: Make s3_bucket parameter optional (#29659)

  • 'RedshiftDataOperator' replace 'await_result' with 'wait_for_completion' (#29633)

7.2.1

Bug Fixes

  • Explicitly handle exceptions raised by config parsing in AWS provider (#29587)

Misc

  • Fix docstring for EcsRunTaskOperator region_name -> region (#29562)

7.2.0

Features

  • Add option to wait for completion on the EmrCreateJobFlowOperator (#28827)

  • Add transfer operator S3 to (generic) SQL (#29085)

  • add retries to stop_pipeline on conflict (#29077)

  • Add log for AWS Glue Job Console URL (#28925)

  • Enable individual trigger logging (#27758)

Bug Fixes

  • fix: 'num_of_dpus' typehints- GlueJobHook/Operator (#29176)

  • Fix typo in DataSyncHook boto3 methods for create location in NFS and EFS (#28948)

  • Decrypt SecureString value obtained by SsmHook (#29142)

Misc

  • log the observed status in redshift sensor (#29274)

  • Use thin/passthrough hook instead of one-liner hook method (#29252)

  • Move imports in AWS SqlToS3Operator transfer to callable function (#29045)

  • introduce base class for EKS sensors (#29053)

  • introduce a method to convert dictionaries to boto-style key-value lists (#28816)

  • Update provide_bucket_name() decorator to handle new conn_type (#28706)

  • uniformize getting hook through cached property in aws sensors (#29001)

  • Use boto3 intersphinx inventory in documentation/docstrings. (#28945)

7.1.0

Features

  • Add ''configuration_overrides'' to templated fields (#28920)

  • Add a new SSM hook and use it in the System Test context builder (#28755)

  • Add waiter config params to emr.add_job_flow_steps (#28464)

  • Add AWS Sagemaker Auto ML operator and sensor (#28472)

  • new operator to create a sagemaker experiment (#28837)

Bug Fixes

  • Avoid circular import from S3HookUriParseFailure (#28908)

  • Use compat for cached_property in AWS Batch modules (#28835)

  • Apply "unify bucket and key" before "provide bucket" (#28710)

Misc

  • Update S3ToRedshiftOperator docs to inform users about multiple key functionality (#28705)

  • Refactor waiter function and improve unit tests (#28753)

  • Better exception raised in case of numpy missing (#28722)

  • Don't call get_connection from provide_bucket_name (#28716)

7.0.0

Breaking changes

JSON secrets in the ‘SecretsManagerBackend’ are never interpreted as urlencoded. In 5.x and 6.x, the code would infer whether the JSON secret values were urlencoded based on context clues; now the unaltered values are always used to construct Connection objects.

Pandas is now an optional dependency of the provider. The SqlToS3Operator and HiveToDynamoDBOperator require Pandas to be installed (you can install it automatically by adding [pandas] extra when installing the provider.

  • Make pandas dependency optional for Amazon Provider (#28505)

Features

  • Deprecate 'full_url_mode' for SecretsManagerBackend; whether a secret is a JSON or URL is inferred (#27920)

  • Add execution role parameter to AddStepsOperator (#28484)

  • Add AWS SageMaker operator to register a model's version (#28024)

  • Add link for EMR Steps Sensor logs (#28180)

  • Add Amazon Elastic Container Registry (ECR) Hook (#28279)

  • Add EMR Notebook operators (#28312)

  • Create 'LambdaCreateFunctionOperator' and sensor (#28241)

  • Better support for Boto Waiters (#28236)

  • Amazon Provider Package user agent (#27823)

  • Allow waiter to be configured via EmrServerless Operators (#27784)

  • Add operators + sensor for aws sagemaker pipelines (#27786)

  • Update RdsHook docstrings to match correct argument names (#28108)

  • add some important log in aws athena hook (#27917)

  • Lambda hook: make runtime and handler optional (#27778)

Bug Fixes

  • Fix EmrAddStepsOperature wait_for_completion parameter is not working (#28052)

  • Correctly template Glue Jobs 'create_job_kwargs' arg (#28403)

  • Fix template rendered bucket_key in S3KeySensor (#28340)

  • Fix Type Error while using DynamoDBToS3Operator (#28158)

  • AWSGlueJobHook updates job configuration if it exists (#27893)

  • Fix GlueCrawlerOperature failure when using tags (#28005)

Misc

  • Fix S3KeySensor documentation (#28297)

  • Improve docstrings for 'AwsLambdaInvokeFunctionOperator' (#28233)

  • Remove outdated compat imports/code from providers (#28507)

  • add description of breaking changes (#28582)

  • [misc] Get rid of 'pass' statement in conditions (#27775)

  • [misc] Replace XOR '^' conditions by 'exactly_one' helper in providers (#27858)

6.2.0

Features

  • Use Boto waiters instead of customer _await_status method for RDS Operators (#27410)

  • Handle transient state errors in 'RedshiftResumeClusterOperator' and 'RedshiftPauseClusterOperator' (#27276)

  • Add retry option in RedshiftDeleteClusterOperator to retry when an operation is running in the cluster (#27820)

Bug Fixes

  • Correct job name matching in SagemakerProcessingOperator (#27634)

  • Bump common.sql provider to 1.3.1 (#27888)

6.1.0

Note

This release of provider is only available for Airflow 2.3+ as explained in the Apache Airflow providers support policy.

Misc

  • Move min airflow version to 2.3.0 for all providers (#27196)

  • Replace urlparse with urlsplit (#27389)

Features

  • Add info about JSON Connection format for AWS SSM Parameter Store Secrets Backend (#27134)

  • Add default name to EMR Serverless jobs (#27458)

  • Adding 'preserve_file_name' param to 'S3Hook.download_file' method (#26886)

  • Add GlacierUploadArchiveOperator (#26652)

  • Add RdsStopDbOperator and RdsStartDbOperator (#27076)

  • 'GoogleApiToS3Operator' : add 'gcp_conn_id' to template fields (#27017)

  • Add SQLExecuteQueryOperator (#25717)

  • Add information about Amazon Elastic MapReduce Connection (#26687)

  • Add BatchOperator template fields (#26805)

  • Improve testing AWS Connection response (#26953)

Bug Fixes

  • SagemakerProcessingOperator stopped honoring 'existing_jobs_found' (#27456)

  • CloudWatch task handler doesn't fall back to local logs when Amazon CloudWatch logs aren't found (#27564)

  • Fix backwards compatibility for RedshiftSQLOperator (#27602)

  • Fix typo in redshift sql hook get_ui_field_behaviour (#27533)

  • Fix example_emr_serverless system test (#27149)

  • Fix param in docstring RedshiftSQLHook get_table_primary_key method (#27330)

  • Adds s3_key_prefix to template fields (#27207)

  • Fix assume role if user explicit set credentials (#26946)

  • Fix failure state in waiter call for EmrServerlessStartJobOperator. (#26853)

  • Fix a bunch of deprecation warnings AWS tests (#26857)

  • Fix null strings bug in SqlToS3Operator in non parquet formats (#26676)

  • Sagemaker hook: remove extra call at the end when waiting for completion (#27551)

  • ECS Buglette (#26921)

  • Avoid circular imports in AWS Secrets Backends if obtain secrets from config (#26784)

6.0.0

Breaking changes

Warning

In this version of provider Amazon S3 Connection (conn_type="s3") removed due to the fact that it was always an alias to AWS connection conn_type="aws" In practice the only impact is you won’t be able to test the connection in the web UI / API. In order to restore ability to test connection you need to change connection type from Amazon S3 (conn_type="s3") to Amazon Web Services (conn_type="aws") manually.

  • Remove Amazon S3 Connection Type (#25980)

Features

  • Add RdsDbSensor to amazon provider package (#26003)

  • Set template_fields on RDS operators (#26005)

  • Auto tail file logs in Web UI (#26169)

Bug Fixes

  • Fix SageMakerEndpointConfigOperator's return value (#26541)

  • EMR Serverless Fix for Jobs marked as success even on failure (#26218)

  • Fix AWS Connection warn condition for invalid 'profile_name' argument (#26464)

  • Athena and EMR operator max_retries mix-up fix (#25971)

  • Fixes SageMaker operator return values (#23628)

  • Remove redundant catch exception in Amazon Log Task Handlers (#26442)

Misc

  • Remove duplicated connection-type within the provider (#26628)

5.1.0

Features

  • Additional mask aws credentials (#26014)

  • Add RedshiftDeleteClusterSnapshotOperator (#25975)

  • Add redshift create cluster snapshot operator (#25857)

  • Add common-sql lower bound for common-sql (#25789)

  • Allow AWS Secrets Backends use AWS Connection capabilities (#25628)

  • Implement 'EmrEksCreateClusterOperator' (#25816)

  • Improve error handling/messaging around bucket exist check (#25805)

Bug Fixes

  • Fix display aws connection info (#26025)

  • Fix 'EcsBaseOperator' and 'EcsBaseSensor' arguments (#25989)

  • Fix RDS system test (#25839)

  • Avoid circular import problems when instantiating AWS SM backend (#25810)

  • fix bug construction of Connection object in version 5.0.0rc3 (#25716)

5.0.0

Breaking changes

  • Avoid requirement that AWS Secret Manager JSON values be urlencoded. (#25432)

  • Remove deprecated modules (#25543)

  • Resolve Amazon Hook's 'region_name' and 'config' in wrapper (#25336)

  • Resolve and validate AWS Connection parameters in wrapper (#25256)

  • Standardize AwsLambda (#25100)

  • Refactor monolithic ECS Operator into Operators, Sensors, and a Hook (#25413)

  • Remove deprecated modules from Amazon provider package (#25609)

Features

  • Add EMR Serverless Operators and Hooks (#25324)

  • Hide unused fields for Amazon Web Services connection (#25416)

  • Enable Auto-incrementing Transform job name in SageMakerTransformOperator (#25263)

  • Unify DbApiHook.run() method with the methods which override it (#23971)

  • SQSPublishOperator should allow sending messages to a FIFO Queue (#25171)

  • Glue Job Driver logging (#25142)

  • Bump typing-extensions and mypy for ParamSpec (#25088)

  • Enable multiple query execution in RedshiftDataOperator (#25619)

Bug Fixes

  • Fix S3Hook transfer config arguments validation (#25544)

  • Fix BatchOperator links on wait_for_completion = True (#25228)

  • Makes changes to SqlToS3Operator method _fix_int_dtypes (#25083)

  • refactor: Deprecate parameter 'host' as an extra attribute for the connection. Depreciation is happening in favor of 'endpoint_url' in extra. (#25494)

  • Get boto3.session.Session by appropriate method (#25569)

4.1.0

Features

  • Add test_connection method to AWS hook (#24662)

  • Add AWS operators to create and delete RDS Database (#24099)

  • Add batch option to 'SqsSensor' (#24554)

  • Add AWS Batch & AWS CloudWatch Extra Links (#24406)

  • Refactoring EmrClusterLink and add for other AWS EMR Operators (#24294)

  • Move all SQL classes to common-sql provider (#24836)

  • Amazon appflow (#24057)

  • Make extra_args in S3Hook immutable between calls (#24527)

Bug Fixes

  • Refactor and fix AWS secret manager invalid exception (#24898)

  • fix: RedshiftDataHook and RdsHook not use cached connection (#24387)

  • Fix links to sources for examples (#24386)

  • Fix S3KeySensor. See #24321 (#24378)

  • Fix: 'emr_conn_id' should be optional in 'EmrCreateJobFlowOperator' (#24306)

  • Update providers to use functools compat for ''cached_property'' (#24582)

4.0.0

Breaking changes

Note

This release of provider is only available for Airflow 2.2+ as explained in the Apache Airflow providers support policy.

Features

  • Add partition related methods to GlueCatalogHook: (#23857)

  • Add support for associating  custom tags to job runs submitted via EmrContainerOperator (#23769)

  • Add number of node params only for single-node cluster in RedshiftCreateClusterOperator (#23839)

Bug Fixes

  • fix: StepFunctionHook ignores explicit set 'region_name' (#23976)

  • Fix Amazon EKS example DAG raises warning during Imports (#23849)

  • Move string arg evals to 'execute()' in 'EksCreateClusterOperator' (#23877)

  • fix: patches #24215. Won't raise KeyError when 'create_job_kwargs' contains the 'Command' key. (#24308)

Misc

  • Light Refactor and Clean-up AWS Provider (#23907)

  • Update sample dag and doc for RDS (#23651)

  • Reformat the whole AWS documentation (#23810)

  • Replace "absolute()" with "resolve()" in pathlib objects (#23675)

  • Apply per-run log templates to log handlers (#24153)

  • Refactor GlueJobHook get_or_create_glue_job method. (#24215)

  • Update the DMS Sample DAG and Docs (#23681)

  • Update doc and sample dag for Quicksight (#23653)

  • Update doc and sample dag for EMR Containers (#24087)

  • Add AWS project structure tests (re: AIP-47) (#23630)

  • Add doc and sample dag for GCSToS3Operator (#23730)

  • Remove old Athena Sample DAG (#24170)

  • Clean up f-strings in logging calls (#23597)

3.4.0

Features

  • Add Quicksight create ingestion Hook and Operator (#21863)

  • Add default 'aws_conn_id' to SageMaker Operators #21808 (#23515)

  • Add RedshiftCreateClusterOperator

  • Add 'S3CreateObjectOperator' (#22758)

  • Add 'RedshiftDeleteClusterOperator' support (#23563)

Bug Fixes

  • Fix conn close error on retrieving log events (#23470)

  • Fix LocalFilesystemToS3Operator and S3CreateObjectOperator to support full s3:// style keys (#23180)

  • Fix attempting to reattach in 'ECSOperator' (#23370)

  • Fix doc build failure on main (#23240)

  • Fix "Chain not supported for different length Iterable"

  • 'S3Hook': fix 'load_bytes' docstring (#23182)

  • Deprecate 'S3PrefixSensor' and 'S3KeySizeSensor' in favor of 'S3KeySensor' (#22737)

  • Allow back script_location in Glue to be None (#23357)

Misc

  • Add doc and example dag for Amazon SQS Operators (#23312)

  • Add doc and sample dag for S3CopyObjectOperator and S3DeleteObjectsOperator (#22959)

  • Add sample dag and doc for S3KeysUnchangedSensor

  • Add doc and sample dag for S3FileTransformOperator

  • Add doc and example dag for AWS Step Functions Operators

  • Add sample dag and doc for S3ListOperator (#23449)

  • Add doc and sample dag for EC2 (#23547)

  • Add sample dag and doc for S3ListPrefixesOperator (#23448)

  • Amazon Sagemaker Sample DAG and docs update (#23256)

  • Update the Athena Sample DAG and Docs (#23428)

  • Update sample dag and doc for Datasync (#23511)

3.3.0

Features

  • Pass custom headers through in SES email backend (#22667)

  • Update secrets backends to use get_conn_value instead of get_conn_uri (#22348)

Misc

  • Add doc and sample dag for SqlToS3Operator (#22603)

  • Adds HiveToDynamoDB Transfer Sample DAG and Docs (#22517)

  • Add doc and sample dag for MongoToS3Operator (#22575)

  • Add doc for LocalFilesystemToS3Operator (#22574)

  • Add doc and example dag for AWS CloudFormation Operators (#22533)

  • Add doc and sample dag for S3ToFTPOperator and FTPToS3Operator (#22534)

  • GoogleApiToS3Operator: update sample dag and doc (#22507)

  • SalesforceToS3Operator: update sample dag and doc (#22489)

3.2.0

Features

  • Add arguments to filter list: start_after_key, from_datetime, to_datetime, object_filter callable (#22231)

Bug Fixes

  • Fix mistakenly added install_requires for all providers (#22382)

  • ImapAttachmentToS3Operator: fix it, update sample dag and update doc (#22351)

3.1.1

Features

  • Added AWS RDS sensors (#21231)

  • Added AWS RDS operators (#20907)

  • Add RedshiftDataHook (#19137)

  • Feature: Add invoke lambda function operator (#21686)

  • Add JSON output on SqlToS3Operator (#21779)

  • Add SageMakerDeleteModelOperator (#21673)

  • Added Hook for Amazon RDS. Added 'boto3_stub' library for autocomplete. (#20642)

  • Added SNS example DAG and rst (#21475)

  • retry on very specific eni provision failures (#22002)

  • Configurable AWS Session Factory (#21778)

  • S3KeySensor to use S3Hook url parser (#21500)

  • Get log events after sleep to get all logs (#21574)

  • Use temporary file in GCSToS3Operator (#21295)

Bug Fixes

  • AWS RDS integration fixes (#22125)

  • Fix the Type Hints in ''RedshiftSQLOperator'' (#21885)

  • Bug Fix - S3DeleteObjectsOperator will try and delete all keys (#21458)

  • Fix Amazon SES emailer signature (#21681)

  • Fix EcsOperatorError, so it can be loaded from a picklefile (#21441)

  • Fix RedshiftDataOperator and update doc (#22157)

  • Bugfix for retrying on provision failuers(#22137)

  • If uploading task logs to S3 fails, retry once (#21981)

  • Bug-fix GCSToS3Operator (#22071)

  • fixes query status polling logic (#21423)

  • use different logger to avoid duplicate log entry (#22256)

Misc

  • Add Trove classifiers in PyPI (Framework :: Apache Airflow :: Provider)

  • Support for Python 3.10

  • [doc] Improve s3 operator example by adding task upload_keys (#21422)

  • Rename 'S3' hook name to 'Amazon S3' (#21988)

  • Add template fields to DynamoDBToS3Operator (#22080)

3.0.0

Breaking Changes

The CloudFormationCreateStackOperator and CloudFormationDeleteStackOperator used params as one of the constructor arguments, however this name clashes with params argument params field which is processed differently in Airflow 2.2. The params parameter has been renamed to cloudformation_parameters to make it non-ambiguous.

Any usage of CloudFormationCreateStackOperator and CloudFormationDeleteStackOperator where params were passed, should be changed to use cloudformation_parameters instead.

  • Rename params to cloudformation_parameter in CloudFormation operators. (#20989)

Features

  • [SQSSensor] Add opt-in to disable auto-delete messages (#21159)

  • Create a generic operator SqlToS3Operator and deprecate the MySqlToS3Operator.  (#20807)

  • Move some base_aws logging from info to debug level (#20858)

  • AWS: Adds support for optional kwargs in the EKS Operators (#20819)

  • AwsAthenaOperator: do not generate ''client_request_token'' if not provided (#20854)

  • Add more SQL template fields renderers (#21237)

  • Add conditional 'template_fields_renderers' check for new SQL lexers (#21403)

Bug fixes

  • fix: cloudwatch logs fetch logic (#20814)

  • Fix all Amazon Provider MyPy errors (#20935)

  • Bug fix in AWS glue operator related to num_of_dpus #19787 (#21353)

  • Fix to check if values are integer or float and convert accordingly. (#21277)

Misc

  • Alleviate import warning for 'EmrClusterLink' in deprecated AWS module (#21195)

  • Rename amazon EMR hook name (#20767)

  • Standardize AWS SQS classes names (#20732)

  • Standardize AWS Batch naming (#20369)

  • Standardize AWS Redshift naming (#20374)

  • Standardize DynamoDB naming (#20360)

  • Standardize AWS ECS naming (#20332)

  • Refactor operator links to not create ad hoc TaskInstances (#21285)

  • eks_hook log level fatal -> FATAL  (#21427)

2.6.0

Features

  • Add aws_conn_id to DynamoDBToS3Operator (#20363)

  • Add RedshiftResumeClusterOperator and RedshiftPauseClusterOperator (#19665)

  • Added function in AWSAthenaHook to get s3 output query results file URI  (#20124)

  • Add sensor for AWS Batch (#19850) (#19885)

  • Add state details to EMR container failure reason (#19579)

  • Add support to replace S3 file on MySqlToS3Operator (#20506)

Bug Fixes

  • Fix backwards compatibility issue in AWS provider's _get_credentials (#20463)

  • Fix deprecation messages after splitting redshift modules (#20366)

  • ECSOperator: fix KeyError on missing exitCode (#20264)

  • Bug fix in AWS glue operator when specifying the WorkerType & NumberOfWorkers (#19787)

Misc

  • Organize Sagemaker classes in Amazon provider (#20370)

  • move emr_container hook (#20375)

  • Standardize AWS Athena naming (#20305)

  • Standardize AWS EKS naming (#20354)

  • Standardize AWS Glue naming (#20372)

  • Standardize Amazon SES naming (#20367)

  • Standardize AWS CloudFormation naming (#20357)

  • Standardize AWS Lambda naming (#20365)

  • Standardize AWS Kinesis/Firehose naming (#20362)

  • Standardize Amazon SNS naming (#20368)

  • Split redshift sql and cluster objects (#20276)

  • Organize EMR classes in Amazon provider (#20160)

  • Rename DataSync Hook and Operator (#20328)

  • Deprecate passing execution_date to XCom methods (#19825)

  • Organize Dms classes in Amazon provider (#20156)

  • Organize S3 Classes in Amazon Provider (#20167)

  • Organize Step Function classes in Amazon provider (#20158)

  • Organize EC2 classes in Amazon provider (#20157)

  • Move to watchtower 2.0.1 (#19907)

  • Fix mypy aws example dags (#20497)

  • Delete pods by default in KubernetesPodOperator (#20575)

2.5.0 (YANKED)

Warning

This release has been yanked with a reason: Contains breaking changes

Features

  • Adding support for using ''client_type'' API for interacting with EC2 and support filters (#9011)

  • Do not check for S3 key before attempting download (#19504)

  • MySQLToS3Operator  actually allow writing parquet files to s3. (#19094)

Bug Fixes

  • Amazon provider remove deprecation, second try (#19815)

  • Catch AccessDeniedException in AWS Secrets Manager Backend (#19324)

2.4.0

Features

  • MySQLToS3Operator add support for parquet format (#18755)

  • Add RedshiftSQLHook, RedshiftSQLOperator (#18447)

  • Remove extra postgres dependency from AWS Provider (#18844)

  • Removed duplicated code on S3ToRedshiftOperator (#18671)

Bug Fixes

  • Fixing ses email backend (#18042)

  • Fixup string concatenations (#19099)

  • Update S3PrefixSensor to support checking multiple prefixes within a bucket (#18807)

  • Move validation of templated input params to run after the context init (#19048)

  • fix SagemakerProcessingOperator ThrottlingException (#19195)

  • Fix S3ToRedshiftOperator (#19358)

2.3.0

The Redshift operators in this version require at least 2.3.0 version of the Postgres Provider. This is reflected in the [postgres] extra, but extras do not guarantee that the right version of dependencies is installed (depending on the installation method). In case you have problems with running Redshift operators, upgrade apache-airflow-providers-postgres provider to at least version 2.3.0.

Features

  • Add IAM Role Credentials to S3ToRedshiftTransfer and RedshiftToS3Transfer (#18156)

  • Adding missing 'replace' param in docstring (#18241)

  • Added upsert method on S3ToRedshift operator (#18027)

  • Add Spark to the EMR cluster for the job flow examples (#17563)

  • Update s3_list.py (#18561)

  • ECSOperator realtime logging (#17626)

  • Deprecate default pod name in EKSPodOperator (#18036)

  • Aws secrets manager backend (#17448)

  • sftp_to_s3 stream file option (#17609)

  • AwsBaseHook make client_type resource_type optional params for get_client_type, get_resource_type (#17987)

  • Delete unnecessary parameters in EKSPodOperator (#17960)

  • Enable AWS Secrets Manager backend to retrieve conns using different fields (#18764)

  • Add emr cluster link (#18691)

  • AwsGlueJobOperator: add wait_for_completion to Glue job run (#18814)

  • Enable FTPToS3Operator to transfer several files (#17937)

  • Amazon Athena Example (#18785)

  • AwsGlueJobOperator: add run_job_kwargs to Glue job run (#16796)

  • Amazon SQS Example (#18760)

  • Adds an s3 list prefixes operator (#17145)

  • Add additional dependency for postgres extra for amazon provider (#18737)

  • Support all Unix wildcards in S3KeySensor (#18211)

  • Add AWS Fargate profile support (#18645)

Bug Fixes

  • ECSOperator returns last logs when ECS task fails (#17209)

  • Refresh credentials for long-running pods on EKS (#17951)

  • ECSOperator: airflow exception on edge case when cloudwatch log stream is not found (#18733)

2.2.0

Features

  • Add an Amazon EMR on EKS provider package (#16766)

  • Add optional SQL parameters in ''RedshiftToS3Operator'' (#17640)

  • Add new LocalFilesystemToS3Operator under Amazon provider (#17168) (#17382)

  • Add Mongo projections to hook and transfer (#17379)

  • make platform version as independent parameter of ECSOperator (#17281)

  • Improve AWS SQS Sensor (#16880) (#16904)

  • Implemented Basic EKS Integration (#16571)

Bug Fixes

  • Fixing ParamValidationError when executing load_file in Glue hooks/operators (#16012)

  • Fixes #16972 - Slugify role session name in AWS base hook (#17210)

  • Fix broken XCOM in EKSPodOperator (#17918)

Misc

  • Optimise connection importing for Airflow 2.2.0

  • Fix provider.yaml errors due to exit(0) in test (#17858)

  • Adds secrets backend/logging/auth information to provider yaml (#17625)

2.1.0

Features

  • Allow attaching to previously launched task in ECSOperator (#16685)

  • Update AWS Base hook to use refreshable credentials (#16770) (#16771)

  • Added select_query to the templated fields in RedshiftToS3Operator (#16767)

  • AWS Hook - allow IDP HTTP retry (#12639) (#16612)

  • Update Boto3 API calls in ECSOperator (#16050)

  • Adding custom Salesforce connection type + SalesforceToS3Operator updates (#17162)

  • Adding SalesforceToS3Operator to Amazon Provider (#17094)

Bug Fixes

  • AWS DataSync default polling adjusted from 5s to 30s (#11011)

  • Fix wrong template_fields_renderers for AWS operators (#16820)

  • AWS DataSync cancel task on exception (#11011) (#16589)

  • Fixed template_fields_renderers for Amazon provider (#17087)

  • removing try-catch block (#17081)

  • ECSOperator / pass context to self.xcom_pull as it was missing (when using reattach) (#17141)

  • Made S3ToRedshiftOperator transaction safe (#17117)

2.0.0

Breaking changes

  • Auto-apply apply_default decorator (#15667)

Warning

Due to apply_default decorator removal, this version of the provider requires Airflow 2.1.0+. If your Airflow version is < 2.1.0, and you want to install this provider version, first upgrade Airflow to at least version 2.1.0. Otherwise your Airflow package version will be upgraded automatically and you will have to manually run airflow upgrade db to complete the migration.

Features

  • CloudwatchTaskHandler reads timestamp from Cloudwatch events (#15173)

  • remove retry for now (#16150)

  • Remove the 'not-allow-trailing-slash' rule on S3_hook (#15609)

  • Add support of capacity provider strategy for ECSOperator (#15848)

  • Update copy command for s3 to redshift (#16241)

  • Make job name check optional in SageMakerTrainingOperator (#16327)

  • Add AWS DMS replication task operators (#15850)

Bug Fixes

  • Fix S3 Select payload join (#16189)

  • Fix spacing in 'AwsBatchWaitersHook' docstring (#15839)

  • MongoToS3Operator failed when running with a single query (not aggregate pipeline) (#15680)

  • fix: AwsGlueJobOperator change order of args for load_file (#16216)

  • Fix S3ToFTPOperator (#13796)

1.4.0

Features

  • S3Hook.load_file should accept Path object in addition to str (#15232)

Bug fixes

  • Fix 'logging.exception' redundancy (#14823)

  • Fix AthenaSensor calling AthenaHook incorrectly (#15427)

  • Add links to new modules for deprecated modules (#15316)

  • Fixes doc for SQSSensor (#15323)

1.3.0

Features

  • A bunch of template_fields_renderers additions (#15130)

  • Send region_name into parent class of AwsGlueJobHook (#14251)

  • Added retry to ECS Operator (#14263)

  • Make script_args templated in AwsGlueJobOperator (#14925)

  • Add FTPToS3Operator (#13707)

  • Implemented S3 Bucket Tagging (#14402)

  • S3DataSource is not required (#14220)

Bug fixes

  • AWS: Do not log info when SSM & SecretsManager secret not found (#15120)

  • Cache Hook when initializing 'CloudFormationCreateStackSensor' (#14638)

1.2.0

Features

  • Avoid using threads in S3 remote logging upload (#14414)

  • Allow AWS Operator RedshiftToS3Transfer To Run a Custom Query (#14177)

  • includes the STS token if STS credentials are used (#11227)

1.1.0

Features

  • Adding support to put extra arguments for Glue Job. (#14027)

  • Add aws ses email backend for use with EmailOperator. (#13986)

  • Add bucket_name to template fileds in S3 operators (#13973)

  • Add ExasolToS3Operator (#13847)

  • AWS Glue Crawler Integration (#13072)

  • Add acl_policy to S3CopyObjectOperator (#13773)

  • AllowDiskUse parameter and docs in MongotoS3Operator (#12033)

  • Add S3ToFTPOperator (#11747)

  • add xcom push for ECSOperator (#12096)

  • [AIRFLOW-3723] Add Gzip capability to mongo_to_S3 operator (#13187)

  • Add S3KeySizeSensor (#13049)

  • Add 'mongo_collection' to template_fields in MongoToS3Operator (#13361)

  • Allow Tags on AWS Batch Job Submission (#13396)

Bug fixes

  • Fix bug in GCSToS3Operator (#13718)

  • Fix S3KeysUnchangedSensor so that template_fields work (#13490)

1.0.0

Initial version of the provider.

Was this entry helpful?