Граф коммитов

602 Коммитов

Автор SHA1 Сообщение Дата
Michał Słowikowski 00ffedb8c4
Add amazon glacier to GCS transfer operator (#10947)
Add Amazon Glacier to GCS transfer operator, Glacier job operator and sensor.
2020-09-30 14:59:26 +02:00
Kaxil Naik 4ff1290d8d
Remove Unnecessary comprehension in 'any' builtin function (#11188)
The inbuilt functions `any()` support short-circuiting (evaluation stops as soon as the overall return value of the function is known), but this behavior is lost if you use comprehension. This affects performance.
2020-09-29 07:47:32 +02:00
Kaxil Naik f934e2f3ef
Unpin 'tornado' dep pulled in by flower (#10993)
'tornado' version was pinned in https://github.com/apache/airflow/pull/4815

The underlying issue is fixed for Py 3.5.2 so that is not a problem. Also since Airflow Master is already Py 3.6+ this does not apply to us.
2020-09-17 15:20:31 +01:00
Jarek Potiuk 6e5cc4c6a2
Pins temporarily moto to 1.3.14 (#10986)
As described in #10985, moto upgrade causes some AWS tests to fail.
Until we fix it, we pin the version to 1.3.14.

Part of #10985
2020-09-17 11:51:16 +01:00
Ash Berlin-Taylor 59dad1a4ea
Allow CeleryExecutor to "adopt" an orphaned queued or running task (#10949)
This can happen when a task is enqueued by one executor, and then that
scheduler dies/exits.

The default fallback behaviour is unchanged -- that queued tasks are
cleared and then and then later rescheduled.

But for Celery, we can do better -- if we record the Celery-generated
task_id, we can then re-create the AsyncResult objects for orphaned
tasks at a later date.

However, since Celery just reports all AsyncResult as "PENDING", even if
they aren't tasks currently in the broker queue, we need to apply a
timeout to "unblock" these tasks in case they never actually made it to
the Celery broker.

This all means that we can adopt tasks that have been enqueued another
CeleryExecutor if it dies, without having to clear the task and slow
down. This is especially useful as the task may have already started
running, and while clearing it would stop it, it's better if we don't
have to reset it!

Co-authored-by: Kaxil Naik <kaxilnaik@apache.org>
2020-09-16 20:10:30 +01:00
Kaxil Naik f77a11d5b1
Add Secrets backend for Microsoft Azure Key Vault (#10898) 2020-09-13 16:45:21 +02:00
Jarek Potiuk 35840ff211
Removes snakebite kerberos dependency (#10865)
Snakebite's kerberos support relied on a python-krbV
which has been removed from PyPI. It did not work
completely anyway due to snakebite not being officially
supported in python3 (snakebite-py3 did not work with
SSL which made Kerberos pretty much unusable.

This commit removes the snakebite's kerberos support
from setup.py so that you still can install kerberos
as extra for other uses.
2020-09-12 10:53:52 +02:00
Jarek Potiuk f76ab1f882
Fix failing dependencies for FAB and Celery (#10828)
Recent releases of FAB and Celery caused our installation to
fail. Luckily we have protection so that regular PRs are not
affected, however we need to update the setup.py to exclude
those dependencies that cause the problem.

Those are:

* vine - which is used by Celery Sensor (via kombu) - 5.0.0
  version breaks celery-vine feature

* Flask-OauthLib and flask-login - combination of the current
  requirements caused a conflict by forcing flask login to
  be 0.5.0 which is not compatible with Flask Application Builder
2020-09-12 09:52:11 +02:00
Miller Tracy b9dc3c51ba
Added Plexus as an Airflow provider (#10591) 2020-09-10 19:54:38 +02:00
Ash Berlin-Taylor 7fd65d75b3
Don't include kubernetes_tests/ and backport_packages/ in our wheel (#10805)
Since 1.10.x we have added some new top-level folders that were getting
included in the build wheel!
2020-09-08 21:44:17 +02:00
Kaxil Naik 3f7831c73e
Relax requirement to allow latest version of flask-login (#9990)
The current latest available version is 0.5.0 (https://pypi.org/project/Flask-Login/0.5.0/)

Version 0.5.0 drops support for Python 2.6, 3.3, 3.4 and we don't use those versions in Airflow Master
2020-09-04 14:37:40 +01:00
Kamil Breguła 8e0d9f09d9
Add airflow cheat-sheet command (#10619) 2020-08-28 21:25:29 +02:00
Jarek Potiuk 2f2d8dbfaf
Remove all "noinspection" comments native to IntelliJ (#10525)
We have already fixed a lot of problems that were marked
with those, also IntelluiJ gotten a bit smarter on not
detecting false positives as well as understand more
pylint annotation. Wherever the problem remained
we replaced it with # noqa comments - as it is
also well understood by IntelliJ.
2020-08-25 00:01:37 +02:00
Felix Uellendall f91ac9bb3a
Unpin pytest (#10314)
The pytest bug in 6.0.0 has been fixed in 6.0.1.
See changelog for details: https://docs.pytest.org/en/stable/changelog.html#pytest-6-0-1-2020-07-30
2020-08-13 16:42:24 +02:00
Jarek Potiuk a74a7da2c4
Limit all google-cloud api to <2.0.0 (#10317)
Google Cloud APIs introduced breaking changes in 2.0.0
(https://github.com/googleapis/python-container/blob/master/UPGRADING.md)
and they already caused a number of changes. We should (for now - before
we migrate to 2.0+ ) limit all our google-cloud deps to <2.0.0

Fixes #10316
2020-08-13 13:58:02 +02:00
Kaxil Naik 45e31824d2
Restrict google-cloud-dataproc to <2.0.0 (#10307) 2020-08-13 09:33:54 +02:00
David Cavaletto f6734b3b85
Enable Sphinx spellcheck for doc generation (#10280) 2020-08-12 21:30:37 +01:00
Kaxil Naik 69225d7f9d
Add 'apache.beam' to docs/installation.rst (#10244)
Also replace `'apache_beam'` to `apache.beam` for extras
2020-08-08 18:34:18 +02:00
Tomek Urbaszek 010322692e
Improve handling Dataproc cluster creation with ERROR state (#9593)
Handle cluster in DELETING state

Extend tests

fixup! Extend tests

fixup! fixup! Extend tests

fixup! fixup! fixup! Extend tests
2020-08-06 10:31:35 +02:00
Jarek Potiuk 86d8e349b4
Status of quarantined tests is stored in Github Issue (#10119) 2020-08-03 20:01:00 +02:00
Jarek Potiuk 082e6c11aa
Get rid of pydruid limitation (#9965)
Pydruid version 0.5.8 failed on python 3.7 but pydruid 0.5.11
fixed it apparently.
2020-08-03 09:28:29 +02:00
Felix Uellendall 30b0aec120
Pin google-cloud-kms to ..,<2.0.0 due to breaking changes (#10088) 2020-08-01 16:10:15 +02:00
Felix Uellendall 2e0d91d8eb
Set pytest version to be < 6.0.0 due to breaking changes (#10043)
The latest pytest version 6.0.0 released yesterday (2020-07-28) 
does not work in conjunction with the version of pylint (2.4.3) we 
are using.
2020-07-29 10:45:34 +02:00
Kamil Breguła c70c38e9ef
Move e-mail operator to core (#10013) 2020-07-29 00:27:12 +02:00
Jarek Potiuk 2f73974402
Revert "Bump mysqlclient to 2.0.1 (#9987)" (#9997)
This reverts commit c4388127f1.
2020-07-25 12:19:19 +02:00
Kaxil Naik c4388127f1
Bump mysqlclient to 2.0.1 (#9987)
mysqlclient was pinned as the functionality of Connection object of MySQL had changed and that it dropped python2.

mysqlclient has added context manager interface to Connection which closes the connection on `__exit__` in 2.0.0 and Airflow Master no longer uses Python 2
2020-07-25 09:40:11 +02:00
Kaxil Naik 926aa1ba3a
Relax requirement to allow latest version of tenacity (#9992) 2020-07-25 09:37:53 +02:00
Kaxil Naik 76c60afc81
Relax requirement to allow latest version of jinja2 (#9991)
The latest available version of jinja2 is 2.11.2

Fixes in 2.11.2: https://github.com/pallets/jinja/blob/master/CHANGES.rst#version-2112
2020-07-25 09:37:12 +02:00
Kaxil Naik 7cafa59927
Relax requirement to allow latest version of flask-caching (#9989)
Current available version is 1.9.0
2020-07-25 09:35:15 +02:00
Kaxil Naik 47cab5fbeb
Bump tableauserverclient to 0.12 (#9988) 2020-07-25 09:34:15 +02:00
Ephraim Anierobi 560e0b504b
Pin google-cloud-container to <2 (#9901) 2020-07-20 22:56:37 +01:00
Kamil Breguła 4a547ee109
Add API Reference docs (redoc) to sphinx (#9806) 2020-07-15 12:18:16 +02:00
yongheng.liu a2c5389a60
Add kylin operator (#9149)
Co-authored-by: yongheng.liu <yongheng.liu@kyligence.io>
2020-07-14 18:25:05 +02:00
QP Hou 98f06ea10c
Make airflow package type check compatible (#9791) 2020-07-14 08:47:09 +02:00
Ephraim Anierobi e764ea5811
Update FlaskAppBuilder to v3 (#9648) 2020-07-06 20:45:13 +02:00
Jarek Potiuk f5e67eb98f
Revert "Update some dependencies (#9684)" (#9693)
This reverts commit fd62b1c526.
2020-07-06 15:26:58 +02:00
Hartorn fd62b1c526
Update some dependencies (#9684) 2020-07-06 13:04:35 +02:00
Kamil Breguła 48a8316646
Fix quarantined tests - TestCliWebServer (#9598) 2020-07-01 15:12:47 +01:00
Kaxil Naik c420dbd6e1
Bump Pylint to 2.5.3 (#9294) 2020-06-27 18:19:21 +01:00
Tomek Urbaszek 5eb2808da1
Add read-only Task endpoint (#9330)
Add API endpoints for tasks and DAG details

Co-authored-by: Kamil Breguła <kamil.bregula@polidea.com>
2020-06-25 12:11:11 +02:00
Kaxil Naik 7c587dc486
Replace deprecated wtforms HTMLString with markupsafe.MarkUp (#9487)
WTForms uses `MarkUp` to escape strings now and removed their internal class HTMLString in Master. Details: https://github.com/wtforms/wtforms/pull/400

That change previously broke Airflow for new users (in 2.3.0). However on users request they added `HTMLString` that just passes all args to `markupsafe.MarkUp` back for temporary Backward compatbility with deprecation warning in 2.3.1. Details: https://github.com/wtforms/wtforms/issues/581
2020-06-23 22:27:23 +01:00
Kaxil Naik 5b820a76e4
Add copy button to Code Blocks in Airflow Docs (#9450) 2020-06-20 21:03:49 +01:00
Kamil Breguła 0cfa766747
Unpin Apache Beam (#9390) 2020-06-19 10:03:29 +02:00
Ash Berlin-Taylor bfe1d6b1aa
Correctly restore colour in logs after format arg (#9222)
The "\e[22m" escape sequence has been tested on Konsole, iTerm2 and
Terminal.app
2020-06-11 11:50:33 +01:00
crhyatt c41192fa1f
Upgrade pendulum to latest major version ~2.0 (#9184) 2020-06-10 17:12:27 +02:00
Kamil Breguła 6d4972a0a7
Remove httplib2 from Google requirements (#9194)
* Remove httplib2 from Google requirements

* fixup! Remove httplib2 from Google requirements
2020-06-09 20:33:17 +02:00
James Timmins 5918efc86a
Add 3.8 to the test matrices (#8836) 2020-06-05 18:39:28 +01:00
Ash Berlin-Taylor 2580b049cf
Remove vendored nvd3 and slugify libraries (#9136)
We pulled in them because slugify _used_ to default to the GPL'd
`unidecode` module, but since Slugify 3.0[1] it has used text-unidecode
by first (and only installs the GPL library by an optional extra, not by
default) so we can now use it.

This lets us upgreade text-unidecode from 1.2 to the latest 1.3, which
is the version one of dbt's dependencies needs.

[1]: https://github.com/un33k/python-slugify/blob/4.0.0/CHANGELOG.md#300
2020-06-04 15:45:29 +01:00
Ash Berlin-Taylor aa8990031d
Restrict google-cloud-texttospeach to <v2 (#9137)
Version 2 of this library causes the following pylint errors:

> airflow/providers/google/cloud/hooks/text_to_speech.py:59:27: E1123: Unexpected keyword argument 'client_info' in constructor call (unexpected-keyword-arg)
> airflow/providers/google/cloud/hooks/text_to_speech.py:99:15: E1123: Unexpected keyword argument 'input_' in method call (unexpected-keyword-arg)
2020-06-04 14:15:24 +01:00
Kamil Breguła 67379d1d9e
Add fudament for API based on connexion (#8149) 2020-06-02 18:45:37 +02:00