6 hours agoRefactor DR.task_instance_scheduling_decisions (#24774) main
Tzu-ping Chung [Sat, 2 Jul 2022 00:06:27 +0000 (08:06 +0800)] 
Refactor DR.task_instance_scheduling_decisions (#24774)

11 hours agoUpdate docstring in `SqlToSlackOperator` (#24759)
Alex Kruchkov [Fri, 1 Jul 2022 19:02:51 +0000 (22:02 +0300)] 
Update docstring in `SqlToSlackOperator` (#24759)

12 hours agoAlign Black and blacken-docs configs (#24785)
Bas Harenslak [Fri, 1 Jul 2022 18:12:15 +0000 (20:12 +0200)] 
Align Black and blacken-docs configs (#24785)

13 hours agoMove Flask hook registration to end of file (#24776)
Tzu-ping Chung [Fri, 1 Jul 2022 17:14:05 +0000 (01:14 +0800)] 
Move Flask hook registration to end of file (#24776)

Pylance is too clever here. It (correctly) detects the connect() call is
a NoReturn and marks everything after it as unreachable. But this is not
correct; Flask does trickery at runtime to make it not the case. The
simplest workaround is to just move those registration code to the end
of the file.

16 hours agoRestore Optional value of script_location (#24754)
João Bernardo Oliveira [Fri, 1 Jul 2022 14:02:27 +0000 (11:02 -0300)] 
Restore Optional value of script_location (#24754)

This fixes

17 hours agoBetter diagnostics in case someone modified the dependencies file (#24763)
Jarek Potiuk [Fri, 1 Jul 2022 13:11:10 +0000 (15:11 +0200)] 
Better diagnostics in case someone modified the dependencies file (#24763)

The "provider_dependencies.json" file gets automatically generated
by pre-commit and in case it cannot be json-parsed, it will break
building the CI image. This is a bit chicken-egg because on
CI the image is needed to run pre-commits that could warn the
user this is the case (and the image fails build with a bit
cryptic message).

This PR improves the diagnostics:

* it runs the pre-commit check before image building which will
  fix the generated file (and will let the build run - only to
  fail at the latest static-checks step

* it prints warning to the user seeing pre-commit error to not
  modify the file manually but let pre-commit do the job.

19 hours agoChoose the right builder when pushing to registry for cache (#24780)
Jarek Potiuk [Fri, 1 Jul 2022 10:58:14 +0000 (12:58 +0200)] 
Choose the right builder when pushing to registry for cache (#24780)

When pushing cache we cannot use default builder because it has
no capability to push cache. We need to use airflow_cache for it,
which has additionally the capacity of forwarding the builds
to a remote ARM instance in case cache is built for ARM images
too. Recently we added a new --builder flag to allow to choose
the builder, but our scripts and CI have not been modified to
account for that (previously builder was chosen automatically but
that has proven to be limiting in some manual operations and it
also allows to choose different names for builders in case
someone wants to build their own pipeline of builds.

20 hours agoFix selective checks to work for non-main-branch (#24769)
Jarek Potiuk [Fri, 1 Jul 2022 10:46:08 +0000 (12:46 +0200)] 
Fix selective checks to work for non-main-branch (#24769)

The recent changes in selective checks introduced a few problems
in non-main branches:

* constraints branch was not used by CI build in non-main branch
  this was not a proble, (until it started to fail) because
  other branches always work in "upgradeDepencies" case

* default branch calculation did not account for the selective-check
  comment that was run before default branch was retrieved. Therefore
  we did not run build as from 2.3 branch

* Some precomits should be skiped in non-main branch

* Integration was also excluded from Provider Check

* Two more commit outputs added:
  * docs-filter -  depends whether you are with more packages
  * skip-pre-commit - allows to dynamically choose which pre-commits
    should be skipped

22 hours agoAdd test_connection method to Azure WasbHook (#24771)
Phani Kumar [Fri, 1 Jul 2022 08:11:29 +0000 (13:41 +0530)] 
Add test_connection method to Azure WasbHook (#24771)

31 hours agodocs: sqlalchemy link update (#24756)
Itay [Thu, 30 Jun 2022 22:56:47 +0000 (01:56 +0300)] 
docs: sqlalchemy link update (#24756)

32 hours agoUpdate templates doc to mention `extras` and format Airflow Vars / Conns (#24735)
fritz-astronomer [Thu, 30 Jun 2022 22:33:07 +0000 (18:33 -0400)] 
Update templates doc to mention `extras` and format Airflow Vars / Conns (#24735)

33 hours agoIncrease time to build the ARM image (#24765)
Jarek Potiuk [Thu, 30 Jun 2022 21:35:08 +0000 (23:35 +0200)] 
Increase time to build the ARM image (#24765)

Building ARM image is now done in parallel in case of CI builds
that update dependencies. If the image is not refreshed, then it might
take quite some time - more than the 50 minutes it's been allowed to

This PR increases both timeouts - the self-terminate timeout for
the ARM instance and timeout on the CI job that triggers it.

35 hours agoDocument built in Timetables (#23099)
Collin McNulty [Thu, 30 Jun 2022 18:56:40 +0000 (13:56 -0500)] 
Document built in Timetables (#23099)

37 hours agoAdd warning to AIP-38 UI readme (#24764)
Jed Cunningham [Thu, 30 Jun 2022 17:36:43 +0000 (11:36 -0600)] 
Add warning to AIP-38 UI readme (#24764)

37 hours agoAdd support for KEDA HPA config to Helm Chart (#24220)
Junyoung Park [Thu, 30 Jun 2022 17:16:58 +0000 (02:16 +0900)] 
Add support for KEDA HPA config to Helm Chart (#24220)

38 hours agoMove fallible ti.task.dag assignment back inside try/except block (#24533) (#24592)
EJ Kreinar [Thu, 30 Jun 2022 16:40:25 +0000 (12:40 -0400)] 
Move fallible ti.task.dag assignment back inside try/except block (#24533) (#24592)

* Move fallible ti.task.dag assignment back inside try/except block

It looks like ti.task.dag was originally protected inside try/except,
but was moved out at commit 7be87d

* Remove unneeded variable annotation

Co-authored-by: EJ Kreinar <>
Co-authored-by: Tzu-ping Chung <>
38 hours agoFix purge_inactive_dag_warnings filter (#24749)
Tzu-ping Chung [Thu, 30 Jun 2022 16:19:38 +0000 (00:19 +0800)] 
Fix purge_inactive_dag_warnings filter (#24749)

2 days ago(GitHub CI) update most CI workflows (stale, build-images, etc) (#24705)
Arjun Sharda [Thu, 30 Jun 2022 06:38:13 +0000 (01:38 -0500)] 
(GitHub CI) update most CI workflows (stale, build-images, etc) (#24705)

* Update stale.yml

* Update build-images.yml

* Update release_dockerhub_image.yml

* Update codeql-analysis.yml

* Update ci.yml

2 days agoRemove defaults from Airflow test config (#24263)
Jed Cunningham [Thu, 30 Jun 2022 06:37:36 +0000 (00:37 -0600)] 
Remove defaults from Airflow test config (#24263)

* Remove defaults from Airflow test config

All of these removed values are the defaults (or in the case of the
`dag_default_view`, the old default) and don't actually do
anything being in this file.

* Fix tests

2 days agoMore typing and minor refactor for kubernetes (#24719)
Jed Cunningham [Wed, 29 Jun 2022 22:02:47 +0000 (16:02 -0600)] 
More typing and minor refactor for kubernetes (#24719)

2 days agoUpdate command from breeze to command (#24741)
Fokko Driesprong [Wed, 29 Jun 2022 20:44:02 +0000 (22:44 +0200)] 
Update command from breeze to command (#24741)

2 days agoUse LTS version of node for pre-commit checks (#24688)
Kevin George [Wed, 29 Jun 2022 17:17:35 +0000 (13:17 -0400)] 
Use LTS version of node for pre-commit checks (#24688)

2 days agoFix grid date ticks (#24738)
Brent Bovenzi [Wed, 29 Jun 2022 17:01:47 +0000 (13:01 -0400)] 
Fix grid date ticks (#24738)

* fix date ticks

* fix linting

* fix LinkButton type error

2 days agoMove provider dependencies to inside provider folders (#24672)
Jarek Potiuk [Wed, 29 Jun 2022 16:38:29 +0000 (18:38 +0200)] 
Move provider dependencies to inside provider folders (#24672)

The ```` had ALWAUS contained provider dependencies,
but this is really a remnant of Airlfow 1.10 where providers
were not separated out to subfolders of "providers".

This change moves all the provider-specific dependencies
to provider.yaml where they are kept together with all other
provider meta-data.

Later, when we move providers out, we can move them to
provider specific files (or let provider-specific files read them from provider.yaml) but this is
not something we want to do it now.

The dependencies.json is now renamed to provider_dependencies.json
and moved to "airflow" so tha it can be kept as part of the
sources needed for sdist package to provide extras. Pre-commit still
generates the file as needed and it contains now both:

* cross-provider-deps information which providers depend on each
* deps - information what regular dependencies are needed for each

On top of preparing to splitting providers it has the advantage,
that there will be no more case where adding a dependency change
for provider will not run tests for that provider.

2 days agoUpgrade more javascript files to typescript (#24715)
Brent Bovenzi [Wed, 29 Jun 2022 14:39:47 +0000 (10:39 -0400)] 
Upgrade more javascript files to typescript (#24715)

* upgrade more js files to ts

* upgrade more component files

* fix linting issues

2 days agofix connection extra parameter `auth_mechanism` in `HiveMetastoreHook` and `HiveServe...
eladkal [Wed, 29 Jun 2022 14:12:23 +0000 (17:12 +0300)] 
fix connection extra parameter `auth_mechanism` in `HiveMetastoreHook` and `HiveServer2Hook` (#24713)


2 days agoAdding generic `SqlToSlackOperator` (#24663)
Alex Kruchkov [Wed, 29 Jun 2022 12:28:07 +0000 (15:28 +0300)] 
Adding generic `SqlToSlackOperator` (#24663)

* adding `SqlToSlackOperator`

Co-authored-by: eladkal <>
3 days ago`AirbyteHook` add cancel job option (#24593)
sivankumar86 [Wed, 29 Jun 2022 06:43:53 +0000 (16:43 +1000)] 
`AirbyteHook` add cancel job option (#24593)

3 days agoUse our yaml util in all providers (#24720)
Jed Cunningham [Wed, 29 Jun 2022 03:54:44 +0000 (21:54 -0600)] 
Use our yaml util in all providers (#24720)

Our yaml util, which uses libyaml where possible, has been available in
core since 2.0.2. Providers now require 2.2.0+, so we can safely use it

3 days agoAddress all yarn test warnings (#24722)
Brent Bovenzi [Wed, 29 Jun 2022 03:06:18 +0000 (23:06 -0400)] 
Address all yarn test warnings (#24722)

- remove outdated react-hooks library
- add missing mock

3 days agoFix migration 0080_2_0_2 - Replace null values before setting column not null (#24585)
Tomáš Drtina [Wed, 29 Jun 2022 01:55:41 +0000 (03:55 +0200)] 
Fix migration 0080_2_0_2 - Replace null values before setting column not null (#24585)

3 days agoGrid task log, multi select and ts files migration. (#24623)
pierrejeambrun [Tue, 28 Jun 2022 22:56:44 +0000 (00:56 +0200)] 
Grid task log, multi select and ts files migration. (#24623)

* Multi select + ts files migration.

* Fix conflicts and transfert tests to ts files

* Add multi select on file source.

* Update placeholder color

* Update scrollIntoview.

3 days agoDo not fail requeued TIs (#23846)
Tanel Kiis [Tue, 28 Jun 2022 22:14:09 +0000 (01:14 +0300)] 
Do not fail requeued TIs (#23846)

3 days agoMerge-friendly output of command hashes for breeze (#24711)
Jarek Potiuk [Tue, 28 Jun 2022 21:58:01 +0000 (23:58 +0200)] 
Merge-friendly output of command hashes for breeze (#24711)

We had just one hash generated from all commands in breeze and that
basically meant that when there were two PRs on two different
commands in Breeze, they resulted with merge conflict which
should be solved with `breeze regenerate-command-images`.

This change turns the hash output into a multi-command one - i.e.
each command has its own hash, which will make it much more
merge-friendly - i.e. if two PRs will work on two different commands
the rebase should result with merge rather than conflict.

3 days agoScript to filter candidates for PR of the month based on heuristics (#24654)
Jarek Potiuk [Tue, 28 Jun 2022 21:30:59 +0000 (23:30 +0200)] 
Script to filter candidates for PR of the month based on heuristics (#24654)

This scripts proposes top candidates for PR of the month
based on simple heuristics as discussed in the document

3 days agoFix unnecessary check for ARM images (#24718)
Jarek Potiuk [Tue, 28 Jun 2022 21:22:23 +0000 (23:22 +0200)] 
Fix unnecessary check for ARM images (#24718)

The ARM image build introduced in #24664 had problem with build
image that was additionally checking for arm images which were
moved out to a spearate step

3 days agoAdd AWS operators to create and delete RDS Database (#24099)
Eugene Karimov [Tue, 28 Jun 2022 19:32:17 +0000 (21:32 +0200)] 
Add AWS operators to create and delete RDS Database (#24099)

* Add RdsCreateDbInstanceOperator

* Add RdsDeleteDbInstanceOperator

3 days agoDebounce status highlighting in Grid view (#24710)
Brent Bovenzi [Tue, 28 Jun 2022 18:50:02 +0000 (14:50 -0400)] 
Debounce status highlighting in Grid view (#24710)

* Add delay / debounce to not always highlight tasks

* fix linting

* single delay variable at 200ms

3 days agoAdd ARM image building for regular PRs (#24664)
Jarek Potiuk [Tue, 28 Jun 2022 18:20:13 +0000 (20:20 +0200)] 
Add ARM image building for regular PRs (#24664)

The image building for ARM is currently only done in the main build
only to refresh cache, however there are sometimes cases when
new dependency (for example #24635) broke ARM image build and it
was only discovered after merge.

This PR adds extra ARM-based build that should be run after
the AMD64 build. It should not influence the depending steps,
it should just signal failure of the PR if the ARM image cannot
be build.

3 days agoProtect against using "hook_params" in "get_hook" until we move to 2.3+ (#24706)
Jarek Potiuk [Tue, 28 Jun 2022 16:00:16 +0000 (18:00 +0200)] 
Protect against using "hook_params" in "get_hook" until we move to 2.3+ (#24706)

The "hook_params" method was added in Airflow 2.3 and we should not
use it in providers (yet).

3 days agofix document about response_check in HttpSensor (#24708)
ishiis [Tue, 28 Jun 2022 16:00:01 +0000 (01:00 +0900)] 
fix document about response_check in HttpSensor (#24708)

3 days agoRemove `hook-class-names` from provider.yaml (#24702)
eladkal [Tue, 28 Jun 2022 15:46:52 +0000 (18:46 +0300)] 
Remove `hook-class-names` from provider.yaml (#24702)

* Remove `hook-class-names` from provider.yaml
now that providers>=2.2 there is no need for the hook-class-names any longer.
refrence to

* fix `airflow/provider.yaml.schema.json` and `provider_info.schema.json`

* undo changes in `provider_info.schema.json`

3 days agoFix Grid vertical scrolling (#24684)
Brent Bovenzi [Tue, 28 Jun 2022 15:43:28 +0000 (11:43 -0400)] 
Fix Grid vertical scrolling (#24684)

* fix vertical scrolling

* fix flex grow for panel open/close

* add type checking

* add duration axis component

* remove details/grid width changes

this should be done in a separate PR

3 days agoAdd `airflow_kpo_in_cluster` label to KPO pods (#24658)
Jed Cunningham [Tue, 28 Jun 2022 15:30:02 +0000 (09:30 -0600)] 
Add `airflow_kpo_in_cluster` label to KPO pods (#24658)

This allows one to determine if the pod was created with in_cluster config
or not, both on the k8s side and in pod_mutation_hooks.

3 days agodon't try to render child rows for closed groups (#24637)
Brent Bovenzi [Tue, 28 Jun 2022 15:28:27 +0000 (11:28 -0400)] 
don't try to render child rows for closed groups (#24637)

3 days agoRemove "Label when approved" workflow (#24704)
Jarek Potiuk [Tue, 28 Jun 2022 14:23:02 +0000 (16:23 +0200)] 
Remove "Label when approved" workflow (#24704)

The labelling workflow has proven to be far less useful than we
thought and some of the recent changes in selective checks made
it largely obsolete. The committers can still add "full tests needed"
label when they think it is needed and there is no need to label
the PRs automatically for that (or any other reason).

For quite a while this workflow is basically a useless noise.

3 days agoMigrate Google example DAG s3_to_gcs to new design AIP-47 (#24641)
Chenglong Yan [Tue, 28 Jun 2022 12:49:47 +0000 (20:49 +0800)] 
Migrate Google example DAG s3_to_gcs to new design AIP-47 (#24641)

related: #22447, #22430

3 days agoAdd batch option to `SqsSensor` (#24554)
TungHoang [Tue, 28 Jun 2022 12:47:46 +0000 (14:47 +0200)] 
Add batch option to `SqsSensor` (#24554)

Add batch option to `SqsSensor`

Co-authored-by: TungHoang <>
Co-authored-by: D. Ferruzzi <>
3 days ago`WebHDFSHook` Bugfix/optional port (#24550)
Ankur Bajaj [Tue, 28 Jun 2022 12:44:09 +0000 (14:44 +0200)] 
`WebHDFSHook` Bugfix/optional port (#24550)

3 days agoAdd `test_connection` method to Databricks hook (#24617)
Phani Kumar [Tue, 28 Jun 2022 10:01:07 +0000 (15:31 +0530)] 
Add `test_connection` method to Databricks hook (#24617)

This PR enables the test button on the airflow UI for testing whether the Databricks connection works using the connection params filled by the user

3 days agoClear next method when clearing TIs (#23929)
Tanel Kiis [Tue, 28 Jun 2022 09:40:34 +0000 (12:40 +0300)] 
Clear next method when clearing TIs (#23929)

4 days agoRename 'resources' arg in Kub op to k8s_resources (#24673)
Tzu-ping Chung [Tue, 28 Jun 2022 06:45:31 +0000 (14:45 +0800)] 
Rename 'resources' arg in Kub op to k8s_resources (#24673)

4 days agoClean up task decorator type hints and docstrings (#24667)
Tzu-ping Chung [Tue, 28 Jun 2022 06:45:00 +0000 (14:45 +0800)] 
Clean up task decorator type hints and docstrings (#24667)

4 days agoRemove commented out code (#24685)
Andrey Anshin [Tue, 28 Jun 2022 04:04:19 +0000 (08:04 +0400)] 
Remove commented out code (#24685)

4 days agoTriggerDagRunOperator.operator_extra_links is attr (#24676)
Tzu-ping Chung [Tue, 28 Jun 2022 02:59:00 +0000 (10:59 +0800)] 
TriggerDagRunOperator.operator_extra_links is attr (#24676)

There's absolutely no reason this needs to be a property. And it cannot
be since we need to access this at the class level.

4 days agokeep Log scrolling only to nearest div (#24689)
Brent Bovenzi [Mon, 27 Jun 2022 22:53:54 +0000 (18:53 -0400)] 
keep Log scrolling only to nearest div (#24689)

4 days agoUpdated Snowflake provider connection documentation (#24573)
Daniel Reeves [Mon, 27 Jun 2022 21:58:10 +0000 (17:58 -0400)] 
Updated Snowflake provider connection documentation (#24573)

* Updated Snowflake provider connection documentation

* Moved paragraph down.

* Minor rephrasing to improve clarity

4 days agoPass worker annotations to generated pod_template_file (#24647)
Gabriel Machado [Mon, 27 Jun 2022 21:57:35 +0000 (23:57 +0200)] 
Pass worker annotations to generated pod_template_file (#24647)

4 days agoAdd dataset model (#24613)
Daniel Standish [Mon, 27 Jun 2022 20:39:44 +0000 (13:39 -0700)] 
Add dataset model (#24613)

Add model for storing references to datasets, a fundamental component of AIP-48.

4 days agoAdd Core SQL Provider (#24476)
Benji Lampel [Mon, 27 Jun 2022 20:29:33 +0000 (16:29 -0400)] 
Add Core SQL Provider (#24476)

Adds operators, tests, and new and updated docs for a Core SQL
Provider. This provider is made in favor of adding these operators
to the existing SQL operators in core Airflow. The new provider
will allow for quicker development cycles.

closes: #23874, #24422
related: #23915

4 days agoTurn inability of creating mypy-cache into warning (#24677)
Jarek Potiuk [Mon, 27 Jun 2022 10:21:14 +0000 (12:21 +0200)] 
Turn inability of creating mypy-cache into warning (#24677)

The mypy cache creation might happen before checking if good
version of docker is installed and it works, so we want to turn
it into a warning rather than error when it is not possible to
create one.

5 days agoFix behaviour of build/pull after recent Breeze changes (#24657)
Jarek Potiuk [Mon, 27 Jun 2022 01:00:10 +0000 (03:00 +0200)] 
Fix behaviour of build/pull after recent Breeze changes (#24657)

The behaviour of Breeze after some recent changes related to
pulling and building images in parallel have been slightly broken.
Nothing serious but slightly annoying behaviour:

* when starting breeze shell, the image was attempted to be
  build even if it was not needed (but cache efficiency made it fast
  enough to not be too annoying (unless we updated to newer
  python base image

* breeze pull command for "latest" branch makes no sense any more -
  we stopped pushing "latest" image to, we only push
  cache and "tagged" images. We are now turning --image-tag as
  required in "pull_image" and when someone specifies latest,
  error and helpful message is printed

* --force-build flag in "shell-related-commands" was not
  properly propagated to build-image so it did not actually
  force image building.

All those problems are fixed now.

5 days agoS3ToSnowflakeOperator: escape single quote in s3_keys (#24607)
Andrey Anshin [Sun, 26 Jun 2022 15:21:30 +0000 (19:21 +0400)] 
S3ToSnowflakeOperator: escape single quote in s3_keys (#24607)

5 days agoFix handling of GitHub Event types for new selective checks (#24665)
Jarek Potiuk [Sun, 26 Jun 2022 10:11:52 +0000 (12:11 +0200)] 
Fix handling of GitHub Event types for new selective checks (#24665)

One more finding after merging the selective checks in Python
- I missed a case of "pull_request_target".

Fixed and added more tests.

5 days agoHandle "workflow_run" event properly in selective-check (#24656)
Jarek Potiuk [Sun, 26 Jun 2022 09:07:49 +0000 (11:07 +0200)] 
Handle "workflow_run" event properly in selective-check (#24656)

Unfortunately testing workflow_run is a bit difficult because
the changes are only effective after merging them.

Fixing (hopefully) yet another mistake in the workflow run where
commit hash was passed as event name (?)

We are going to handle "workflow_run" as valid event type so this
should now work without passing any event.

6 days agoUse target commit SHA for build image workflow (#24659)
Jarek Potiuk [Sat, 25 Jun 2022 21:34:11 +0000 (23:34 +0200)] 
Use target commit SHA for build image workflow (#24659)

The build-image workflow should use TARGET_COMMIT_SHA as the
selective check COMMIT_REF otherwise it might not build
image when needed

6 days agoChange postgres auth method (#24640)
Gabriel Machado [Sat, 25 Jun 2022 19:23:08 +0000 (21:23 +0200)] 
Change postgres auth method (#24640)

6 days agoMigrate Google example DAG bigquery_transfer to new design AIP-47 (#24543)
Chenglong Yan [Sat, 25 Jun 2022 15:51:26 +0000 (23:51 +0800)] 
Migrate Google example DAG bigquery_transfer to new design AIP-47 (#24543)

related: #22447, #22430

6 days agoRemove selective checks from the "release workflow" (#24655)
Jarek Potiuk [Sat, 25 Jun 2022 15:45:08 +0000 (17:45 +0200)] 
Remove selective checks from the "release workflow" (#24655)

Missed that one too :(

6 days agoRemove misleading message from CI (#24650)
Jarek Potiuk [Sat, 25 Jun 2022 09:27:21 +0000 (11:27 +0200)] 
Remove misleading message from CI (#24650)

The CI jobs do not usually have mypy_cache volume created and
almost all jobs print misleading "mypy_cache_volume" error at
the beginning.

This is a noise - we are not interested in this stderr printed
message - we are only interested in returncode from checking
if it exists.

6 days agoCleanup references to selective checks (#24649)
Jarek Potiuk [Sat, 25 Jun 2022 09:26:52 +0000 (11:26 +0200)] 
Cleanup references to selective checks (#24649)

Selective checks docs have been moved to breeze as part of #24610
but some of the references were still left.

This PR cleans it up.

6 days agoSwitch to new selective-checks in label-when-reviewed workflow (#24651)
Jarek Potiuk [Sat, 25 Jun 2022 09:20:48 +0000 (11:20 +0200)] 
Switch to new selective-checks in label-when-reviewed workflow (#24651)

When #24610 was implemented I missed the label-when-reviewed workflow

6 days agoConvert selective checks to Breeze Python (#24610)
Jarek Potiuk [Sat, 25 Jun 2022 07:46:13 +0000 (09:46 +0200)] 
Convert selective checks to Breeze Python (#24610)

Instead of bash-based, complex logic script to perform PR selective
checks we now integrated the whole logic into Breeze Python code.

It is now much simplified, when it comes to algorithm. We've
implemented simple rule-based decision tree. The rules describing
the decision tree are now are now much easier
to reason about and they correspond one-to-one with the rules
that are implemented in the code in rather straightforward way.

The code is much simpler and diagnostics of the selective checks
has also been vastly improved:

* The rule engine displays status of applying each rule and
  explains (with yellow warning message what decision was made
  and why. Informative messages are printed showing the resulting

* List of files impacting the decision are also displayed

* The names of "ci file group" and "test type" were aligned

* Unit tests covering wide range of cases are added. Each test
  describes what is the case they demonstrate

* `breeze selective-checks` command that is used in CI can also
  be used locally by just providing commit-ish reference of the
  commit to check. This way you can very easily debug problems and
  fix them

Fixes: #19971

7 days agoRemove short version of colour flag (#24639)
Gabriel Machado [Sat, 25 Jun 2022 00:05:32 +0000 (02:05 +0200)] 
Remove short version of colour flag (#24639)

7 days agoAllows to specify different Python base image when building images (#24634)
Jarek Potiuk [Fri, 24 Jun 2022 22:02:57 +0000 (00:02 +0200)] 
Allows to specify different Python base image when building images (#24634)

Today Python released new images that seems to break some of
our dependencies (at least on M1/ARM). This PR adds a workaround
possibility to add --python-image option to override the
default, latest image with any other version released previously
until we diagnose and fix the real issue.

7 days agoFix timestamp defaults for sensorinstance (#24638)
Daniel Standish [Fri, 24 Jun 2022 16:31:58 +0000 (09:31 -0700)] 
Fix timestamp defaults for sensorinstance (#24638)

Constant values were used where callables were intended.

7 days agoHave consistent types between the ORM and the migration files (#24044)
Ephraim Anierobi [Fri, 24 Jun 2022 15:51:01 +0000 (16:51 +0100)] 
Have consistent types between the ORM and the migration files (#24044)

We currently don't compare column types between ORM and the migration files. Some columns in the migration files have different types from the same columns in the ORM.
Here, I made effort to match the types in migration files with the
 types in ORM, using the migration files as the source of truth in most cases.

I couldn't convert the MySQL VARCHAR collation in db(utf8_bin) to use the one in ORM(utf8mb3_bin). It seems it's not possible to convert a collation of an already existing column in MySQL.

7 days agoExternalTaskSensor respects soft_fail if the external task enters a failed_state...
Andrew Gibbs [Fri, 24 Jun 2022 13:50:13 +0000 (14:50 +0100)] 
ExternalTaskSensor respects soft_fail if the external task enters a failed_state (#23647)

* Respecting soft_fail in ExternalTaskSensor when the upstream tasks are in the failed state (#19754)

- Changed behaviour of sensor to as above to respect soft_fail
- Added tests of new soft_fail behaviour (#19754)
- Added newsfragment and improved sensor docstring

7 days agoAdd %z for %(asctime)s to fix timezone for logs on UI (#24373)
Ko HanJong [Fri, 24 Jun 2022 13:17:24 +0000 (22:17 +0900)] 
Add %z for %(asctime)s to fix timezone for logs on UI (#24373)

7 days agoAdd --platform to breeze shell and start-airflow (#24626)
Tzu-ping Chung [Fri, 24 Jun 2022 10:12:14 +0000 (18:12 +0800)] 
Add --platform to breeze shell and start-airflow (#24626)

This allows Breeze to run images of another platform, such as AMD64 on
an ARM machine.

7 days agoAdd gcp_conn_id argument to GoogleDriveToLocalOperator (#24622)
aspain [Fri, 24 Jun 2022 09:40:05 +0000 (05:40 -0400)] 
Add gcp_conn_id argument to GoogleDriveToLocalOperator (#24622)

Co-authored-by: Tzu-ping Chung <>
7 days agoLimit azure-servicebus to not be used on ARM (#24635)
Jarek Potiuk [Fri, 24 Jun 2022 09:39:10 +0000 (11:39 +0200)] 
Limit azure-servicebus to not be used on ARM (#24635)

Azure service bus uses uamqp which does not build for ARM architecture
and we need to disable it as a dependency for ARM.

7 days agodocs: sqlalchemy link update (#24627)
Itay [Fri, 24 Jun 2022 08:12:22 +0000 (11:12 +0300)] 
docs: sqlalchemy link update (#24627)

following to this change:

8 days agoupdate `task-generated mapping` example (#23424)
aspain [Fri, 24 Jun 2022 04:28:54 +0000 (00:28 -0400)] 
update `task-generated mapping` example (#23424)

Co-authored-by: James Timmins <>
Co-authored-by: Tzu-ping Chung <>
8 days agoWe now need at least Flask-WTF 0.15 (#24621)
Ash Berlin-Taylor [Thu, 23 Jun 2022 19:58:07 +0000 (20:58 +0100)] 
We now need at least Flask-WTF 0.15 (#24621)

We upgraded flask and werkzeug in #24399, and updated the constraints,
but not everyone uses them (such as me in my local virtual environment
when developing) so the min version in setup.cfg has to match as well

8 days agoUpgrade FAB to 4.1.2 (#24619)
Jarek Potiuk [Thu, 23 Jun 2022 19:56:28 +0000 (21:56 +0200)] 
Upgrade FAB to 4.1.2 (#24619)

8 days agoLay the groundwork for migrating Airflow CLI to Rich+Click (#24590)
blag [Thu, 23 Jun 2022 16:28:17 +0000 (09:28 -0700)] 
Lay the groundwork for migrating Airflow CLI to Rich+Click (#24590)

This is the first PR of what will be a series of PRs breaking up #22613 into smaller, more reviewable chunks. The end result will be rewriting the existing `airflow` CLI to use Click instead of argparse. For motivation, please see #22708.

This PR installs Click, adds constraints to Rich_Click so we can rely on some nice features in recent versions of that, adds a new barebones `airflow-ng` console script, and tweaks some CLI internals to be more flexible between argparse and Click.

To see how this initial groundwork will be used by future PRs, see #22613, and to see how some of this will be used please see #24591.

8 days agoImplement Azure Service Bus Queue Operators (#24038)
Bharanidharan [Thu, 23 Jun 2022 15:52:47 +0000 (21:22 +0530)] 
Implement Azure Service Bus Queue Operators (#24038)

Implemented Azure Service Bus Queue based Operator's to create queue, send message to the queue and receive message(list of message or batch message) and delete queue in azure service
- Added `AzureServiceBusCreateQueueOperator`
- Added `AzureServiceBusSendMessageOperator`
- Added  `AzureServiceBusReceiveMessageOperator`
- Added `AzureServiceBusDeleteQueueOperator`
- Added Example DAG
- Added Documentation
- Added hooks and connection type in - provider yaml file
- Added unit Test case, doc strings

8 days agoUse sql_alchemy_conn for celery result backend when result_backend is not set (#24496)
Aakcht [Thu, 23 Jun 2022 15:34:21 +0000 (18:34 +0300)] 
Use sql_alchemy_conn for celery result backend when result_backend is not set (#24496)

8 days agoFix usage of `click.get_terminal_size()` (#24616)
Kaxil Naik [Thu, 23 Jun 2022 12:57:36 +0000 (13:57 +0100)] 
Fix usage of `click.get_terminal_size()` (#24616)

We were ignoring mypy error instead of fixing it.

click had removed `get_terminal_size` and recommend using `shutil.get_terminal_size`

9 days agoFix errors revealed on autoupgrade of breeze (#24612)
Jarek Potiuk [Thu, 23 Jun 2022 00:37:40 +0000 (02:37 +0200)] 
Fix errors revealed on autoupgrade of breeze (#24612)

Recent changes to Breeze cause it to fail in certain situations,
especially at self-upgrade (which was generated by today's
upgrade with rich-click).

There were two problems:

* docker volume inspect missed 'volume' and it caused sometimes
  failures in CI

* inputimeout dependency was missing after recent update to
  pre-commit venvs

9 days agoAdd note about image regeneration in June 2022 (#24524)
Jarek Potiuk [Thu, 23 Jun 2022 00:27:54 +0000 (02:27 +0200)] 
Add note about image regeneration in June 2022 (#24524)

The note is about image changes after refreshing are now better
organized (around date of the change) - this should be more useful
by the users who will look why their images have been refreshed.

Related to: #24516

9 days agoFix recording console for new rich-click 1.5 (#24611)
Jarek Potiuk [Wed, 22 Jun 2022 23:06:23 +0000 (01:06 +0200)] 
Fix recording console for new rich-click 1.5 (#24611)

9 days agoUpgrade FAB to 4.1.1 (#24399)
Jarek Potiuk [Wed, 22 Jun 2022 21:26:28 +0000 (23:26 +0200)] 
Upgrade FAB to 4.1.1 (#24399)

* Upgrade FAB to 4.1.1

The Flask Application Builder have been updated recently to
support a number of newer dependencies. This PR is the
attempt to migrate FAB to newer version.

This includes:

* update and setup.cfg upper and lower bounds to
  account for proper version of dependencies that
  FAB < 4.0.0 was blocking from upgrade
* added typed Flask application retrieval with a custom
  application fields available for MyPy typing checks.
* fix typing to account for typing hints added in multiple
  upgraded libraries optional values and content of request
  returned as Mapping
* switch to PyJWT 2.* by using non-deprecated "required" claim as
  list rather than separate fields
* add possibiliyt to install providers without constraints
  so that we could avoid errors on conflicting constraints when
  upgrade-to-newer-dependencies is used
* add pre-commit to check that 2.4+ only get_airflow_app is not
  used in providers
* avoid Bad Request in case the request sent to Flask 2.0 is not
  JSon content type
* switch imports of internal classes to direct packages
  where classes are available rather than from "airflow.models" to
  satisfy MyPY
* synchronize changes of FAB Security Manager 4.1.1 with our copy
  of the Security Manager.
* add error handling for a few "None" cases detected by MyPY
* corrected test cases that were broken by immutability of
  Flask 2 objects and better escaping done by Flask 2
* updated test cases to account for redirection to "path" rather
  than full URL by Flask2

Fixes: #22397

* fixup! Upgrade FAB to 4.1.1

9 days agoMigrate jsx files that affect run/task selection to tsx (#24509)
Brent Bovenzi [Wed, 22 Jun 2022 19:30:24 +0000 (15:30 -0400)] 
Migrate jsx files that affect run/task selection to tsx (#24509)

* convert all useSelection files to ts

Update grid data ts, remove some anys

* yarn, lint and tests

* convert statusbox to ts

* remove some anys, update instance tooltip

* fix types

* remove any, add comment for global vars

* fix url selection and grid/task defaults

* remove React.FC declarations

* specify tsconfig file path

* remove ts-loader

9 days agoUpdate breeze mypy check documentation (#24609)
Igor Tavares [Wed, 22 Jun 2022 19:28:27 +0000 (16:28 -0300)] 
Update breeze mypy check documentation (#24609)

9 days agoPatch sql_alchemy_conn if old Postgres schemes used (#24569)
Sergey Lyapustin [Wed, 22 Jun 2022 11:06:57 +0000 (13:06 +0200)] 
Patch sql_alchemy_conn if old Postgres schemes used (#24569)

9 days agoPattern parameter in S3ToSnowflakeOperator (#24571)
Andrey Anshin [Wed, 22 Jun 2022 07:49:02 +0000 (11:49 +0400)] 
Pattern parameter in S3ToSnowflakeOperator (#24571)

9 days agoRemove special serde logic for mapped op_kwargs (#23860)
Tzu-ping Chung [Wed, 22 Jun 2022 07:48:50 +0000 (15:48 +0800)] 
Remove special serde logic for mapped op_kwargs (#23860)

Co-authored-by: Daniel Standish <>
10 days agofix TestLocalTaskJob tests (#24432)
Andrey Anshin [Wed, 22 Jun 2022 06:15:49 +0000 (10:15 +0400)] 
fix TestLocalTaskJob tests (#24432)