| |
| |
| |
| |
| <!DOCTYPE html> |
| <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]--> |
| <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]--> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <meta charset="utf-8" /> |
| <meta name="viewport" content="width=device-width, initial-scale=1"> |
| <title>Changelog — Airflow Documentation</title> |
| <link rel="stylesheet" href="_static/_gen/css/main.min.css" type="text/css" /> |
| <link rel="stylesheet" type="text/css" href="_static/copybutton.css" /> |
| <link rel="stylesheet" type="text/css" href="_static/_gen/css/main-custom.min.css" /> |
| <link rel="stylesheet" type="text/css" href="_static/graphviz.css" /> |
| <link rel="shortcut icon" href="_static/pin_32.png"/> |
| <link rel="index" title="Index" href="genindex.html" /> |
| <link rel="search" title="Search" href="search.html" /> |
| <link rel="next" title="Best Practices" href="best-practices.html" /> |
| <link rel="prev" title="Airflow's release process" href="release-process.html" /> |
| <script type="application/javascript"> |
| var doNotTrack = false; |
| window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; |
| ga('create', 'UA-140539454-1', 'auto'); |
| ga('send', 'pageview'); |
| </script> |
| <script async src='https://www.google-analytics.com/analytics.js'></script> |
| |
| |
| </head><body class="td-section"> |
| |
| |
| <header> |
| |
| <nav class="js-navbar-scroll navbar"> |
| <div class="navbar__icon-container"> |
| <a href="/"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="155.314" height="60" viewBox="0 0 155.314 60"> |
| <defs> |
| <clipPath id="clip-path"> |
| <path id="Rectangle_1" d="M0 0h155.314v60H0z" fill="none" data-name="Rectangle 1"></path> |
| </clipPath> |
| </defs> |
| <g id="logo" transform="translate(-1305 -780.355)"> |
| <g id="Group_2" clip-path="url(#clip-path)" data-name="Group 2" transform="translate(1305 780.355)"> |
| <g id="Group_1" data-name="Group 1" transform="translate(.486 .486)"> |
| <path id="Path_1" d="M1307.562 880.867l28.187-28.893a.521.521 0 0 0 .063-.666c-1.714-2.393-4.877-2.808-6.049-4.416-3.472-4.763-4.353-7.459-5.845-7.292a.456.456 0 0 0-.271.143l-10.182 10.438c-5.858 6-6.7 19.225-6.852 30.3a.552.552 0 0 0 .949.386z" fill="#017cee" data-name="Path 1" transform="translate(-1306.613 -822.232)"></path> |
| <path id="Path_2" d="M1405.512 908.489l-28.893-28.189a.521.521 0 0 0-.667-.063c-2.393 1.715-2.808 4.877-4.416 6.049-4.763 3.472-7.459 4.353-7.292 5.845a.456.456 0 0 0 .143.27l10.438 10.182c6 5.858 19.225 6.7 30.3 6.852a.552.552 0 0 0 .387-.946z" fill="#00ad46" data-name="Path 2" transform="translate(-1346.876 -850.567)"></path> |
| <path id="Path_3" d="M1373.909 902.252c-3.28-3.2-4.8-9.53 1.486-22.583-10.219 4.567-13.8 10.57-12.039 12.289z" fill="#04d659" data-name="Path 3" transform="translate(-1345.96 -850.233)"></path> |
| <path id="Path_4" d="M1433.132 782.359l-28.186 28.893a.52.52 0 0 0-.063.666c1.715 2.393 4.876 2.808 6.049 4.416 3.472 4.763 4.354 7.459 5.845 7.292a.454.454 0 0 0 .271-.143l10.182-10.438c5.858-6 6.7-19.225 6.852-30.3a.553.553 0 0 0-.95-.386z" fill="#00c7d4" data-name="Path 4" transform="translate(-1375.21 -782.123)"></path> |
| <path id="Path_5" d="M1426.9 881.155c-3.2 3.28-9.53 4.8-22.584-1.486 4.567 10.219 10.57 13.8 12.289 12.039z" fill="#11e1ee" data-name="Path 5" transform="translate(-1374.875 -850.233)"></path> |
| <path id="Path_6" d="M1307 782.919l28.893 28.186a.521.521 0 0 0 .666.063c2.393-1.715 2.808-4.877 4.416-6.049 4.763-3.472 7.459-4.353 7.292-5.845a.459.459 0 0 0-.143-.271l-10.438-10.182c-6-5.858-19.225-6.7-30.3-6.852a.552.552 0 0 0-.386.95z" fill="#e43921" data-name="Path 6" transform="translate(-1306.766 -781.97)"></path> |
| <path id="Path_7" d="M1405.8 804.711c3.28 3.2 4.8 9.53-1.486 22.584 10.219-4.567 13.8-10.571 12.039-12.289z" fill-rule="evenodd" fill="#ff7557" data-name="Path 7" transform="translate(-1374.875 -797.859)"></path> |
| <path id="Path_8" d="M1329.355 849.266c3.2-3.28 9.53-4.8 22.584 1.486-4.567-10.219-10.57-13.8-12.289-12.039z" fill="#0cb6ff" data-name="Path 8" transform="translate(-1322.503 -821.316)"></path> |
| <circle id="Ellipse_1" cx="1.26" cy="1.26" r="1.26" fill="#4a4848" data-name="Ellipse 1" transform="translate(28.18 28.171)"></circle> |
| <path id="Path_9" d="M1527.558 827.347a.229.229 0 0 1-.223-.223.458.458 0 0 1 .011-.123l2.766-7.214a.346.346 0 0 1 .357-.245h.758a.348.348 0 0 1 .357.245l2.754 7.214.022.123a.228.228 0 0 1-.223.223h-.568a.288.288 0 0 1-.19-.056.352.352 0 0 1-.089-.134l-.613-1.583h-3.657l-.613 1.583a.317.317 0 0 1-.1.134.269.269 0 0 1-.178.056zm4.795-2.732l-1.505-3.958-1.505 3.958zm3.322 4.85a.258.258 0 0 1-.189-.078.241.241 0 0 1-.067-.178v-7.4a.241.241 0 0 1 .067-.178.258.258 0 0 1 .189-.078h.513a.268.268 0 0 1 .256.256v.49a2.118 2.118 0 0 1 1.828-.858 2.092 2.092 0 0 1 1.751.736 3.135 3.135 0 0 1 .636 1.9q.011.122.011.379t-.011.379a3.168 3.168 0 0 1-.636 1.9 2.111 2.111 0 0 1-1.751.736 2.154 2.154 0 0 1-1.806-.836v2.587a.241.241 0 0 1-.067.178.223.223 0 0 1-.179.078zm2.364-2.91a1.324 1.324 0 0 0 1.149-.491 2.266 2.266 0 0 0 .4-1.293q.011-.111.011-.323 0-2.107-1.562-2.107a1.365 1.365 0 0 0-1.159.513 2.111 2.111 0 0 0-.412 1.2l-.012.424.012.435a1.862 1.862 0 0 0 .424 1.149 1.4 1.4 0 0 0 1.148.493zm5.628.9a2.329 2.329 0 0 1-1.015-.223 1.94 1.94 0 0 1-.747-.6 1.487 1.487 0 0 1-.268-.859 1.459 1.459 0 0 1 .6-1.2 3.4 3.4 0 0 1 1.65-.624l1.661-.234v-.323q0-1.137-1.3-1.137a1.4 1.4 0 0 0-.8.212 1.376 1.376 0 0 0-.468.48.305.305 0 0 1-.089.145.18.18 0 0 1-.134.045h-.48a.23.23 0 0 1-.245-.245 1.17 1.17 0 0 1 .245-.6 1.931 1.931 0 0 1 .747-.591 2.7 2.7 0 0 1 1.238-.256 2.351 2.351 0 0 1 1.8.591 2.032 2.032 0 0 1 .547 1.45v3.613a.257.257 0 0 1-.078.19.24.24 0 0 1-.178.067h-.513a.233.233 0 0 1-.257-.256v-.479a1.923 1.923 0 0 1-.714.6 2.557 2.557 0 0 1-1.203.237zm.234-.836a1.579 1.579 0 0 0 1.182-.469 1.881 1.881 0 0 0 .468-1.371v-.312l-1.293.19a2.918 2.918 0 0 0-1.193.379.761.761 0 0 0-.4.658.784.784 0 0 0 .368.691 1.585 1.585 0 0 0 .867.237zm6.643.836a2.556 2.556 0 0 1-1.873-.669 2.738 2.738 0 0 1-.714-1.9l-.011-.446.011-.446a2.7 2.7 0 0 1 .714-1.885 2.531 2.531 0 0 1 1.873-.68 2.917 2.917 0 0 1 1.36.29 2.077 2.077 0 0 1 .825.714 1.7 1.7 0 0 1 .3.848.2.2 0 0 1-.067.178.281.281 0 0 1-.19.067h-.535a.265.265 0 0 1-.168-.045.458.458 0 0 1-.111-.178 1.428 1.428 0 0 0-.535-.758 1.516 1.516 0 0 0-.87-.234 1.45 1.45 0 0 0-1.1.435 1.952 1.952 0 0 0-.435 1.3l-.011.4.011.379a1.969 1.969 0 0 0 .435 1.316 1.446 1.446 0 0 0 1.1.424 1.577 1.577 0 0 0 .87-.223 1.493 1.493 0 0 0 .535-.769.458.458 0 0 1 .111-.178.228.228 0 0 1 .168-.056h.535a.258.258 0 0 1 .19.078.2.2 0 0 1 .067.178 1.75 1.75 0 0 1-.3.847 2.078 2.078 0 0 1-.825.714 2.876 2.876 0 0 1-1.361.302zm4.078-.112a.233.233 0 0 1-.257-.256v-7.4a.241.241 0 0 1 .067-.178.259.259 0 0 1 .19-.078h.557a.267.267 0 0 1 .257.256v2.6a2.167 2.167 0 0 1 .758-.624 2.353 2.353 0 0 1 1.082-.223 2.067 2.067 0 0 1 1.661.691 2.642 2.642 0 0 1 .6 1.818v3.144a.257.257 0 0 1-.078.19.24.24 0 0 1-.178.067h-.557a.233.233 0 0 1-.256-.256V824a1.775 1.775 0 0 0-.39-1.227 1.387 1.387 0 0 0-1.1-.435 1.481 1.481 0 0 0-1.126.446 1.7 1.7 0 0 0-.412 1.215v3.088a.257.257 0 0 1-.078.19.24.24 0 0 1-.178.067zm8.846.112a2.466 2.466 0 0 1-1.84-.7 2.938 2.938 0 0 1-.747-1.94l-.011-.379.011-.368a2.953 2.953 0 0 1 .758-1.918 2.7 2.7 0 0 1 3.735.078 3.114 3.114 0 0 1 .68 2.119v.19a.257.257 0 0 1-.078.189.241.241 0 0 1-.178.067h-3.858v.1a2.11 2.11 0 0 0 .435 1.238 1.332 1.332 0 0 0 1.081.5 1.563 1.563 0 0 0 .836-.2 1.7 1.7 0 0 0 .491-.435.6.6 0 0 1 .145-.156.391.391 0 0 1 .19-.033h.547a.252.252 0 0 1 .167.056.192.192 0 0 1 .067.156.975.975 0 0 1-.312.591 2.51 2.51 0 0 1-.859.6 3.049 3.049 0 0 1-1.26.248zm1.527-3.434v-.033a1.817 1.817 0 0 0-.424-1.249 1.512 1.512 0 0 0-2.23 0 1.883 1.883 0 0 0-.4 1.249v.033z" fill="#51504f" data-name="Path 9" transform="translate(-1460.834 -808.144)"></path> |
| <path id="Path_10" d="M1527.2 827.081l-.061.061zm-.056-.279l-.08-.031zm2.766-7.214l.08.031zm1.472 0l-.081.029zm2.754 7.214l.084-.015a.064.064 0 0 0 0-.015zm.022.123h.086v-.015zm-.067.156l.06.061zm-.914.011l-.061.061.006.005zm-.089-.134l.081-.027zm-.613-1.583l.08-.031a.086.086 0 0 0-.08-.055zm-3.657 0v-.086a.086.086 0 0 0-.08.055zm-.613 1.583l-.08-.031zm-.1.134l.055.066zm4.047-2.676v.086a.086.086 0 0 0 .08-.116zm-1.505-3.958l.08-.03a.086.086 0 0 0-.16 0zm-1.505 3.958l-.08-.03a.086.086 0 0 0 .08.116zm-1.784 2.646a.128.128 0 0 1-.1-.042l-.122.121a.3.3 0 0 0 .217.092zm-.1-.042a.129.129 0 0 1-.042-.1h-.171a.3.3 0 0 0 .092.217zm-.042-.1a.38.38 0 0 1 .007-.1l-.163-.054a.514.514 0 0 0-.016.15zm.005-.092l2.765-7.214-.16-.061-2.765 7.214zm2.766-7.216a.283.283 0 0 1 .1-.143.3.3 0 0 1 .174-.046v-.172a.47.47 0 0 0-.271.076.453.453 0 0 0-.166.226zm.276-.189h.758v-.172h-.758zm.758 0a.3.3 0 0 1 .175.046.283.283 0 0 1 .1.143l.161-.059a.451.451 0 0 0-.166-.226.47.47 0 0 0-.272-.076zm.277.19l2.754 7.214.16-.061-2.754-7.214zm2.75 7.2l.022.123.169-.031-.022-.123zm.021.107a.13.13 0 0 1-.042.1l.121.121a.3.3 0 0 0 .092-.217zm-.042.1a.13.13 0 0 1-.1.042v.171a.3.3 0 0 0 .217-.092zm-.1.042h-.568v.171h.568zm-.568 0a.206.206 0 0 1-.135-.036l-.11.132a.373.373 0 0 0 .245.076zm-.129-.031a.262.262 0 0 1-.069-.1l-.162.054a.431.431 0 0 0 .11.167zm-.07-.1l-.613-1.584-.16.062.613 1.583zm-.693-1.638h-3.657v.171h3.657zm-3.737.055l-.614 1.584.16.062.613-1.583zm-.615 1.587a.235.235 0 0 1-.075.1l.111.13a.4.4 0 0 0 .126-.172zm-.074.1a.185.185 0 0 1-.124.036v.171a.354.354 0 0 0 .233-.076zm-.124.036h-.569v.171h.569zm4.306-2.677l-1.505-3.958-.16.061 1.505 3.958zm-1.666-3.958l-1.505 3.958.16.061 1.505-3.958zm-1.425 4.075h3.01v-.171h-3.01zm6.143 4.687l-.06.061zm0-7.761l.061.061zm.881 0l-.065.056.01.009zm.078.669h-.086a.086.086 0 0 0 .155.051zm3.579-.123l-.067.053zm.636 1.9h-.086zm0 .758l-.085-.007zm-.636 1.9l.067.054zm-3.557-.1l.068-.052a.086.086 0 0 0-.154.052zm-.067 2.765l-.061-.06zm2.787-3.323l-.069-.051zm.4-1.293l-.085-.008v.005zm-2.709-1.918l-.068-.052zm-.413 1.2h-.086zm-.011.423h-.085zm.011.435h-.086zm.424 1.149l.066-.054zm-1.216 3.315a.173.173 0 0 1-.129-.053l-.121.121a.342.342 0 0 0 .25.1zm-.129-.053a.157.157 0 0 1-.042-.118h-.172a.325.325 0 0 0 .092.239zm-.042-.118v-7.4h-.172v7.4zm0-7.4a.157.157 0 0 1 .042-.118l-.121-.121a.324.324 0 0 0-.092.239zm.042-.118a.173.173 0 0 1 .129-.053v-.172a.342.342 0 0 0-.25.1zm.129-.053h.513v-.172h-.513zm.513 0a.137.137 0 0 1 .113.048l.13-.111a.309.309 0 0 0-.244-.108zm.123.058a.137.137 0 0 1 .048.113h.171a.309.309 0 0 0-.108-.243zm.048.113v.49h.171v-.49zm.155.541a2.033 2.033 0 0 1 1.759-.823v-.171a2.2 2.2 0 0 0-1.9.894zm1.759-.823a2.007 2.007 0 0 1 1.683.7l.135-.106a2.177 2.177 0 0 0-1.818-.768zm1.683.7a3.045 3.045 0 0 1 .617 1.845l.171-.007a3.218 3.218 0 0 0-.654-1.946zm.617 1.85c.007.078.011.2.011.372h.171c0-.171 0-.3-.012-.387zm.011.372c0 .171 0 .294-.011.372l.17.015c.008-.086.012-.216.012-.387zm-.011.376a3.08 3.08 0 0 1-.617 1.846l.134.106a3.25 3.25 0 0 0 .654-1.945zm-.617 1.845a2.025 2.025 0 0 1-1.683.7v.171a2.2 2.2 0 0 0 1.817-.768zm-1.683.7a2.068 2.068 0 0 1-1.739-.8l-.136.1a2.239 2.239 0 0 0 1.874.87zm-1.892-.75v2.587h.172v-2.587zm0 2.587a.156.156 0 0 1-.042.118l.121.121a.325.325 0 0 0 .092-.239zm-.046.123a.138.138 0 0 1-.114.048v.172a.308.308 0 0 0 .244-.108zm-.114.048h-.546v.172h.546zm1.817-2.739a1.408 1.408 0 0 0 1.218-.526l-.138-.1a1.24 1.24 0 0 1-1.079.455zm1.217-.525a2.355 2.355 0 0 0 .419-1.341l-.171-.007a2.182 2.182 0 0 1-.385 1.246zm.418-1.336c.008-.079.012-.19.012-.332h-.172c0 .14 0 .245-.011.315zm.012-.332a2.726 2.726 0 0 0-.407-1.632 1.448 1.448 0 0 0-1.24-.562v.171a1.278 1.278 0 0 1 1.1.492 2.565 2.565 0 0 1 .374 1.53zm-1.647-2.193a1.452 1.452 0 0 0-1.228.547l.136.1a1.282 1.282 0 0 1 1.091-.479zm-1.228.547a2.2 2.2 0 0 0-.43 1.252l.172.008a2.028 2.028 0 0 1 .4-1.157zm-.43 1.254l-.011.424h.171l.011-.424zm-.011.428l.011.435h.172l-.011-.435zm.011.436a1.95 1.95 0 0 0 .443 1.2l.133-.109a1.776 1.776 0 0 1-.4-1.1zm.443 1.2a1.484 1.484 0 0 0 1.214.522v-.171a1.314 1.314 0 0 1-1.082-.459zm5.828 1.117l.037-.077zm-.747-.6l-.07.049zm.335-2.063l.052.068zm1.65-.624l.012.085zm1.661-.234l.012.085a.086.086 0 0 0 .074-.085zm-2.107-1.249l.046.072zm-.468.48l-.075-.042a.083.083 0 0 0-.006.015zm-.089.145l-.054-.067-.007.006zm-.792-.022l-.065.056.009.009zm-.067-.178h-.086zm.245-.6l-.07-.049zm.747-.591l.038.077zm3.033.334l-.063.058zm.468 5.252l.06.061zm-.881 0l-.065.056a.043.043 0 0 0 .009.009zm-.067-.669h.086a.086.086 0 0 0-.156-.048zm-.714.6l-.04-.076zm.223-1.059l-.062-.06zm.468-1.684h.086a.086.086 0 0 0-.1-.085zm-1.293.189l.012.085zm-1.193.379l.046.072zm-.033 1.349l-.047.071zm.635.985a2.241 2.241 0 0 1-.978-.215l-.074.155a2.412 2.412 0 0 0 1.051.231zm-.978-.215a1.859 1.859 0 0 1-.715-.576l-.138.1a2.024 2.024 0 0 0 .779.629zm-.713-.573a1.4 1.4 0 0 1-.253-.81h-.172a1.571 1.571 0 0 0 .283.907zm-.253-.81a1.374 1.374 0 0 1 .569-1.136l-.105-.135a1.544 1.544 0 0 0-.635 1.272zm.569-1.137a3.316 3.316 0 0 1 1.609-.607l-.024-.17a3.481 3.481 0 0 0-1.691.642zm1.609-.607l1.661-.234-.024-.17-1.662.234zm1.735-.319v-.323h-.171v.323zm0-.323a1.156 1.156 0 0 0-.355-.917 1.536 1.536 0 0 0-1.035-.306v.172a1.37 1.37 0 0 1 .922.263.986.986 0 0 1 .3.788zm-1.39-1.223a1.486 1.486 0 0 0-.851.227l.1.142a1.316 1.316 0 0 1 .755-.2zm-.849.226a1.452 1.452 0 0 0-.5.51l.15.084a1.286 1.286 0 0 1 .44-.449zm-.5.524a.226.226 0 0 1-.062.105l.107.134a.391.391 0 0 0 .117-.185zm-.068.112a.1.1 0 0 1-.073.019v.171a.266.266 0 0 0 .194-.07zm-.073.019h-.48v.171h.48zm-.48 0a.18.18 0 0 1-.122-.046l-.112.13a.352.352 0 0 0 .234.087zm-.113-.037a.18.18 0 0 1-.047-.123h-.171a.352.352 0 0 0 .087.234zm-.047-.119a1.1 1.1 0 0 1 .23-.557l-.14-.1a1.253 1.253 0 0 0-.261.648zm.23-.556a1.843 1.843 0 0 1 .715-.564l-.075-.154a2.018 2.018 0 0 0-.78.618zm.716-.564a2.611 2.611 0 0 1 1.2-.247v-.171a2.781 2.781 0 0 0-1.277.266zm1.2-.247a2.268 2.268 0 0 1 1.732.563l.126-.116a2.435 2.435 0 0 0-1.858-.618zm1.733.564a1.945 1.945 0 0 1 .523 1.391h.171a2.117 2.117 0 0 0-.57-1.508zm.523 1.391v3.613h.171v-3.613zm0 3.613a.172.172 0 0 1-.053.129l.121.121a.344.344 0 0 0 .1-.25zm-.053.129a.157.157 0 0 1-.118.042v.171a.326.326 0 0 0 .239-.092zm-.118.042h-.513v.171h.513zm-.513 0a.2.2 0 0 1-.134-.046l-.111.13a.367.367 0 0 0 .245.088zm-.124-.037a.194.194 0 0 1-.047-.134h-.171a.366.366 0 0 0 .087.245zm-.047-.134v-.479h-.171v.479zm-.156-.528a1.846 1.846 0 0 1-.683.575l.079.152a2.012 2.012 0 0 0 .745-.629zm-.683.575a2.476 2.476 0 0 1-1.153.236v.171a2.644 2.644 0 0 0 1.233-.255zm-.919-.429a1.666 1.666 0 0 0 1.244-.494l-.123-.12a1.493 1.493 0 0 1-1.121.442zm1.244-.494a1.969 1.969 0 0 0 .492-1.431h-.171a1.8 1.8 0 0 1-.444 1.312zm.492-1.431v-.312h-.171v.312zm-.1-.4l-1.293.189.025.17 1.293-.189zm-1.293.189a3 3 0 0 0-1.228.393l.095.143a2.837 2.837 0 0 1 1.158-.365zm-1.227.392a.845.845 0 0 0-.441.73h.172a.676.676 0 0 1 .362-.586zm-.441.73a.869.869 0 0 0 .406.762l.095-.142a.7.7 0 0 1-.33-.62zm.408.764a1.673 1.673 0 0 0 .916.247v-.171a1.5 1.5 0 0 1-.823-.221zm5.686.329l-.061.06zm-.714-1.9h-.085zm-.011-.446h-.085zm.011-.446h-.085zm.714-1.885l.061.061zm3.234-.39l-.04.076zm.825.713l-.073.046zm.3.848h-.086zm-.067.178l.056.065zm-.892.022l.054-.067zm-.112-.178l-.081.029zm-.535-.758l-.048.071zm-1.974.2l-.062-.059zm-.435 1.3h-.086zm-.011.4h-.086zm.011.379h-.086zm.435 1.316l-.062.059zm1.974.2l.046.072zm.535-.769l-.079-.033zm.112-.178l.054.067.007-.006zm.892.022l-.061.06zm.067.178l-.085-.009zm-.3.847l-.072-.046zm-.825.714l-.04-.076zm-1.36.2a2.471 2.471 0 0 1-1.814-.644l-.12.122a2.64 2.64 0 0 0 1.933.694zm-1.813-.643a2.653 2.653 0 0 1-.689-1.839l-.171.006a2.822 2.822 0 0 0 .738 1.952zm-.689-1.838l-.011-.446h-.171l.011.446zm-.011-.442l.011-.446h-.171l-.011.446zm.011-.445a2.611 2.611 0 0 1 .689-1.827l-.122-.121a2.78 2.78 0 0 0-.738 1.942zm.689-1.827a2.447 2.447 0 0 1 1.813-.655v-.171a2.617 2.617 0 0 0-1.934.705zm1.813-.655a2.836 2.836 0 0 1 1.32.28l.079-.152a3 3 0 0 0-1.4-.3zm1.32.28a1.99 1.99 0 0 1 .792.683l.145-.091a2.158 2.158 0 0 0-.858-.744zm.793.685a1.617 1.617 0 0 1 .287.8l.171-.009a1.789 1.789 0 0 0-.315-.89zm.287.809a.11.11 0 0 1-.037.1l.112.13a.281.281 0 0 0 .1-.252zm-.037.1a.2.2 0 0 1-.134.046v.171a.369.369 0 0 0 .246-.088zm-.134.046h-.535v.171h.535zm-.535 0a.184.184 0 0 1-.114-.026l-.107.134a.345.345 0 0 0 .221.064zm-.114-.026a.389.389 0 0 1-.086-.144l-.158.066a.533.533 0 0 0 .137.212zm-.084-.14a1.514 1.514 0 0 0-.57-.8l-.093.144a1.343 1.343 0 0 1 .5.715zm-.568-.8a1.6 1.6 0 0 0-.918-.249v.171a1.435 1.435 0 0 1 .822.219zm-.918-.249a1.535 1.535 0 0 0-1.166.462l.124.118a1.364 1.364 0 0 1 1.042-.408zm-1.166.462a2.036 2.036 0 0 0-.458 1.36l.171.006a1.872 1.872 0 0 1 .411-1.249zm-.458 1.361l-.011.4h.171l.011-.4zm-.011.406l.011.379.171-.005-.011-.379zm.011.38a2.052 2.052 0 0 0 .458 1.371l.124-.118a1.889 1.889 0 0 1-.411-1.26zm.458 1.371a1.533 1.533 0 0 0 1.166.451v-.172a1.363 1.363 0 0 1-1.042-.4zm1.166.451a1.661 1.661 0 0 0 .916-.237l-.093-.144a1.491 1.491 0 0 1-.823.209zm.918-.238a1.576 1.576 0 0 0 .568-.812l-.162-.057a1.409 1.409 0 0 1-.5.727zm.566-.807a.39.39 0 0 1 .086-.144l-.107-.134a.533.533 0 0 0-.137.213zm.093-.151a.144.144 0 0 1 .107-.031v-.171a.31.31 0 0 0-.228.081zm.107-.031h.535v-.171h-.535zm.535 0a.173.173 0 0 1 .129.053l.121-.121a.344.344 0 0 0-.25-.1zm.134.057a.11.11 0 0 1 .037.1l.17.017a.281.281 0 0 0-.1-.252zm.037.109a1.664 1.664 0 0 1-.288.806l.144.092a1.839 1.839 0 0 0 .315-.889zm-.288.806a1.989 1.989 0 0 1-.792.683l.079.152a2.162 2.162 0 0 0 .858-.744zm-.793.684a2.8 2.8 0 0 1-1.32.28v.171a2.96 2.96 0 0 0 1.4-.3zm2.568.187l-.065.056.01.009zm0-7.772l.061.06zm.926 0l-.065.056.009.009zm.078 2.776h-.085a.086.086 0 0 0 .153.053zm.758-.624l.038.077zm2.743.468l-.065.056zm.524 5.151l-.061-.06zm-.925 0l-.065.056.009.009zm-.457-4.5l-.065.056zm-2.23.011l-.062-.059zm-.49 4.493l-.061-.06zm-.736-.019a.2.2 0 0 1-.134-.046l-.112.13a.367.367 0 0 0 .245.088zm-.124-.037a.2.2 0 0 1-.046-.134h-.172a.367.367 0 0 0 .087.245zm-.046-.134v-7.4h-.172v7.4zm0-7.4a.156.156 0 0 1 .042-.118l-.121-.121a.326.326 0 0 0-.092.239zm.042-.118a.172.172 0 0 1 .129-.053v-.171a.343.343 0 0 0-.25.1zm.129-.053h.557v-.171h-.557zm.557 0a.137.137 0 0 1 .113.048l.13-.112a.308.308 0 0 0-.244-.108zm.122.057a.137.137 0 0 1 .048.113h.172a.309.309 0 0 0-.108-.243zm.048.113v2.6h.172v-2.6zm.153 2.651a2.076 2.076 0 0 1 .728-.6l-.075-.154a2.248 2.248 0 0 0-.788.649zm.73-.6a2.272 2.272 0 0 1 1.043-.214v-.171a2.438 2.438 0 0 0-1.121.232zm1.043-.214a1.982 1.982 0 0 1 1.6.661l.13-.112a2.152 2.152 0 0 0-1.727-.721zm1.6.663a2.557 2.557 0 0 1 .581 1.761h.171a2.727 2.727 0 0 0-.624-1.874zm.581 1.761v3.144h.171v-3.144zm0 3.144a.173.173 0 0 1-.053.129l.121.121a.345.345 0 0 0 .1-.25zm-.053.129a.156.156 0 0 1-.118.042v.171a.327.327 0 0 0 .239-.092zm-.118.042h-.557v.171h.557zm-.557 0a.2.2 0 0 1-.134-.046l-.112.13a.367.367 0 0 0 .245.088zm-.124-.037a.2.2 0 0 1-.046-.134h-.172a.368.368 0 0 0 .087.245zm-.046-.134V823.8h-.172v3.088zm0-3.088a1.859 1.859 0 0 0-.412-1.284l-.128.114a1.69 1.69 0 0 1 .368 1.169zm-.411-1.283a1.471 1.471 0 0 0-1.169-.464v.171a1.3 1.3 0 0 1 1.039.406zm-1.169-.464a1.566 1.566 0 0 0-1.188.473l.124.118a1.4 1.4 0 0 1 1.064-.419zm-1.188.473a1.779 1.779 0 0 0-.436 1.275h.172a1.609 1.609 0 0 1 .389-1.156zm-.436 1.275v3.088h.172V823.8zm0 3.088a.172.172 0 0 1-.053.129l.121.121a.344.344 0 0 0 .1-.25zm-.053.129a.156.156 0 0 1-.118.042v.171a.327.327 0 0 0 .239-.092zm-.118.042h-.557v.171h.557zm6.449-.505l-.062.059zm-.747-1.94h-.086zm-.012-.379h-.085v.005zm.012-.368l-.086-.006zm.758-1.918l-.061-.06zm3.735.078l-.065.056zm.6 2.5l.061.061zm-4.036.067v-.086a.086.086 0 0 0-.086.086zm0 .1h-.086zm.435 1.238l-.068.053zm1.918.3l.045.073zm.491-.435l-.069-.051zm.145-.156l.039.077h.006zm.9.022l-.055.066zm-.245.747l-.064-.057zm-.858.6l.035.078zm.267-3.189v.086a.086.086 0 0 0 .086-.086zm-.424-1.282l-.066.055zm-2.23 0l-.065-.055zm-.4 1.282h-.086a.086.086 0 0 0 .086.086zm1.528 3.349a2.38 2.38 0 0 1-1.779-.677l-.122.12a2.55 2.55 0 0 0 1.9.728zm-1.778-.676a2.86 2.86 0 0 1-.724-1.886l-.171.009a3.027 3.027 0 0 0 .771 1.995zm-.723-1.884l-.011-.379h-.171l.011.379zm-.011-.374l.011-.368-.172-.005-.011.368zm.011-.365a2.871 2.871 0 0 1 .735-1.864l-.124-.118a3.042 3.042 0 0 0-.782 1.971zm.734-1.864a2.331 2.331 0 0 1 1.756-.687v-.171a2.5 2.5 0 0 0-1.879.74zm1.756-.687a2.307 2.307 0 0 1 1.853.762l.13-.112a2.477 2.477 0 0 0-1.983-.821zm1.854.762a3.03 3.03 0 0 1 .659 2.062h.172a3.2 3.2 0 0 0-.7-2.175zm.659 2.062v.19h.172v-.19zm0 .19a.172.172 0 0 1-.053.129l.121.121a.345.345 0 0 0 .1-.25zm-.053.129a.156.156 0 0 1-.118.042v.171a.327.327 0 0 0 .239-.092zm-.118.042h-3.858v.171h3.858zm-3.944.086v.1h.172v-.1zm0 .1a2.2 2.2 0 0 0 .453 1.287l.135-.106a2.027 2.027 0 0 1-.417-1.189zm.454 1.288a1.418 1.418 0 0 0 1.148.533v-.171a1.247 1.247 0 0 1-1.015-.47zm1.148.533a1.647 1.647 0 0 0 .882-.214l-.09-.146a1.481 1.481 0 0 1-.791.188zm.882-.214a1.777 1.777 0 0 0 .515-.458l-.14-.1a1.613 1.613 0 0 1-.466.412zm.513-.456a1.251 1.251 0 0 1 .081-.1.28.28 0 0 1 .026-.025l.008-.006-.077-.153a.326.326 0 0 0-.083.068 1.55 1.55 0 0 0-.092.113zm.12-.134a.328.328 0 0 1 .146-.021v-.171a.468.468 0 0 0-.234.046zm.146-.021h.547v-.171h-.547zm.547 0a.166.166 0 0 1 .112.036l.11-.132a.337.337 0 0 0-.222-.076zm.112.036a.107.107 0 0 1 .036.09h.171a.277.277 0 0 0-.1-.222zm.036.09a.9.9 0 0 1-.291.534l.128.115a1.055 1.055 0 0 0 .334-.649zm-.291.535a2.42 2.42 0 0 1-.83.581l.072.156a2.6 2.6 0 0 0 .888-.624zm-.829.58a2.964 2.964 0 0 1-1.224.238v.171a3.133 3.133 0 0 0 1.295-.253zm.389-3.111v-.033h-.171v.033zm0-.033a1.9 1.9 0 0 0-.445-1.306l-.129.114a1.731 1.731 0 0 1 .4 1.192zm-.444-1.3a1.466 1.466 0 0 0-1.181-.521v.172a1.3 1.3 0 0 1 1.049.46zm-1.181-.521a1.466 1.466 0 0 0-1.18.521l.131.11a1.3 1.3 0 0 1 1.049-.46zm-1.181.521a1.965 1.965 0 0 0-.422 1.3h.172a1.794 1.794 0 0 1 .382-1.194zm-.422 1.3v.033h.172v-.033zm.086.119h3.055v-.171h-3.055z" fill="#51504f" data-name="Path 10" transform="translate(-1460.636 -807.945)"></path> |
| <path id="Path_11" d="M1519.066 884.011a.581.581 0 0 1-.567-.567 1.151 1.151 0 0 1 .028-.312l7.026-18.328a.881.881 0 0 1 .906-.623h1.926a.882.882 0 0 1 .907.623l7 18.328.057.312a.583.583 0 0 1-.567.567h-1.445a.735.735 0 0 1-.482-.142.9.9 0 0 1-.226-.34l-1.558-4.023h-9.292l-1.558 4.023a.8.8 0 0 1-.255.34.688.688 0 0 1-.453.142zm12.181-6.94l-3.824-10.056-3.823 10.055zm8.184-10.538a.592.592 0 0 1-.652-.651v-1.53a.714.714 0 0 1 .17-.482.656.656 0 0 1 .482-.2h1.785a.677.677 0 0 1 .68.68v1.53a.655.655 0 0 1-.2.481.713.713 0 0 1-.481.17zm.227 17.479a.593.593 0 0 1-.652-.652v-13.428a.611.611 0 0 1 .17-.453.656.656 0 0 1 .482-.2h1.359a.679.679 0 0 1 .652.651v13.427a.655.655 0 0 1-.2.482.613.613 0 0 1-.453.17zm6.861 0a.592.592 0 0 1-.651-.652v-13.4a.715.715 0 0 1 .17-.481.656.656 0 0 1 .482-.2h1.3a.677.677 0 0 1 .68.68v1.246a4.255 4.255 0 0 1 3.966-1.926h1.1a.679.679 0 0 1 .651.651v1.161a.566.566 0 0 1-.2.453.612.612 0 0 1-.453.17h-1.7a3.2 3.2 0 0 0-2.408.907 3.253 3.253 0 0 0-.879 2.408v8.328a.656.656 0 0 1-.2.482.716.716 0 0 1-.482.17zm12.234 0a.593.593 0 0 1-.651-.652v-11.814h-2.408a.592.592 0 0 1-.651-.651v-.963a.611.611 0 0 1 .17-.453.654.654 0 0 1 .481-.2h2.408v-1.417q0-4.816 4.872-4.815h1.586a.679.679 0 0 1 .652.651v.963a.656.656 0 0 1-.2.481.613.613 0 0 1-.453.17h-1.529a2.1 2.1 0 0 0-1.785.68 3.248 3.248 0 0 0-.51 2.011v1.275h6.062V863.7a.613.613 0 0 1 .17-.453.656.656 0 0 1 .482-.2h1.3a.679.679 0 0 1 .652.651v19.659a.655.655 0 0 1-.2.482.613.613 0 0 1-.454.17h-1.3a.592.592 0 0 1-.652-.652v-11.811h-6.062v11.813a.657.657 0 0 1-.2.482.614.614 0 0 1-.454.17zm20.9.283a6.487 6.487 0 0 1-4.844-1.757 6.837 6.837 0 0 1-1.813-4.674l-.029-1.218.029-1.218a6.732 6.732 0 0 1 1.841-4.646 7.389 7.389 0 0 1 9.631 0 6.736 6.736 0 0 1 1.841 4.646q.028.311.028 1.218t-.028 1.218a6.772 6.772 0 0 1-1.841 4.674 6.391 6.391 0 0 1-4.82 1.756zm0-2.181a3.582 3.582 0 0 0 2.8-1.133 4.931 4.931 0 0 0 1.133-3.258q.028-.283.028-1.076t-.028-1.076a4.931 4.931 0 0 0-1.133-3.258 3.582 3.582 0 0 0-2.8-1.133 3.671 3.671 0 0 0-2.833 1.133 4.83 4.83 0 0 0-1.1 3.258l-.028 1.076.028 1.076a4.83 4.83 0 0 0 1.1 3.258 3.671 3.671 0 0 0 2.828 1.132zm13.755 1.9a.846.846 0 0 1-.566-.17 1.321 1.321 0 0 1-.34-.538l-4.023-13.144-.056-.283a.575.575 0 0 1 .17-.425.641.641 0 0 1 .425-.17h1.246a.612.612 0 0 1 .453.17.646.646 0 0 1 .255.312l3.145 10.679 3.371-10.566a.761.761 0 0 1 .255-.4.726.726 0 0 1 .538-.2h.963a.728.728 0 0 1 .539.2.76.76 0 0 1 .255.4l3.371 10.566 3.144-10.679a.655.655 0 0 1 .2-.312.714.714 0 0 1 .482-.17h1.275a.542.542 0 0 1 .4.17.576.576 0 0 1 .17.425l-.057.283-3.994 13.144a1.323 1.323 0 0 1-.34.538.9.9 0 0 1-.6.17h-1.1a.86.86 0 0 1-.935-.708l-3.286-10.141-3.286 10.141a.928.928 0 0 1-.963.708z" fill="#51504f" data-name="Path 11" transform="translate(-1454.66 -838.62)"></path> |
| </g> |
| </g> |
| </g> |
| </svg> |
| |
| </a> |
| </div> |
| <div class="desktop-only navbar__menu-container"> |
| |
| <div class="navbar__menu-content" id="main_navbar"> |
| |
| <div class="navbar__links-container"> |
| |
| <a class="navbar__text-link" href="/community/"> |
| Community |
| </a> |
| |
| <a class="navbar__text-link" href="/meetups/"> |
| Meetups |
| </a> |
| |
| <a class="navbar__text-link" href="/docs/"> |
| Documentation |
| </a> |
| |
| <a class="navbar__text-link" href="/use-cases/"> |
| Use-cases |
| </a> |
| |
| <a class="navbar__text-link" href="/announcements/"> |
| Announcements |
| </a> |
| |
| <a class="navbar__text-link" href="/blog/"> |
| Blog |
| </a> |
| |
| <a class="navbar__text-link" href="/ecosystem/"> |
| Ecosystem |
| </a> |
| |
| </div> |
| |
| |
| |
| </div> |
| |
| </div> |
| <div class="mobile-only navbar__drawer-container"> |
| <button class="navbar__toggle-button" id="navbar-toggle-button"> |
| |
| <div id="hamburger-icon" class="navbar__toggle-button--icon visible"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="26" height="20" viewBox="0 0 26 20"> |
| <g id="Group_1294" data-name="Group 1294" transform="translate(-38.791 291)"> |
| <g id="Group_1291" data-name="Group 1291" transform="translate(39 -291)"> |
| <rect id="Rectangle_461" width="26" height="2" fill="#51504f" data-name="Rectangle 461" rx="1" transform="translate(-.209)"></rect> |
| </g> |
| <g id="Group_1292" data-name="Group 1292" transform="translate(39 -281.822)"> |
| <rect id="Rectangle_462" width="26" height="2" fill="#51504f" data-name="Rectangle 462" rx="1" transform="translate(-.209 -.178)"></rect> |
| </g> |
| <g id="Group_1293" data-name="Group 1293" transform="translate(39 -272.644)"> |
| <rect id="Rectangle_463" width="26" height="2" fill="#51504f" data-name="Rectangle 463" rx="1" transform="translate(-.209 -.356)"></rect> |
| </g> |
| </g> |
| </svg> |
| |
| </div> |
| |
| <div id="close-icon" class="navbar__toggle-button--icon"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="19.799" height="19.799" viewBox="0 0 19.799 19.799"> |
| <g id="Group_1574" data-name="Group 1574" transform="translate(-41.892 290.899)"> |
| <g id="Group_1291" data-name="Group 1291" transform="rotate(-45 -308.114 -187.077)"> |
| <rect id="Rectangle_461" width="26" height="2" fill="#51504f" data-name="Rectangle 461" rx="1" transform="translate(-.209)"></rect> |
| </g> |
| <g id="Group_1292" data-name="Group 1292" transform="rotate(45 372.48 -93.011)"> |
| <rect id="Rectangle_462" width="26" height="2" fill="#51504f" data-name="Rectangle 462" rx="1" transform="translate(-.209 -.178)"></rect> |
| </g> |
| </g> |
| </svg> |
| |
| </div> |
| |
| </button> |
| <div class="navbar__drawer" id="navbar-drawer"> |
| <div class="navbar__menu-content" id="main_navbar"> |
| |
| <div class="navbar__links-container"> |
| |
| <a class="navbar__text-link" href="/community/"> |
| Community |
| </a> |
| |
| <a class="navbar__text-link" href="/meetups/"> |
| Meetups |
| </a> |
| |
| <a class="navbar__text-link" href="/docs/"> |
| Documentation |
| </a> |
| |
| <a class="navbar__text-link" href="/use-cases/"> |
| Use-cases |
| </a> |
| |
| <a class="navbar__text-link" href="/announcements/"> |
| Announcements |
| </a> |
| |
| <a class="navbar__text-link" href="/blog/"> |
| Blog |
| </a> |
| |
| <a class="navbar__text-link" href="/ecosystem/"> |
| Ecosystem |
| </a> |
| |
| |
| </div> |
| |
| |
| </div> |
| </div> |
| </div> |
| </nav> |
| |
| </header> |
| |
| |
| <div class="roadmap container-fluid td-default base-layout"> |
| |
| |
| <div class="content-drawer-wrapper"> |
| <button class="content-drawer__toggle-button" id="content-open-button"> |
| |
| <div id="hamburger-icon" class="content-drawer__toggle-button--icon visible"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="20.005" height="13.879" viewBox="0 0 20.005 13.879"> |
| <g id="Group_1619" data-name="Group 1619" transform="translate(271.132 -418.872)"> |
| <g id="Group_1613" data-name="Group 1613" transform="translate(-266.229 431.045)"> |
| <path id="Path_1337" d="M-218.5 513.215h-14.583a.259.259 0 0 1-.259-.26.259.259 0 0 1 .259-.259h14.583a.26.26 0 0 1 .259.259.259.259 0 0 1-.259.26z" fill="#51504f" data-name="Path 1337" transform="translate(233.345 -512.696)"></path> |
| </g> |
| <g id="Group_1614" data-name="Group 1614" transform="translate(-266.229 425.684)"> |
| <path id="Path_1338" d="M-218.5 471.9h-14.583a.259.259 0 0 1-.259-.26.26.26 0 0 1 .259-.259h14.583a.26.26 0 0 1 .259.259.26.26 0 0 1-.259.26z" fill="#51504f" data-name="Path 1338" transform="translate(233.345 -471.376)"></path> |
| </g> |
| <g id="Group_1615" data-name="Group 1615" transform="translate(-266.229 420.323)"> |
| <path id="Path_1339" d="M-218.5 430.574h-14.583a.259.259 0 0 1-.259-.259.259.259 0 0 1 .259-.259h14.583a.26.26 0 0 1 .259.259.259.259 0 0 1-.259.259z" fill="#51504f" data-name="Path 1339" transform="translate(233.345 -430.055)"></path> |
| </g> |
| <g id="Group_1616" data-name="Group 1616" transform="translate(-271.132 429.814)"> |
| <path id="Path_1340" d="M-269.663 506.145a1.47 1.47 0 0 1-1.469-1.469 1.47 1.47 0 0 1 1.469-1.469 1.47 1.47 0 0 1 1.469 1.469 1.47 1.47 0 0 1-1.469 1.469zm0-2.418a.951.951 0 0 0-.95.95.951.951 0 0 0 .95.95.951.951 0 0 0 .95-.95.951.951 0 0 0-.95-.95z" fill="#51504f" data-name="Path 1340" transform="translate(271.132 -503.208)"></path> |
| </g> |
| <g id="Group_1617" data-name="Group 1617" transform="translate(-271.132 424.556)"> |
| <path id="Path_1341" d="M-269.663 465.62a1.47 1.47 0 0 1-1.469-1.469 1.47 1.47 0 0 1 1.469-1.469 1.47 1.47 0 0 1 1.469 1.469 1.47 1.47 0 0 1-1.469 1.469zm0-2.418a.951.951 0 0 0-.95.95.951.951 0 0 0 .95.95.951.951 0 0 0 .95-.95.951.951 0 0 0-.95-.952z" fill="#51504f" data-name="Path 1341" transform="translate(271.132 -462.683)"></path> |
| </g> |
| <g id="Group_1618" data-name="Group 1618" transform="translate(-271.132 418.872)"> |
| <path id="Path_1342" d="M-269.663 421.809a1.47 1.47 0 0 1-1.469-1.469 1.47 1.47 0 0 1 1.469-1.469 1.47 1.47 0 0 1 1.469 1.469 1.47 1.47 0 0 1-1.469 1.469zm0-2.418a.951.951 0 0 0-.95.95.951.951 0 0 0 .95.95.951.951 0 0 0 .95-.95.951.951 0 0 0-.95-.95z" fill="#51504f" data-name="Path 1342" transform="translate(271.132 -418.872)"></path> |
| </g> |
| </g> |
| </svg> |
| |
| <span class="bodytext__mobile--brownish-grey">Content</span> |
| </div> |
| |
| </button> |
| <nav id="content-navbar" class="navbar navbar--hidden"> |
| <div class="navbar__icon-container"> |
| <a href="/"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="155.314" height="60" viewBox="0 0 155.314 60"> |
| <defs> |
| <clipPath id="clip-path"> |
| <path id="Rectangle_1" d="M0 0h155.314v60H0z" fill="none" data-name="Rectangle 1"></path> |
| </clipPath> |
| </defs> |
| <g id="logo" transform="translate(-1305 -780.355)"> |
| <g id="Group_2" clip-path="url(#clip-path)" data-name="Group 2" transform="translate(1305 780.355)"> |
| <g id="Group_1" data-name="Group 1" transform="translate(.486 .486)"> |
| <path id="Path_1" d="M1307.562 880.867l28.187-28.893a.521.521 0 0 0 .063-.666c-1.714-2.393-4.877-2.808-6.049-4.416-3.472-4.763-4.353-7.459-5.845-7.292a.456.456 0 0 0-.271.143l-10.182 10.438c-5.858 6-6.7 19.225-6.852 30.3a.552.552 0 0 0 .949.386z" fill="#017cee" data-name="Path 1" transform="translate(-1306.613 -822.232)"></path> |
| <path id="Path_2" d="M1405.512 908.489l-28.893-28.189a.521.521 0 0 0-.667-.063c-2.393 1.715-2.808 4.877-4.416 6.049-4.763 3.472-7.459 4.353-7.292 5.845a.456.456 0 0 0 .143.27l10.438 10.182c6 5.858 19.225 6.7 30.3 6.852a.552.552 0 0 0 .387-.946z" fill="#00ad46" data-name="Path 2" transform="translate(-1346.876 -850.567)"></path> |
| <path id="Path_3" d="M1373.909 902.252c-3.28-3.2-4.8-9.53 1.486-22.583-10.219 4.567-13.8 10.57-12.039 12.289z" fill="#04d659" data-name="Path 3" transform="translate(-1345.96 -850.233)"></path> |
| <path id="Path_4" d="M1433.132 782.359l-28.186 28.893a.52.52 0 0 0-.063.666c1.715 2.393 4.876 2.808 6.049 4.416 3.472 4.763 4.354 7.459 5.845 7.292a.454.454 0 0 0 .271-.143l10.182-10.438c5.858-6 6.7-19.225 6.852-30.3a.553.553 0 0 0-.95-.386z" fill="#00c7d4" data-name="Path 4" transform="translate(-1375.21 -782.123)"></path> |
| <path id="Path_5" d="M1426.9 881.155c-3.2 3.28-9.53 4.8-22.584-1.486 4.567 10.219 10.57 13.8 12.289 12.039z" fill="#11e1ee" data-name="Path 5" transform="translate(-1374.875 -850.233)"></path> |
| <path id="Path_6" d="M1307 782.919l28.893 28.186a.521.521 0 0 0 .666.063c2.393-1.715 2.808-4.877 4.416-6.049 4.763-3.472 7.459-4.353 7.292-5.845a.459.459 0 0 0-.143-.271l-10.438-10.182c-6-5.858-19.225-6.7-30.3-6.852a.552.552 0 0 0-.386.95z" fill="#e43921" data-name="Path 6" transform="translate(-1306.766 -781.97)"></path> |
| <path id="Path_7" d="M1405.8 804.711c3.28 3.2 4.8 9.53-1.486 22.584 10.219-4.567 13.8-10.571 12.039-12.289z" fill-rule="evenodd" fill="#ff7557" data-name="Path 7" transform="translate(-1374.875 -797.859)"></path> |
| <path id="Path_8" d="M1329.355 849.266c3.2-3.28 9.53-4.8 22.584 1.486-4.567-10.219-10.57-13.8-12.289-12.039z" fill="#0cb6ff" data-name="Path 8" transform="translate(-1322.503 -821.316)"></path> |
| <circle id="Ellipse_1" cx="1.26" cy="1.26" r="1.26" fill="#4a4848" data-name="Ellipse 1" transform="translate(28.18 28.171)"></circle> |
| <path id="Path_9" d="M1527.558 827.347a.229.229 0 0 1-.223-.223.458.458 0 0 1 .011-.123l2.766-7.214a.346.346 0 0 1 .357-.245h.758a.348.348 0 0 1 .357.245l2.754 7.214.022.123a.228.228 0 0 1-.223.223h-.568a.288.288 0 0 1-.19-.056.352.352 0 0 1-.089-.134l-.613-1.583h-3.657l-.613 1.583a.317.317 0 0 1-.1.134.269.269 0 0 1-.178.056zm4.795-2.732l-1.505-3.958-1.505 3.958zm3.322 4.85a.258.258 0 0 1-.189-.078.241.241 0 0 1-.067-.178v-7.4a.241.241 0 0 1 .067-.178.258.258 0 0 1 .189-.078h.513a.268.268 0 0 1 .256.256v.49a2.118 2.118 0 0 1 1.828-.858 2.092 2.092 0 0 1 1.751.736 3.135 3.135 0 0 1 .636 1.9q.011.122.011.379t-.011.379a3.168 3.168 0 0 1-.636 1.9 2.111 2.111 0 0 1-1.751.736 2.154 2.154 0 0 1-1.806-.836v2.587a.241.241 0 0 1-.067.178.223.223 0 0 1-.179.078zm2.364-2.91a1.324 1.324 0 0 0 1.149-.491 2.266 2.266 0 0 0 .4-1.293q.011-.111.011-.323 0-2.107-1.562-2.107a1.365 1.365 0 0 0-1.159.513 2.111 2.111 0 0 0-.412 1.2l-.012.424.012.435a1.862 1.862 0 0 0 .424 1.149 1.4 1.4 0 0 0 1.148.493zm5.628.9a2.329 2.329 0 0 1-1.015-.223 1.94 1.94 0 0 1-.747-.6 1.487 1.487 0 0 1-.268-.859 1.459 1.459 0 0 1 .6-1.2 3.4 3.4 0 0 1 1.65-.624l1.661-.234v-.323q0-1.137-1.3-1.137a1.4 1.4 0 0 0-.8.212 1.376 1.376 0 0 0-.468.48.305.305 0 0 1-.089.145.18.18 0 0 1-.134.045h-.48a.23.23 0 0 1-.245-.245 1.17 1.17 0 0 1 .245-.6 1.931 1.931 0 0 1 .747-.591 2.7 2.7 0 0 1 1.238-.256 2.351 2.351 0 0 1 1.8.591 2.032 2.032 0 0 1 .547 1.45v3.613a.257.257 0 0 1-.078.19.24.24 0 0 1-.178.067h-.513a.233.233 0 0 1-.257-.256v-.479a1.923 1.923 0 0 1-.714.6 2.557 2.557 0 0 1-1.203.237zm.234-.836a1.579 1.579 0 0 0 1.182-.469 1.881 1.881 0 0 0 .468-1.371v-.312l-1.293.19a2.918 2.918 0 0 0-1.193.379.761.761 0 0 0-.4.658.784.784 0 0 0 .368.691 1.585 1.585 0 0 0 .867.237zm6.643.836a2.556 2.556 0 0 1-1.873-.669 2.738 2.738 0 0 1-.714-1.9l-.011-.446.011-.446a2.7 2.7 0 0 1 .714-1.885 2.531 2.531 0 0 1 1.873-.68 2.917 2.917 0 0 1 1.36.29 2.077 2.077 0 0 1 .825.714 1.7 1.7 0 0 1 .3.848.2.2 0 0 1-.067.178.281.281 0 0 1-.19.067h-.535a.265.265 0 0 1-.168-.045.458.458 0 0 1-.111-.178 1.428 1.428 0 0 0-.535-.758 1.516 1.516 0 0 0-.87-.234 1.45 1.45 0 0 0-1.1.435 1.952 1.952 0 0 0-.435 1.3l-.011.4.011.379a1.969 1.969 0 0 0 .435 1.316 1.446 1.446 0 0 0 1.1.424 1.577 1.577 0 0 0 .87-.223 1.493 1.493 0 0 0 .535-.769.458.458 0 0 1 .111-.178.228.228 0 0 1 .168-.056h.535a.258.258 0 0 1 .19.078.2.2 0 0 1 .067.178 1.75 1.75 0 0 1-.3.847 2.078 2.078 0 0 1-.825.714 2.876 2.876 0 0 1-1.361.302zm4.078-.112a.233.233 0 0 1-.257-.256v-7.4a.241.241 0 0 1 .067-.178.259.259 0 0 1 .19-.078h.557a.267.267 0 0 1 .257.256v2.6a2.167 2.167 0 0 1 .758-.624 2.353 2.353 0 0 1 1.082-.223 2.067 2.067 0 0 1 1.661.691 2.642 2.642 0 0 1 .6 1.818v3.144a.257.257 0 0 1-.078.19.24.24 0 0 1-.178.067h-.557a.233.233 0 0 1-.256-.256V824a1.775 1.775 0 0 0-.39-1.227 1.387 1.387 0 0 0-1.1-.435 1.481 1.481 0 0 0-1.126.446 1.7 1.7 0 0 0-.412 1.215v3.088a.257.257 0 0 1-.078.19.24.24 0 0 1-.178.067zm8.846.112a2.466 2.466 0 0 1-1.84-.7 2.938 2.938 0 0 1-.747-1.94l-.011-.379.011-.368a2.953 2.953 0 0 1 .758-1.918 2.7 2.7 0 0 1 3.735.078 3.114 3.114 0 0 1 .68 2.119v.19a.257.257 0 0 1-.078.189.241.241 0 0 1-.178.067h-3.858v.1a2.11 2.11 0 0 0 .435 1.238 1.332 1.332 0 0 0 1.081.5 1.563 1.563 0 0 0 .836-.2 1.7 1.7 0 0 0 .491-.435.6.6 0 0 1 .145-.156.391.391 0 0 1 .19-.033h.547a.252.252 0 0 1 .167.056.192.192 0 0 1 .067.156.975.975 0 0 1-.312.591 2.51 2.51 0 0 1-.859.6 3.049 3.049 0 0 1-1.26.248zm1.527-3.434v-.033a1.817 1.817 0 0 0-.424-1.249 1.512 1.512 0 0 0-2.23 0 1.883 1.883 0 0 0-.4 1.249v.033z" fill="#51504f" data-name="Path 9" transform="translate(-1460.834 -808.144)"></path> |
| <path id="Path_10" d="M1527.2 827.081l-.061.061zm-.056-.279l-.08-.031zm2.766-7.214l.08.031zm1.472 0l-.081.029zm2.754 7.214l.084-.015a.064.064 0 0 0 0-.015zm.022.123h.086v-.015zm-.067.156l.06.061zm-.914.011l-.061.061.006.005zm-.089-.134l.081-.027zm-.613-1.583l.08-.031a.086.086 0 0 0-.08-.055zm-3.657 0v-.086a.086.086 0 0 0-.08.055zm-.613 1.583l-.08-.031zm-.1.134l.055.066zm4.047-2.676v.086a.086.086 0 0 0 .08-.116zm-1.505-3.958l.08-.03a.086.086 0 0 0-.16 0zm-1.505 3.958l-.08-.03a.086.086 0 0 0 .08.116zm-1.784 2.646a.128.128 0 0 1-.1-.042l-.122.121a.3.3 0 0 0 .217.092zm-.1-.042a.129.129 0 0 1-.042-.1h-.171a.3.3 0 0 0 .092.217zm-.042-.1a.38.38 0 0 1 .007-.1l-.163-.054a.514.514 0 0 0-.016.15zm.005-.092l2.765-7.214-.16-.061-2.765 7.214zm2.766-7.216a.283.283 0 0 1 .1-.143.3.3 0 0 1 .174-.046v-.172a.47.47 0 0 0-.271.076.453.453 0 0 0-.166.226zm.276-.189h.758v-.172h-.758zm.758 0a.3.3 0 0 1 .175.046.283.283 0 0 1 .1.143l.161-.059a.451.451 0 0 0-.166-.226.47.47 0 0 0-.272-.076zm.277.19l2.754 7.214.16-.061-2.754-7.214zm2.75 7.2l.022.123.169-.031-.022-.123zm.021.107a.13.13 0 0 1-.042.1l.121.121a.3.3 0 0 0 .092-.217zm-.042.1a.13.13 0 0 1-.1.042v.171a.3.3 0 0 0 .217-.092zm-.1.042h-.568v.171h.568zm-.568 0a.206.206 0 0 1-.135-.036l-.11.132a.373.373 0 0 0 .245.076zm-.129-.031a.262.262 0 0 1-.069-.1l-.162.054a.431.431 0 0 0 .11.167zm-.07-.1l-.613-1.584-.16.062.613 1.583zm-.693-1.638h-3.657v.171h3.657zm-3.737.055l-.614 1.584.16.062.613-1.583zm-.615 1.587a.235.235 0 0 1-.075.1l.111.13a.4.4 0 0 0 .126-.172zm-.074.1a.185.185 0 0 1-.124.036v.171a.354.354 0 0 0 .233-.076zm-.124.036h-.569v.171h.569zm4.306-2.677l-1.505-3.958-.16.061 1.505 3.958zm-1.666-3.958l-1.505 3.958.16.061 1.505-3.958zm-1.425 4.075h3.01v-.171h-3.01zm6.143 4.687l-.06.061zm0-7.761l.061.061zm.881 0l-.065.056.01.009zm.078.669h-.086a.086.086 0 0 0 .155.051zm3.579-.123l-.067.053zm.636 1.9h-.086zm0 .758l-.085-.007zm-.636 1.9l.067.054zm-3.557-.1l.068-.052a.086.086 0 0 0-.154.052zm-.067 2.765l-.061-.06zm2.787-3.323l-.069-.051zm.4-1.293l-.085-.008v.005zm-2.709-1.918l-.068-.052zm-.413 1.2h-.086zm-.011.423h-.085zm.011.435h-.086zm.424 1.149l.066-.054zm-1.216 3.315a.173.173 0 0 1-.129-.053l-.121.121a.342.342 0 0 0 .25.1zm-.129-.053a.157.157 0 0 1-.042-.118h-.172a.325.325 0 0 0 .092.239zm-.042-.118v-7.4h-.172v7.4zm0-7.4a.157.157 0 0 1 .042-.118l-.121-.121a.324.324 0 0 0-.092.239zm.042-.118a.173.173 0 0 1 .129-.053v-.172a.342.342 0 0 0-.25.1zm.129-.053h.513v-.172h-.513zm.513 0a.137.137 0 0 1 .113.048l.13-.111a.309.309 0 0 0-.244-.108zm.123.058a.137.137 0 0 1 .048.113h.171a.309.309 0 0 0-.108-.243zm.048.113v.49h.171v-.49zm.155.541a2.033 2.033 0 0 1 1.759-.823v-.171a2.2 2.2 0 0 0-1.9.894zm1.759-.823a2.007 2.007 0 0 1 1.683.7l.135-.106a2.177 2.177 0 0 0-1.818-.768zm1.683.7a3.045 3.045 0 0 1 .617 1.845l.171-.007a3.218 3.218 0 0 0-.654-1.946zm.617 1.85c.007.078.011.2.011.372h.171c0-.171 0-.3-.012-.387zm.011.372c0 .171 0 .294-.011.372l.17.015c.008-.086.012-.216.012-.387zm-.011.376a3.08 3.08 0 0 1-.617 1.846l.134.106a3.25 3.25 0 0 0 .654-1.945zm-.617 1.845a2.025 2.025 0 0 1-1.683.7v.171a2.2 2.2 0 0 0 1.817-.768zm-1.683.7a2.068 2.068 0 0 1-1.739-.8l-.136.1a2.239 2.239 0 0 0 1.874.87zm-1.892-.75v2.587h.172v-2.587zm0 2.587a.156.156 0 0 1-.042.118l.121.121a.325.325 0 0 0 .092-.239zm-.046.123a.138.138 0 0 1-.114.048v.172a.308.308 0 0 0 .244-.108zm-.114.048h-.546v.172h.546zm1.817-2.739a1.408 1.408 0 0 0 1.218-.526l-.138-.1a1.24 1.24 0 0 1-1.079.455zm1.217-.525a2.355 2.355 0 0 0 .419-1.341l-.171-.007a2.182 2.182 0 0 1-.385 1.246zm.418-1.336c.008-.079.012-.19.012-.332h-.172c0 .14 0 .245-.011.315zm.012-.332a2.726 2.726 0 0 0-.407-1.632 1.448 1.448 0 0 0-1.24-.562v.171a1.278 1.278 0 0 1 1.1.492 2.565 2.565 0 0 1 .374 1.53zm-1.647-2.193a1.452 1.452 0 0 0-1.228.547l.136.1a1.282 1.282 0 0 1 1.091-.479zm-1.228.547a2.2 2.2 0 0 0-.43 1.252l.172.008a2.028 2.028 0 0 1 .4-1.157zm-.43 1.254l-.011.424h.171l.011-.424zm-.011.428l.011.435h.172l-.011-.435zm.011.436a1.95 1.95 0 0 0 .443 1.2l.133-.109a1.776 1.776 0 0 1-.4-1.1zm.443 1.2a1.484 1.484 0 0 0 1.214.522v-.171a1.314 1.314 0 0 1-1.082-.459zm5.828 1.117l.037-.077zm-.747-.6l-.07.049zm.335-2.063l.052.068zm1.65-.624l.012.085zm1.661-.234l.012.085a.086.086 0 0 0 .074-.085zm-2.107-1.249l.046.072zm-.468.48l-.075-.042a.083.083 0 0 0-.006.015zm-.089.145l-.054-.067-.007.006zm-.792-.022l-.065.056.009.009zm-.067-.178h-.086zm.245-.6l-.07-.049zm.747-.591l.038.077zm3.033.334l-.063.058zm.468 5.252l.06.061zm-.881 0l-.065.056a.043.043 0 0 0 .009.009zm-.067-.669h.086a.086.086 0 0 0-.156-.048zm-.714.6l-.04-.076zm.223-1.059l-.062-.06zm.468-1.684h.086a.086.086 0 0 0-.1-.085zm-1.293.189l.012.085zm-1.193.379l.046.072zm-.033 1.349l-.047.071zm.635.985a2.241 2.241 0 0 1-.978-.215l-.074.155a2.412 2.412 0 0 0 1.051.231zm-.978-.215a1.859 1.859 0 0 1-.715-.576l-.138.1a2.024 2.024 0 0 0 .779.629zm-.713-.573a1.4 1.4 0 0 1-.253-.81h-.172a1.571 1.571 0 0 0 .283.907zm-.253-.81a1.374 1.374 0 0 1 .569-1.136l-.105-.135a1.544 1.544 0 0 0-.635 1.272zm.569-1.137a3.316 3.316 0 0 1 1.609-.607l-.024-.17a3.481 3.481 0 0 0-1.691.642zm1.609-.607l1.661-.234-.024-.17-1.662.234zm1.735-.319v-.323h-.171v.323zm0-.323a1.156 1.156 0 0 0-.355-.917 1.536 1.536 0 0 0-1.035-.306v.172a1.37 1.37 0 0 1 .922.263.986.986 0 0 1 .3.788zm-1.39-1.223a1.486 1.486 0 0 0-.851.227l.1.142a1.316 1.316 0 0 1 .755-.2zm-.849.226a1.452 1.452 0 0 0-.5.51l.15.084a1.286 1.286 0 0 1 .44-.449zm-.5.524a.226.226 0 0 1-.062.105l.107.134a.391.391 0 0 0 .117-.185zm-.068.112a.1.1 0 0 1-.073.019v.171a.266.266 0 0 0 .194-.07zm-.073.019h-.48v.171h.48zm-.48 0a.18.18 0 0 1-.122-.046l-.112.13a.352.352 0 0 0 .234.087zm-.113-.037a.18.18 0 0 1-.047-.123h-.171a.352.352 0 0 0 .087.234zm-.047-.119a1.1 1.1 0 0 1 .23-.557l-.14-.1a1.253 1.253 0 0 0-.261.648zm.23-.556a1.843 1.843 0 0 1 .715-.564l-.075-.154a2.018 2.018 0 0 0-.78.618zm.716-.564a2.611 2.611 0 0 1 1.2-.247v-.171a2.781 2.781 0 0 0-1.277.266zm1.2-.247a2.268 2.268 0 0 1 1.732.563l.126-.116a2.435 2.435 0 0 0-1.858-.618zm1.733.564a1.945 1.945 0 0 1 .523 1.391h.171a2.117 2.117 0 0 0-.57-1.508zm.523 1.391v3.613h.171v-3.613zm0 3.613a.172.172 0 0 1-.053.129l.121.121a.344.344 0 0 0 .1-.25zm-.053.129a.157.157 0 0 1-.118.042v.171a.326.326 0 0 0 .239-.092zm-.118.042h-.513v.171h.513zm-.513 0a.2.2 0 0 1-.134-.046l-.111.13a.367.367 0 0 0 .245.088zm-.124-.037a.194.194 0 0 1-.047-.134h-.171a.366.366 0 0 0 .087.245zm-.047-.134v-.479h-.171v.479zm-.156-.528a1.846 1.846 0 0 1-.683.575l.079.152a2.012 2.012 0 0 0 .745-.629zm-.683.575a2.476 2.476 0 0 1-1.153.236v.171a2.644 2.644 0 0 0 1.233-.255zm-.919-.429a1.666 1.666 0 0 0 1.244-.494l-.123-.12a1.493 1.493 0 0 1-1.121.442zm1.244-.494a1.969 1.969 0 0 0 .492-1.431h-.171a1.8 1.8 0 0 1-.444 1.312zm.492-1.431v-.312h-.171v.312zm-.1-.4l-1.293.189.025.17 1.293-.189zm-1.293.189a3 3 0 0 0-1.228.393l.095.143a2.837 2.837 0 0 1 1.158-.365zm-1.227.392a.845.845 0 0 0-.441.73h.172a.676.676 0 0 1 .362-.586zm-.441.73a.869.869 0 0 0 .406.762l.095-.142a.7.7 0 0 1-.33-.62zm.408.764a1.673 1.673 0 0 0 .916.247v-.171a1.5 1.5 0 0 1-.823-.221zm5.686.329l-.061.06zm-.714-1.9h-.085zm-.011-.446h-.085zm.011-.446h-.085zm.714-1.885l.061.061zm3.234-.39l-.04.076zm.825.713l-.073.046zm.3.848h-.086zm-.067.178l.056.065zm-.892.022l.054-.067zm-.112-.178l-.081.029zm-.535-.758l-.048.071zm-1.974.2l-.062-.059zm-.435 1.3h-.086zm-.011.4h-.086zm.011.379h-.086zm.435 1.316l-.062.059zm1.974.2l.046.072zm.535-.769l-.079-.033zm.112-.178l.054.067.007-.006zm.892.022l-.061.06zm.067.178l-.085-.009zm-.3.847l-.072-.046zm-.825.714l-.04-.076zm-1.36.2a2.471 2.471 0 0 1-1.814-.644l-.12.122a2.64 2.64 0 0 0 1.933.694zm-1.813-.643a2.653 2.653 0 0 1-.689-1.839l-.171.006a2.822 2.822 0 0 0 .738 1.952zm-.689-1.838l-.011-.446h-.171l.011.446zm-.011-.442l.011-.446h-.171l-.011.446zm.011-.445a2.611 2.611 0 0 1 .689-1.827l-.122-.121a2.78 2.78 0 0 0-.738 1.942zm.689-1.827a2.447 2.447 0 0 1 1.813-.655v-.171a2.617 2.617 0 0 0-1.934.705zm1.813-.655a2.836 2.836 0 0 1 1.32.28l.079-.152a3 3 0 0 0-1.4-.3zm1.32.28a1.99 1.99 0 0 1 .792.683l.145-.091a2.158 2.158 0 0 0-.858-.744zm.793.685a1.617 1.617 0 0 1 .287.8l.171-.009a1.789 1.789 0 0 0-.315-.89zm.287.809a.11.11 0 0 1-.037.1l.112.13a.281.281 0 0 0 .1-.252zm-.037.1a.2.2 0 0 1-.134.046v.171a.369.369 0 0 0 .246-.088zm-.134.046h-.535v.171h.535zm-.535 0a.184.184 0 0 1-.114-.026l-.107.134a.345.345 0 0 0 .221.064zm-.114-.026a.389.389 0 0 1-.086-.144l-.158.066a.533.533 0 0 0 .137.212zm-.084-.14a1.514 1.514 0 0 0-.57-.8l-.093.144a1.343 1.343 0 0 1 .5.715zm-.568-.8a1.6 1.6 0 0 0-.918-.249v.171a1.435 1.435 0 0 1 .822.219zm-.918-.249a1.535 1.535 0 0 0-1.166.462l.124.118a1.364 1.364 0 0 1 1.042-.408zm-1.166.462a2.036 2.036 0 0 0-.458 1.36l.171.006a1.872 1.872 0 0 1 .411-1.249zm-.458 1.361l-.011.4h.171l.011-.4zm-.011.406l.011.379.171-.005-.011-.379zm.011.38a2.052 2.052 0 0 0 .458 1.371l.124-.118a1.889 1.889 0 0 1-.411-1.26zm.458 1.371a1.533 1.533 0 0 0 1.166.451v-.172a1.363 1.363 0 0 1-1.042-.4zm1.166.451a1.661 1.661 0 0 0 .916-.237l-.093-.144a1.491 1.491 0 0 1-.823.209zm.918-.238a1.576 1.576 0 0 0 .568-.812l-.162-.057a1.409 1.409 0 0 1-.5.727zm.566-.807a.39.39 0 0 1 .086-.144l-.107-.134a.533.533 0 0 0-.137.213zm.093-.151a.144.144 0 0 1 .107-.031v-.171a.31.31 0 0 0-.228.081zm.107-.031h.535v-.171h-.535zm.535 0a.173.173 0 0 1 .129.053l.121-.121a.344.344 0 0 0-.25-.1zm.134.057a.11.11 0 0 1 .037.1l.17.017a.281.281 0 0 0-.1-.252zm.037.109a1.664 1.664 0 0 1-.288.806l.144.092a1.839 1.839 0 0 0 .315-.889zm-.288.806a1.989 1.989 0 0 1-.792.683l.079.152a2.162 2.162 0 0 0 .858-.744zm-.793.684a2.8 2.8 0 0 1-1.32.28v.171a2.96 2.96 0 0 0 1.4-.3zm2.568.187l-.065.056.01.009zm0-7.772l.061.06zm.926 0l-.065.056.009.009zm.078 2.776h-.085a.086.086 0 0 0 .153.053zm.758-.624l.038.077zm2.743.468l-.065.056zm.524 5.151l-.061-.06zm-.925 0l-.065.056.009.009zm-.457-4.5l-.065.056zm-2.23.011l-.062-.059zm-.49 4.493l-.061-.06zm-.736-.019a.2.2 0 0 1-.134-.046l-.112.13a.367.367 0 0 0 .245.088zm-.124-.037a.2.2 0 0 1-.046-.134h-.172a.367.367 0 0 0 .087.245zm-.046-.134v-7.4h-.172v7.4zm0-7.4a.156.156 0 0 1 .042-.118l-.121-.121a.326.326 0 0 0-.092.239zm.042-.118a.172.172 0 0 1 .129-.053v-.171a.343.343 0 0 0-.25.1zm.129-.053h.557v-.171h-.557zm.557 0a.137.137 0 0 1 .113.048l.13-.112a.308.308 0 0 0-.244-.108zm.122.057a.137.137 0 0 1 .048.113h.172a.309.309 0 0 0-.108-.243zm.048.113v2.6h.172v-2.6zm.153 2.651a2.076 2.076 0 0 1 .728-.6l-.075-.154a2.248 2.248 0 0 0-.788.649zm.73-.6a2.272 2.272 0 0 1 1.043-.214v-.171a2.438 2.438 0 0 0-1.121.232zm1.043-.214a1.982 1.982 0 0 1 1.6.661l.13-.112a2.152 2.152 0 0 0-1.727-.721zm1.6.663a2.557 2.557 0 0 1 .581 1.761h.171a2.727 2.727 0 0 0-.624-1.874zm.581 1.761v3.144h.171v-3.144zm0 3.144a.173.173 0 0 1-.053.129l.121.121a.345.345 0 0 0 .1-.25zm-.053.129a.156.156 0 0 1-.118.042v.171a.327.327 0 0 0 .239-.092zm-.118.042h-.557v.171h.557zm-.557 0a.2.2 0 0 1-.134-.046l-.112.13a.367.367 0 0 0 .245.088zm-.124-.037a.2.2 0 0 1-.046-.134h-.172a.368.368 0 0 0 .087.245zm-.046-.134V823.8h-.172v3.088zm0-3.088a1.859 1.859 0 0 0-.412-1.284l-.128.114a1.69 1.69 0 0 1 .368 1.169zm-.411-1.283a1.471 1.471 0 0 0-1.169-.464v.171a1.3 1.3 0 0 1 1.039.406zm-1.169-.464a1.566 1.566 0 0 0-1.188.473l.124.118a1.4 1.4 0 0 1 1.064-.419zm-1.188.473a1.779 1.779 0 0 0-.436 1.275h.172a1.609 1.609 0 0 1 .389-1.156zm-.436 1.275v3.088h.172V823.8zm0 3.088a.172.172 0 0 1-.053.129l.121.121a.344.344 0 0 0 .1-.25zm-.053.129a.156.156 0 0 1-.118.042v.171a.327.327 0 0 0 .239-.092zm-.118.042h-.557v.171h.557zm6.449-.505l-.062.059zm-.747-1.94h-.086zm-.012-.379h-.085v.005zm.012-.368l-.086-.006zm.758-1.918l-.061-.06zm3.735.078l-.065.056zm.6 2.5l.061.061zm-4.036.067v-.086a.086.086 0 0 0-.086.086zm0 .1h-.086zm.435 1.238l-.068.053zm1.918.3l.045.073zm.491-.435l-.069-.051zm.145-.156l.039.077h.006zm.9.022l-.055.066zm-.245.747l-.064-.057zm-.858.6l.035.078zm.267-3.189v.086a.086.086 0 0 0 .086-.086zm-.424-1.282l-.066.055zm-2.23 0l-.065-.055zm-.4 1.282h-.086a.086.086 0 0 0 .086.086zm1.528 3.349a2.38 2.38 0 0 1-1.779-.677l-.122.12a2.55 2.55 0 0 0 1.9.728zm-1.778-.676a2.86 2.86 0 0 1-.724-1.886l-.171.009a3.027 3.027 0 0 0 .771 1.995zm-.723-1.884l-.011-.379h-.171l.011.379zm-.011-.374l.011-.368-.172-.005-.011.368zm.011-.365a2.871 2.871 0 0 1 .735-1.864l-.124-.118a3.042 3.042 0 0 0-.782 1.971zm.734-1.864a2.331 2.331 0 0 1 1.756-.687v-.171a2.5 2.5 0 0 0-1.879.74zm1.756-.687a2.307 2.307 0 0 1 1.853.762l.13-.112a2.477 2.477 0 0 0-1.983-.821zm1.854.762a3.03 3.03 0 0 1 .659 2.062h.172a3.2 3.2 0 0 0-.7-2.175zm.659 2.062v.19h.172v-.19zm0 .19a.172.172 0 0 1-.053.129l.121.121a.345.345 0 0 0 .1-.25zm-.053.129a.156.156 0 0 1-.118.042v.171a.327.327 0 0 0 .239-.092zm-.118.042h-3.858v.171h3.858zm-3.944.086v.1h.172v-.1zm0 .1a2.2 2.2 0 0 0 .453 1.287l.135-.106a2.027 2.027 0 0 1-.417-1.189zm.454 1.288a1.418 1.418 0 0 0 1.148.533v-.171a1.247 1.247 0 0 1-1.015-.47zm1.148.533a1.647 1.647 0 0 0 .882-.214l-.09-.146a1.481 1.481 0 0 1-.791.188zm.882-.214a1.777 1.777 0 0 0 .515-.458l-.14-.1a1.613 1.613 0 0 1-.466.412zm.513-.456a1.251 1.251 0 0 1 .081-.1.28.28 0 0 1 .026-.025l.008-.006-.077-.153a.326.326 0 0 0-.083.068 1.55 1.55 0 0 0-.092.113zm.12-.134a.328.328 0 0 1 .146-.021v-.171a.468.468 0 0 0-.234.046zm.146-.021h.547v-.171h-.547zm.547 0a.166.166 0 0 1 .112.036l.11-.132a.337.337 0 0 0-.222-.076zm.112.036a.107.107 0 0 1 .036.09h.171a.277.277 0 0 0-.1-.222zm.036.09a.9.9 0 0 1-.291.534l.128.115a1.055 1.055 0 0 0 .334-.649zm-.291.535a2.42 2.42 0 0 1-.83.581l.072.156a2.6 2.6 0 0 0 .888-.624zm-.829.58a2.964 2.964 0 0 1-1.224.238v.171a3.133 3.133 0 0 0 1.295-.253zm.389-3.111v-.033h-.171v.033zm0-.033a1.9 1.9 0 0 0-.445-1.306l-.129.114a1.731 1.731 0 0 1 .4 1.192zm-.444-1.3a1.466 1.466 0 0 0-1.181-.521v.172a1.3 1.3 0 0 1 1.049.46zm-1.181-.521a1.466 1.466 0 0 0-1.18.521l.131.11a1.3 1.3 0 0 1 1.049-.46zm-1.181.521a1.965 1.965 0 0 0-.422 1.3h.172a1.794 1.794 0 0 1 .382-1.194zm-.422 1.3v.033h.172v-.033zm.086.119h3.055v-.171h-3.055z" fill="#51504f" data-name="Path 10" transform="translate(-1460.636 -807.945)"></path> |
| <path id="Path_11" d="M1519.066 884.011a.581.581 0 0 1-.567-.567 1.151 1.151 0 0 1 .028-.312l7.026-18.328a.881.881 0 0 1 .906-.623h1.926a.882.882 0 0 1 .907.623l7 18.328.057.312a.583.583 0 0 1-.567.567h-1.445a.735.735 0 0 1-.482-.142.9.9 0 0 1-.226-.34l-1.558-4.023h-9.292l-1.558 4.023a.8.8 0 0 1-.255.34.688.688 0 0 1-.453.142zm12.181-6.94l-3.824-10.056-3.823 10.055zm8.184-10.538a.592.592 0 0 1-.652-.651v-1.53a.714.714 0 0 1 .17-.482.656.656 0 0 1 .482-.2h1.785a.677.677 0 0 1 .68.68v1.53a.655.655 0 0 1-.2.481.713.713 0 0 1-.481.17zm.227 17.479a.593.593 0 0 1-.652-.652v-13.428a.611.611 0 0 1 .17-.453.656.656 0 0 1 .482-.2h1.359a.679.679 0 0 1 .652.651v13.427a.655.655 0 0 1-.2.482.613.613 0 0 1-.453.17zm6.861 0a.592.592 0 0 1-.651-.652v-13.4a.715.715 0 0 1 .17-.481.656.656 0 0 1 .482-.2h1.3a.677.677 0 0 1 .68.68v1.246a4.255 4.255 0 0 1 3.966-1.926h1.1a.679.679 0 0 1 .651.651v1.161a.566.566 0 0 1-.2.453.612.612 0 0 1-.453.17h-1.7a3.2 3.2 0 0 0-2.408.907 3.253 3.253 0 0 0-.879 2.408v8.328a.656.656 0 0 1-.2.482.716.716 0 0 1-.482.17zm12.234 0a.593.593 0 0 1-.651-.652v-11.814h-2.408a.592.592 0 0 1-.651-.651v-.963a.611.611 0 0 1 .17-.453.654.654 0 0 1 .481-.2h2.408v-1.417q0-4.816 4.872-4.815h1.586a.679.679 0 0 1 .652.651v.963a.656.656 0 0 1-.2.481.613.613 0 0 1-.453.17h-1.529a2.1 2.1 0 0 0-1.785.68 3.248 3.248 0 0 0-.51 2.011v1.275h6.062V863.7a.613.613 0 0 1 .17-.453.656.656 0 0 1 .482-.2h1.3a.679.679 0 0 1 .652.651v19.659a.655.655 0 0 1-.2.482.613.613 0 0 1-.454.17h-1.3a.592.592 0 0 1-.652-.652v-11.811h-6.062v11.813a.657.657 0 0 1-.2.482.614.614 0 0 1-.454.17zm20.9.283a6.487 6.487 0 0 1-4.844-1.757 6.837 6.837 0 0 1-1.813-4.674l-.029-1.218.029-1.218a6.732 6.732 0 0 1 1.841-4.646 7.389 7.389 0 0 1 9.631 0 6.736 6.736 0 0 1 1.841 4.646q.028.311.028 1.218t-.028 1.218a6.772 6.772 0 0 1-1.841 4.674 6.391 6.391 0 0 1-4.82 1.756zm0-2.181a3.582 3.582 0 0 0 2.8-1.133 4.931 4.931 0 0 0 1.133-3.258q.028-.283.028-1.076t-.028-1.076a4.931 4.931 0 0 0-1.133-3.258 3.582 3.582 0 0 0-2.8-1.133 3.671 3.671 0 0 0-2.833 1.133 4.83 4.83 0 0 0-1.1 3.258l-.028 1.076.028 1.076a4.83 4.83 0 0 0 1.1 3.258 3.671 3.671 0 0 0 2.828 1.132zm13.755 1.9a.846.846 0 0 1-.566-.17 1.321 1.321 0 0 1-.34-.538l-4.023-13.144-.056-.283a.575.575 0 0 1 .17-.425.641.641 0 0 1 .425-.17h1.246a.612.612 0 0 1 .453.17.646.646 0 0 1 .255.312l3.145 10.679 3.371-10.566a.761.761 0 0 1 .255-.4.726.726 0 0 1 .538-.2h.963a.728.728 0 0 1 .539.2.76.76 0 0 1 .255.4l3.371 10.566 3.144-10.679a.655.655 0 0 1 .2-.312.714.714 0 0 1 .482-.17h1.275a.542.542 0 0 1 .4.17.576.576 0 0 1 .17.425l-.057.283-3.994 13.144a1.323 1.323 0 0 1-.34.538.9.9 0 0 1-.6.17h-1.1a.86.86 0 0 1-.935-.708l-3.286-10.141-3.286 10.141a.928.928 0 0 1-.963.708z" fill="#51504f" data-name="Path 11" transform="translate(-1454.66 -838.62)"></path> |
| </g> |
| </g> |
| </g> |
| </svg> |
| |
| </a> |
| </div> |
| |
| <div id="content-close-button"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="19.799" height="19.799" viewBox="0 0 19.799 19.799"> |
| <g id="Group_1574" data-name="Group 1574" transform="translate(-41.892 290.899)"> |
| <g id="Group_1291" data-name="Group 1291" transform="rotate(-45 -308.114 -187.077)"> |
| <rect id="Rectangle_461" width="26" height="2" fill="#51504f" data-name="Rectangle 461" rx="1" transform="translate(-.209)"></rect> |
| </g> |
| <g id="Group_1292" data-name="Group 1292" transform="rotate(45 372.48 -93.011)"> |
| <rect id="Rectangle_462" width="26" height="2" fill="#51504f" data-name="Rectangle 462" rx="1" transform="translate(-.209 -.178)"></rect> |
| </g> |
| </g> |
| </svg> |
| |
| </div> |
| |
| </nav> |
| <div class="content-drawer-container" id="content-drawer"> |
| <div class="content-drawer"> |
| <div class="td-sidebar"> |
| |
| <div id="docs-version-selector" class="docs-version-selector sidebar__version-selector"> |
| <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" |
| aria-expanded="false"> |
| <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.1.0</span> |
| </a> |
| <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink"> |
| |
| </div> |
| <script type="application/x-template" id="version-item-template"> |
| <a class="dropdown-item"></a> |
| </script> |
| </div> |
| |
| <div class="searchb-box"> |
| <form class="search-form" action="search.html" method="get"> |
| <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16"> |
| <input type="hidden" name="check_keywords" value="yes" /> |
| <input type="hidden" name="area" value="default" /> |
| |
| <button class="search-form__button" type="submit"> |
| |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"> |
| <g id="Group_1579" data-name="Group 1579" transform="translate(-41.001 -41)"> |
| <path id="Path_169" d="M71.415 64.687a7.215 7.215 0 1 0-6.729 6.728 7.222 7.222 0 0 0 6.729-6.728z" fill="none" data-name="Path 169" transform="translate(-14.277 -14.276)"></path> |
| <path id="Path_170" d="M60.863 59.8l-6.093-6.09a7.78 7.78 0 1 0-1.06 1.06l6.09 6.093a.468.468 0 0 0 .662 0l.4-.4a.468.468 0 0 0 .001-.663zM42.512 49.183a6.274 6.274 0 1 1 5.851 5.85 6.28 6.28 0 0 1-5.851-5.85z" fill="#51504f" data-name="Path 170"></path> |
| </g> |
| </svg> |
| </button> |
| </form> |
| </div> |
| |
| |
| <style> |
| .searchb-box { |
| margin-bottom: 26px; |
| } |
| .searchb-box .search-form { |
| width: 100%; |
| margin-top: 20px; |
| } |
| </style> |
| |
| |
| <div class="toctree" role="navigation" aria-label="main navigation"> |
| <p class="caption"><span class="caption-text">Content</span></p> |
| <ul class="current"> |
| <li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="project.html">Project</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="license.html">License</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="start/index.html">Quick start</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="upgrading-to-2.html">Upgrading to Airflow 2.0+</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="upgrade-check.html">Upgrade Check Script</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="tutorial.html">Tutorial</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="tutorial_taskflow_api.html">Tutorial on the Taskflow API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="howto/index.html">How-to Guides</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="ui.html">UI / Screenshots</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="concepts/index.html">Concepts</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="executor/index.html">Executor</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="dag-run.html">DAG Runs</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="plugins.html">Plugins</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="security/index.html">Security</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="logging-monitoring/index.html">Logging & Monitoring</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="timezone.html">Time zones</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="usage-cli.html">Using the CLI</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="integration.html">Integration</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="kubernetes.html">Kubernetes</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="lineage.html">Lineage</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="dag-serialization.html">DAG Serialization</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="modules_management.html">Modules Management</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="release-process.html">Release policies</a></li> |
| <li class="toctree-l1 current"><a class="current reference internal" href="#">Changelog</a><ul> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-1-0-2021-05-21">Airflow 2.1.0, 2021-05-21</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#new-features">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#improvements">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#bug-fixes">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#doc-only-changes">Doc only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#misc-internal">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-0-2-2021-04-19">Airflow 2.0.2, 2021-04-19</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id1">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id2">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id3">Doc only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id4">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-0-1-2021-02-08">Airflow 2.0.1, 2021-02-08</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id5">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id6">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id7">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-0-0-2020-12-18">Airflow 2.0.0, 2020-12-18</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-15-2021-03-17">Airflow 1.10.15, 2021-03-17</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id8">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id9">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id10">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-14-2020-12-10">Airflow 1.10.14, 2020-12-10</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id11">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id12">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id13">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-13-2020-11-25">Airflow 1.10.13, 2020-11-25</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id14">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id15">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id16">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#deprecations">Deprecations</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id17">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-12-2020-08-25">Airflow 1.10.12, 2020-08-25</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id18">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id19">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id20">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id21">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-11-2020-07-10">Airflow 1.10.11, 2020-07-10</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id22">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id23">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id24">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id25">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-10-2020-04-09">Airflow 1.10.10, 2020-04-09</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id26">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id27">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id28">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id29">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id30">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-9-2020-02-07">Airflow 1.10.9, 2020-02-07</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id31">Bug Fixes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-8-2020-02-07">Airflow 1.10.8, 2020-02-07</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id32">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id33">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id34">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id35">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id36">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-7-2019-12-24">Airflow 1.10.7, 2019-12-24</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id37">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id38">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id39">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id40">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id41">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-6-2019-10-28">Airflow 1.10.6, 2019-10-28</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id42">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id43">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id44">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id45">Doc-only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id46">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-5-2019-09-04">Airflow 1.10.5, 2019-09-04</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id47">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id48">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id49">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id50">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id51">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-4-2019-08-06">Airflow 1.10.4, 2019-08-06</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id52">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#improvement">Improvement</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id53">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id54">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id55">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-3-2019-04-09">Airflow 1.10.3, 2019-04-09</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#new-feature">New Feature</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id56">Improvement</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id57">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id58">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id59">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-2-2019-01-19">Airflow 1.10.2, 2019-01-19</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id60">New features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id61">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id62">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id63">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-1-2018-11-13">Airflow 1.10.1, 2018-11-13</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id64">New features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id65">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id66">Doc-only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id67">Bug fixes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-0-2018-08-03">Airflow 1.10.0, 2018-08-03</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-9-0-2018-01-02">Airflow 1.9.0, 2018-01-02</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-8-2-2017-09-04">Airflow 1.8.2, 2017-09-04</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-8-1-2017-05-09">Airflow 1.8.1, 2017-05-09</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-8-0-2017-03-12">Airflow 1.8.0, 2017-03-12</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-7-2">Airflow 1.7.2</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-7-1-2016-05-19">Airflow 1.7.1, 2016-05-19</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l1"><a class="reference internal" href="best-practices.html">Best Practices</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="production-deployment.html">Production Deployment</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="backport-providers.html">Backport Providers</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="faq.html">FAQ</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="privacy_notice.html">Privacy Notice</a></li> |
| </ul> |
| <p class="caption"><span class="caption-text">References</span></p> |
| <ul> |
| <li class="toctree-l1"><a class="reference internal" href="operators-and-hooks-ref.html">Operators and hooks</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="cli-and-env-variables-ref.html">CLI</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="macros-ref.html">Macros</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="python-api-ref.html">Python API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="stable-rest-api-ref.html">Stable REST API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="deprecated-rest-api-ref.html">Deprecated REST API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="configurations-ref.html">Configurations</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="extra-packages-ref.html">Extra packages</a></li> |
| </ul> |
| |
| </div> |
| |
| <style type="text/css"> |
| .toctree { |
| } |
| .toctree li { |
| list-style: none; |
| } |
| .toctree .caption { |
| font-family: Roboto; |
| font-size: 18px; |
| font-weight: bold; |
| font-stretch: normal; |
| font-style: normal; |
| line-height: 1.33; |
| letter-spacing: normal; |
| color: #51504f; |
| padding-bottom: 13px; |
| text-transform: uppercase; |
| margin-bottom: 0; |
| } |
| .toctree .current > a:not([href="#"]) { |
| color: #017cee; |
| } |
| .toctree > ul { |
| padding-left: 0; |
| } |
| .toctree ul { |
| padding-left: 15px; |
| display: none; |
| } |
| .toctree > ul, |
| .toctree li.current > ul { |
| display: block; |
| } |
| |
| .toctree a .toctree-expand { |
| display: inline-block; |
| position: relative; |
| height: 1em; |
| } |
| |
| .toctree a .toctree-expand:before { |
| position: absolute; |
| top: 6px; |
| left: -12px; |
| content: '►'; |
| font-size: 7px; |
| } |
| .toctree .current > a > .toctree-expand:before { |
| content: '▼'; |
| } |
| |
| .toctree .current { |
| color: #017cee; |
| } |
| .toctree li { |
| font-family: Roboto; |
| font-size: 16px; |
| font-weight: normal; |
| font-stretch: normal; |
| font-style: normal; |
| line-height: 1.63; |
| letter-spacing: normal; |
| color: #707070; |
| } |
| |
| </style> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| <div class="d-flex"> |
| |
| |
| <div class="td-sidebar desktop-only d-print-none"> |
| |
| <div id="docs-version-selector" class="docs-version-selector sidebar__version-selector"> |
| <a class="dropdown-toggle" href="#" id="versionDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" |
| aria-expanded="false"> |
| <span class="bodytext__medium--greyish-brown">Version: </span><span class="version">2.1.0</span> |
| </a> |
| <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink"> |
| |
| </div> |
| <script type="application/x-template" id="version-item-template"> |
| <a class="dropdown-item"></a> |
| </script> |
| </div> |
| |
| <div class="searchb-box"> |
| <form class="search-form" action="search.html" method="get"> |
| <input class="search-form__input" type="text" name="q" placeholder="Search docs" size="16"> |
| <input type="hidden" name="check_keywords" value="yes" /> |
| <input type="hidden" name="area" value="default" /> |
| |
| <button class="search-form__button" type="submit"> |
| |
| <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"> |
| <g id="Group_1579" data-name="Group 1579" transform="translate(-41.001 -41)"> |
| <path id="Path_169" d="M71.415 64.687a7.215 7.215 0 1 0-6.729 6.728 7.222 7.222 0 0 0 6.729-6.728z" fill="none" data-name="Path 169" transform="translate(-14.277 -14.276)"></path> |
| <path id="Path_170" d="M60.863 59.8l-6.093-6.09a7.78 7.78 0 1 0-1.06 1.06l6.09 6.093a.468.468 0 0 0 .662 0l.4-.4a.468.468 0 0 0 .001-.663zM42.512 49.183a6.274 6.274 0 1 1 5.851 5.85 6.28 6.28 0 0 1-5.851-5.85z" fill="#51504f" data-name="Path 170"></path> |
| </g> |
| </svg> |
| </button> |
| </form> |
| </div> |
| |
| |
| <style> |
| .searchb-box { |
| margin-bottom: 26px; |
| } |
| .searchb-box .search-form { |
| width: 100%; |
| margin-top: 20px; |
| } |
| </style> |
| |
| |
| <div class="toctree" role="navigation" aria-label="main navigation"> |
| <p class="caption"><span class="caption-text">Content</span></p> |
| <ul class="current"> |
| <li class="toctree-l1"><a class="reference internal" href="index.html">Home</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="project.html">Project</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="license.html">License</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="start/index.html">Quick start</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="upgrading-to-2.html">Upgrading to Airflow 2.0+</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="upgrade-check.html">Upgrade Check Script</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="tutorial.html">Tutorial</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="tutorial_taskflow_api.html">Tutorial on the Taskflow API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="howto/index.html">How-to Guides</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="ui.html">UI / Screenshots</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="concepts/index.html">Concepts</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="executor/index.html">Executor</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="dag-run.html">DAG Runs</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="plugins.html">Plugins</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="security/index.html">Security</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="logging-monitoring/index.html">Logging & Monitoring</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="timezone.html">Time zones</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="usage-cli.html">Using the CLI</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="integration.html">Integration</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="kubernetes.html">Kubernetes</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="lineage.html">Lineage</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="dag-serialization.html">DAG Serialization</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="modules_management.html">Modules Management</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="release-process.html">Release policies</a></li> |
| <li class="toctree-l1 current"><a class="current reference internal" href="#">Changelog</a><ul> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-1-0-2021-05-21">Airflow 2.1.0, 2021-05-21</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#new-features">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#improvements">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#bug-fixes">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#doc-only-changes">Doc only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#misc-internal">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-0-2-2021-04-19">Airflow 2.0.2, 2021-04-19</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id1">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id2">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id3">Doc only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id4">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-0-1-2021-02-08">Airflow 2.0.1, 2021-02-08</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id5">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id6">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id7">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-2-0-0-2020-12-18">Airflow 2.0.0, 2020-12-18</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-15-2021-03-17">Airflow 1.10.15, 2021-03-17</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id8">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id9">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id10">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-14-2020-12-10">Airflow 1.10.14, 2020-12-10</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id11">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id12">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id13">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-13-2020-11-25">Airflow 1.10.13, 2020-11-25</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id14">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id15">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id16">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#deprecations">Deprecations</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id17">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-12-2020-08-25">Airflow 1.10.12, 2020-08-25</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id18">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id19">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id20">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id21">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-11-2020-07-10">Airflow 1.10.11, 2020-07-10</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id22">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id23">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id24">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id25">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-10-2020-04-09">Airflow 1.10.10, 2020-04-09</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id26">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id27">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id28">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id29">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id30">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-9-2020-02-07">Airflow 1.10.9, 2020-02-07</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id31">Bug Fixes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-8-2020-02-07">Airflow 1.10.8, 2020-02-07</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id32">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id33">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id34">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id35">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id36">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-7-2019-12-24">Airflow 1.10.7, 2019-12-24</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id37">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id38">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id39">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id40">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id41">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-6-2019-10-28">Airflow 1.10.6, 2019-10-28</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id42">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id43">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id44">Bug Fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id45">Doc-only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id46">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-5-2019-09-04">Airflow 1.10.5, 2019-09-04</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id47">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id48">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id49">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id50">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id51">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-4-2019-08-06">Airflow 1.10.4, 2019-08-06</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id52">New Features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#improvement">Improvement</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id53">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id54">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id55">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-3-2019-04-09">Airflow 1.10.3, 2019-04-09</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#new-feature">New Feature</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id56">Improvement</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id57">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id58">Misc/Internal</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id59">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-2-2019-01-19">Airflow 1.10.2, 2019-01-19</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id60">New features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id61">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id62">Bug fixes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id63">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-1-2018-11-13">Airflow 1.10.1, 2018-11-13</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#id64">New features</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id65">Improvements</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id66">Doc-only changes</a></li> |
| <li class="toctree-l3"><a class="reference internal" href="#id67">Bug fixes</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-10-0-2018-08-03">Airflow 1.10.0, 2018-08-03</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-9-0-2018-01-02">Airflow 1.9.0, 2018-01-02</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-8-2-2017-09-04">Airflow 1.8.2, 2017-09-04</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-8-1-2017-05-09">Airflow 1.8.1, 2017-05-09</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-8-0-2017-03-12">Airflow 1.8.0, 2017-03-12</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-7-2">Airflow 1.7.2</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="#airflow-1-7-1-2016-05-19">Airflow 1.7.1, 2016-05-19</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l1"><a class="reference internal" href="best-practices.html">Best Practices</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="production-deployment.html">Production Deployment</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="backport-providers.html">Backport Providers</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="faq.html">FAQ</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="privacy_notice.html">Privacy Notice</a></li> |
| </ul> |
| <p class="caption"><span class="caption-text">References</span></p> |
| <ul> |
| <li class="toctree-l1"><a class="reference internal" href="operators-and-hooks-ref.html">Operators and hooks</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="cli-and-env-variables-ref.html">CLI</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="macros-ref.html">Macros</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="python-api-ref.html">Python API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="stable-rest-api-ref.html">Stable REST API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="deprecated-rest-api-ref.html">Deprecated REST API</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="configurations-ref.html">Configurations</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="extra-packages-ref.html">Extra packages</a></li> |
| </ul> |
| |
| </div> |
| |
| <style type="text/css"> |
| .toctree { |
| } |
| .toctree li { |
| list-style: none; |
| } |
| .toctree .caption { |
| font-family: Roboto; |
| font-size: 18px; |
| font-weight: bold; |
| font-stretch: normal; |
| font-style: normal; |
| line-height: 1.33; |
| letter-spacing: normal; |
| color: #51504f; |
| padding-bottom: 13px; |
| text-transform: uppercase; |
| margin-bottom: 0; |
| } |
| .toctree .current > a:not([href="#"]) { |
| color: #017cee; |
| } |
| .toctree > ul { |
| padding-left: 0; |
| } |
| .toctree ul { |
| padding-left: 15px; |
| display: none; |
| } |
| .toctree > ul, |
| .toctree li.current > ul { |
| display: block; |
| } |
| |
| .toctree a .toctree-expand { |
| display: inline-block; |
| position: relative; |
| height: 1em; |
| } |
| |
| .toctree a .toctree-expand:before { |
| position: absolute; |
| top: 6px; |
| left: -12px; |
| content: '►'; |
| font-size: 7px; |
| } |
| .toctree .current > a > .toctree-expand:before { |
| content: '▼'; |
| } |
| |
| .toctree .current { |
| color: #017cee; |
| } |
| .toctree li { |
| font-family: Roboto; |
| font-size: 16px; |
| font-weight: normal; |
| font-stretch: normal; |
| font-style: normal; |
| line-height: 1.63; |
| letter-spacing: normal; |
| color: #707070; |
| } |
| |
| </style> |
| </div> |
| |
| |
| |
| |
| <main class="col-12 col-md-9 col-xl-8" role="main"> |
| |
| |
| |
| |
| |
| |
| |
| |
| <div role="navigation" aria-label="breadcrumbs navigation" class="d-none d-md-block d-print-none"> |
| |
| <ul class="breadcrumb"> |
| |
| <li class="breadcrumb-item"><a href="index.html" class="icon icon-home"> Home</a></li> |
| |
| <li class="breadcrumb-item"><a href="changelog.html"> Changelog</a></li> |
| |
| </ul> |
| </div> |
| |
| <div class="rst-content"> |
| <div class="document"> |
| <div class="documentwrapper"> |
| <div class="bodywrapper"> |
| <div class="body" role="main"> |
| |
| <blockquote> |
| <div></div></blockquote> |
| <div class="section" id="changelog"> |
| <h1>Changelog<a class="headerlink" href="#changelog" title="Permalink to this headline">¶</a></h1> |
| <div class="section" id="airflow-2-1-0-2021-05-21"> |
| <h2>Airflow 2.1.0, 2021-05-21<a class="headerlink" href="#airflow-2-1-0-2021-05-21" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="new-features"> |
| <h3>New Features<a class="headerlink" href="#new-features" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">PythonVirtualenvDecorator</span></code> to Taskflow API (#14761)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">Taskgroup</span></code> decorator (#15034)</p></li> |
| <li><p>Create a DAG Calendar View (#15423)</p></li> |
| <li><p>Create cross-DAG dependencies view (#13199)</p></li> |
| <li><p>Add rest API to query for providers (#13394)</p></li> |
| <li><p>Mask passwords and sensitive info in task logs and UI (#15599)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">SubprocessHook</span></code> for running commands from operators (#13423)</p></li> |
| <li><p>Add DAG Timeout in UI page "DAG Details" (#14165)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">WeekDayBranchOperator</span></code> (#13997)</p></li> |
| <li><p>Add JSON linter to DAG Trigger UI (#13551)</p></li> |
| <li><p>Add DAG Description Doc to Trigger UI Page (#13365)</p></li> |
| <li><p>Add airflow webserver URL into SLA miss email. (#13249)</p></li> |
| <li><p>Add read only REST API endpoints for users (#14735)</p></li> |
| <li><p>Add files to generate Airflow's Python SDK (#14739)</p></li> |
| <li><p>Add dynamic fields to snowflake connection (#14724)</p></li> |
| <li><p>Add read only REST API endpoint for roles and permissions (#14664)</p></li> |
| <li><p>Add new datetime branch operator (#11964)</p></li> |
| <li><p>Add Google leveldb hook and operator (#13109) (#14105)</p></li> |
| <li><p>Add plugins endpoint to the REST API (#14280)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">worker_pod_pending_timeout</span></code> support (#15263)</p></li> |
| <li><p>Add support for labeling DAG edges (#15142)</p></li> |
| <li><p>Add CUD REST API endpoints for Roles (#14840)</p></li> |
| <li><p>Import connections from a file (#15177)</p></li> |
| <li><p>A bunch of <code class="docutils literal notranslate"><span class="pre">template_fields_renderers</span></code> additions (#15130)</p></li> |
| <li><p>Add REST API query sort and order to some endpoints (#14895)</p></li> |
| <li><p>Add timezone context in new ui (#15096)</p></li> |
| <li><p>Add query mutations to new UI (#15068)</p></li> |
| <li><p>Add different modes to sort dag files for parsing (#15046)</p></li> |
| <li><p>Auto refresh on Tree View (#15474)</p></li> |
| <li><p>BashOperator to raise <code class="docutils literal notranslate"><span class="pre">AirflowSkipException</span></code> on exit code 99 (by default, configurable) (#13421) (#14963)</p></li> |
| <li><p>Clear tasks by task ids in REST API (#14500)</p></li> |
| <li><p>Support jinja2 native Python types (#14603)</p></li> |
| <li><p>Allow celery workers without gossip or mingle modes (#13880)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">jobs</span> <span class="pre">check</span></code> CLI command to check health of jobs (Scheduler etc) (#14519)</p></li> |
| <li><p>Rename <code class="docutils literal notranslate"><span class="pre">DateTimeBranchOperator</span></code> to <code class="docutils literal notranslate"><span class="pre">BranchDateTimeOperator</span></code> (#14720)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="improvements"> |
| <h3>Improvements<a class="headerlink" href="#improvements" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add optional result handler callback to <code class="docutils literal notranslate"><span class="pre">DbApiHook</span></code> (#15581)</p></li> |
| <li><p>Update Flask App Builder limit to recently released 3.3 (#15792)</p></li> |
| <li><p>Prevent creating flask sessions on REST API requests (#15295)</p></li> |
| <li><p>Sync DAG specific permissions when parsing (#15311)</p></li> |
| <li><p>Increase maximum length of pool name on Tasks to 256 characters (#15203)</p></li> |
| <li><p>Enforce READ COMMITTED isolation when using mysql (#15714)</p></li> |
| <li><p>Auto-apply <code class="docutils literal notranslate"><span class="pre">apply_default</span></code> to subclasses of <code class="docutils literal notranslate"><span class="pre">BaseOperator</span></code> (#15667)</p></li> |
| <li><p>Emit error on duplicated DAG ID (#15302)</p></li> |
| <li><p>Update <code class="docutils literal notranslate"><span class="pre">KubernetesExecutor</span></code> pod templates to allow access to IAM permissions (#15669)</p></li> |
| <li><p>More verbose logs when running <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">db</span> <span class="pre">check-migrations</span></code> (#15662)</p></li> |
| <li><p>When one_success mark task as failed if no success (#15467)</p></li> |
| <li><p>Add an option to trigger a dag w/o changing conf (#15591)</p></li> |
| <li><p>Add Airflow UI instance_name configuration option (#10162)</p></li> |
| <li><p>Add a decorator to retry functions with DB transactions (#14109)</p></li> |
| <li><p>Add return to PythonVirtualenvOperator's execute method (#14061)</p></li> |
| <li><p>Add verify_ssl config for kubernetes (#13516)</p></li> |
| <li><p>Add description about <code class="docutils literal notranslate"><span class="pre">secret_key</span></code> when Webserver > 1 (#15546)</p></li> |
| <li><p>Add Traceback in LogRecord in <code class="docutils literal notranslate"><span class="pre">JSONFormatter</span></code> (#15414)</p></li> |
| <li><p>Add support for arbitrary json in conn uri format (#15100)</p></li> |
| <li><p>Adds description field in variable (#12413) (#15194)</p></li> |
| <li><p>Add logs to show last modified in SFTP, FTP and Filesystem sensor (#15134)</p></li> |
| <li><p>Execute <code class="docutils literal notranslate"><span class="pre">on_failure_callback</span></code> when SIGTERM is received (#15172)</p></li> |
| <li><p>Allow hiding of all edges when highlighting states (#15281)</p></li> |
| <li><p>Display explicit error in case UID has no actual username (#15212)</p></li> |
| <li><p>Serve logs with Scheduler when using Local or Sequential Executor (#15557)</p></li> |
| <li><p>Deactivate trigger, refresh, and delete controls on dag detail view. (#14144)</p></li> |
| <li><p>Turn off autocomplete for connection forms (#15073)</p></li> |
| <li><p>Increase default <code class="docutils literal notranslate"><span class="pre">worker_refresh_interval</span></code> to <code class="docutils literal notranslate"><span class="pre">6000</span></code> seconds (#14970)</p></li> |
| <li><p>Only show User's local timezone if it's not UTC (#13904)</p></li> |
| <li><p>Suppress LOG/WARNING for a few tasks CLI for better CLI experience (#14567)</p></li> |
| <li><p>Configurable API response (CORS) headers (#13620)</p></li> |
| <li><p>Allow viewers to see all docs links (#14197)</p></li> |
| <li><p>Update Tree View date ticks (#14141)</p></li> |
| <li><p>Make the tooltip to Pause / Unpause a DAG clearer (#13642)</p></li> |
| <li><p>Warn about precedence of env var when getting variables (#13501)</p></li> |
| <li><p>Move <code class="docutils literal notranslate"><span class="pre">[celery]</span> <span class="pre">default_queue</span></code> config to <code class="docutils literal notranslate"><span class="pre">[operators]</span> <span class="pre">default_queue</span></code> to re-use between executors (#14699)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="bug-fixes"> |
| <h3>Bug Fixes<a class="headerlink" href="#bug-fixes" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Fix 500 error from <code class="docutils literal notranslate"><span class="pre">updateTaskInstancesState</span></code> API endpoint when <code class="docutils literal notranslate"><span class="pre">dry_run</span></code> not passed (#15889)</p></li> |
| <li><p>Ensure that task preceding a PythonVirtualenvOperator doesn't fail (#15822)</p></li> |
| <li><p>Prevent mixed case env vars from crashing processes like worker (#14380)</p></li> |
| <li><p>Fixed type annotations in DAG decorator (#15778)</p></li> |
| <li><p>Fix on_failure_callback when task receive SIGKILL (#15537)</p></li> |
| <li><p>Fix dags table overflow (#15660)</p></li> |
| <li><p>Fix changing the parent dag state on subdag clear (#15562)</p></li> |
| <li><p>Fix reading from zip package to default to text (#13962)</p></li> |
| <li><p>Fix wrong parameter for <code class="docutils literal notranslate"><span class="pre">drawDagStatsForDag</span></code> in dags.html (#13884)</p></li> |
| <li><p>Fix QueuedLocalWorker crashing with EOFError (#13215)</p></li> |
| <li><p>Fix typo in <code class="docutils literal notranslate"><span class="pre">NotPreviouslySkippedDep</span></code> (#13933)</p></li> |
| <li><p>Fix parallelism after KubeExecutor pod adoption (#15555)</p></li> |
| <li><p>Fix kube client on mac with keepalive enabled (#15551)</p></li> |
| <li><p>Fixes wrong limit for dask for python>3.7 (should be <3.7) (#15545)</p></li> |
| <li><p>Fix Task Adoption in <code class="docutils literal notranslate"><span class="pre">KubernetesExecutor</span></code> (#14795)</p></li> |
| <li><p>Fix timeout when using XCom with <code class="docutils literal notranslate"><span class="pre">KubernetesPodOperator</span></code> (#15388)</p></li> |
| <li><p>Fix deprecated provider aliases in "extras" not working (#15465)</p></li> |
| <li><p>Fixed default XCom deserialization. (#14827)</p></li> |
| <li><p>Fix used_group_ids in <code class="docutils literal notranslate"><span class="pre">dag.partial_subset</span></code> (#13700) (#15308)</p></li> |
| <li><p>Further fix trimmed <code class="docutils literal notranslate"><span class="pre">pod_id</span></code> for <code class="docutils literal notranslate"><span class="pre">KubernetesPodOperator</span></code> (#15445)</p></li> |
| <li><p>Bugfix: Invalid name when trimmed <cite>pod_id</cite> ends with hyphen in <code class="docutils literal notranslate"><span class="pre">KubernetesPodOperator</span></code> (#15443)</p></li> |
| <li><p>Fix incorrect slots stats when TI <code class="docutils literal notranslate"><span class="pre">pool_slots</span> <span class="pre">></span> <span class="pre">1</span></code> (#15426)</p></li> |
| <li><p>Fix DAG last run link (#15327)</p></li> |
| <li><p>Fix <code class="docutils literal notranslate"><span class="pre">sync-perm</span></code> to work correctly when update_fab_perms = False (#14847)</p></li> |
| <li><p>Fixes limits on Arrow for plexus test (#14781)</p></li> |
| <li><p>Fix UI bugs in tree view (#14566)</p></li> |
| <li><p>Fix AzureDataFactoryHook failing to instantiate its connection (#14565)</p></li> |
| <li><p>Fix permission error on non-POSIX filesystem (#13121)</p></li> |
| <li><p>Fix spelling in "ignorable" (#14348)</p></li> |
| <li><p>Fix get_context_data doctest import (#14288)</p></li> |
| <li><p>Correct typo in <code class="docutils literal notranslate"><span class="pre">GCSObjectsWtihPrefixExistenceSensor</span></code> (#14179)</p></li> |
| <li><p>Fix order of failed deps (#14036)</p></li> |
| <li><p>Fix critical <code class="docutils literal notranslate"><span class="pre">CeleryKubernetesExecutor</span></code> bug (#13247)</p></li> |
| <li><p>Fix four bugs in <code class="docutils literal notranslate"><span class="pre">StackdriverTaskHandler</span></code> (#13784)</p></li> |
| <li><p><code class="docutils literal notranslate"><span class="pre">func.sum</span></code> may return <code class="docutils literal notranslate"><span class="pre">Decimal</span></code> that break rest APIs (#15585)</p></li> |
| <li><p>Persist tags params in pagination (#15411)</p></li> |
| <li><p>API: Raise <code class="docutils literal notranslate"><span class="pre">AlreadyExists</span></code> exception when the <code class="docutils literal notranslate"><span class="pre">execution_date</span></code> is same (#15174)</p></li> |
| <li><p>Remove duplicate call to <code class="docutils literal notranslate"><span class="pre">sync_metadata</span></code> inside <code class="docutils literal notranslate"><span class="pre">DagFileProcessorManager</span></code> (#15121)</p></li> |
| <li><p>Extra <code class="docutils literal notranslate"><span class="pre">docker-py</span></code> update to resolve docker op issues (#15731)</p></li> |
| <li><p>Ensure executors end method is called (#14085)</p></li> |
| <li><p>Remove <code class="docutils literal notranslate"><span class="pre">user_id</span></code> from API schema (#15117)</p></li> |
| <li><p>Prevent clickable bad links on disabled pagination (#15074)</p></li> |
| <li><p>Acquire lock on db for the time of migration (#10151)</p></li> |
| <li><p>Skip SLA check only if SLA is None (#14064)</p></li> |
| <li><p>Print right version in airflow info command (#14560)</p></li> |
| <li><p>Make <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">info</span></code> work with pipes (#14528)</p></li> |
| <li><p>Rework client-side script for connection form. (#14052)</p></li> |
| <li><p>API: Add <code class="docutils literal notranslate"><span class="pre">CollectionInfo</span></code> in all Collections that have <code class="docutils literal notranslate"><span class="pre">total_entries</span></code> (#14366)</p></li> |
| <li><p>Fix <code class="docutils literal notranslate"><span class="pre">task_instance_mutation_hook</span></code> when importing airflow.models.dagrun (#15851)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="doc-only-changes"> |
| <h3>Doc only changes<a class="headerlink" href="#doc-only-changes" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Fix docstring of SqlSensor (#15466)</p></li> |
| <li><p>Small changes on "DAGs and Tasks documentation" (#14853)</p></li> |
| <li><p>Add note on changes to configuration options (#15696)</p></li> |
| <li><p>Add docs to the <code class="docutils literal notranslate"><span class="pre">markdownlint</span></code> and <code class="docutils literal notranslate"><span class="pre">yamllint</span></code> config files (#15682)</p></li> |
| <li><p>Rename old "Experimental" API to deprecated in the docs. (#15653)</p></li> |
| <li><p>Fix documentation error in <cite>git_sync_template.yaml</cite> (#13197)</p></li> |
| <li><p>Fix doc link permission name (#14972)</p></li> |
| <li><p>Fix link to Helm chart docs (#14652)</p></li> |
| <li><p>Fix docstrings for Kubernetes code (#14605)</p></li> |
| <li><p>docs: Capitalize & minor fixes (#14283) (#14534)</p></li> |
| <li><p>Fixed reading from zip package to default to text. (#13984)</p></li> |
| <li><p>An initial rework of the "Concepts" docs (#15444)</p></li> |
| <li><p>Improve docstrings for various modules (#15047)</p></li> |
| <li><p>Add documentation on database connection URI (#14124)</p></li> |
| <li><p>Add Helm Chart logo to docs index (#14762)</p></li> |
| <li><p>Create a new documentation package for Helm Chart (#14643)</p></li> |
| <li><p>Add docs about supported logging levels (#14507)</p></li> |
| <li><p>Update docs about tableau and salesforce provider (#14495)</p></li> |
| <li><p>Replace deprecated doc links to the correct one (#14429)</p></li> |
| <li><p>Refactor redundant doc url logic to use utility (#14080)</p></li> |
| <li><p>docs: NOTICE: Updated 2016-2019 to 2016-now (#14248)</p></li> |
| <li><p>Skip DAG perm sync during parsing if possible (#15464)</p></li> |
| <li><p>Add picture and examples for Edge Labels (#15310)</p></li> |
| <li><p>Add example DAG & how-to guide for sqlite (#13196)</p></li> |
| <li><p>Add links to new modules for deprecated modules (#15316)</p></li> |
| <li><p>Add note in Updating.md about FAB data model change (#14478)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="misc-internal"> |
| <h3>Misc/Internal<a class="headerlink" href="#misc-internal" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Fix <code class="docutils literal notranslate"><span class="pre">logging.exception</span></code> redundancy (#14823)</p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">stylelint</span></code> to remove vulnerable sub-dependency (#15784)</p></li> |
| <li><p>Add resolution to force dependencies to use patched version of lodash (#15777)</p></li> |
| <li><p>Update croniter to 1.0.x series (#15769)</p></li> |
| <li><p>Get rid of Airflow 1.10 in Breeze (#15712)</p></li> |
| <li><p>Run helm chart tests in parallel (#15706)</p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">ssri</span></code> from 6.0.1 to 6.0.2 in /airflow/www (#15437)</p></li> |
| <li><p>Remove the limit on Gunicorn dependency (#15611)</p></li> |
| <li><p>Better "dependency already registered" warning message for tasks #14613 (#14860)</p></li> |
| <li><p>Pin pandas-gbq to <0.15.0 (#15114)</p></li> |
| <li><p>Use Pip 21.* to install airflow officially (#15513)</p></li> |
| <li><p>Bump mysqlclient to support the 1.4.x and 2.x series (#14978)</p></li> |
| <li><p>Finish refactor of DAG resource name helper (#15511)</p></li> |
| <li><p>Refactor/Cleanup Presentation of Graph Task and Path Highlighting (#15257)</p></li> |
| <li><p>Standardize default fab perms (#14946)</p></li> |
| <li><p>Remove <code class="docutils literal notranslate"><span class="pre">datepicker</span></code> for task instance detail view (#15284)</p></li> |
| <li><p>Turn provider's import warnings into debug logs (#14903)</p></li> |
| <li><p>Remove left-over fields from required in provider_info schema. (#14119)</p></li> |
| <li><p>Deprecate <code class="docutils literal notranslate"><span class="pre">tableau</span></code> extra (#13595)</p></li> |
| <li><p>Use built-in <cite>cached_property</cite> on Python 3.8 where possible (#14606)</p></li> |
| <li><p>Clean-up JS code in UI templates (#14019)</p></li> |
| <li><p>Bump elliptic from 6.5.3 to 6.5.4 in /airflow/www (#14668)</p></li> |
| <li><p>Switch to f-strings using <code class="docutils literal notranslate"><span class="pre">flynt</span></code>. (#13732)</p></li> |
| <li><p>use <code class="docutils literal notranslate"><span class="pre">jquery</span></code> ready instead of vanilla js (#15258)</p></li> |
| <li><p>Migrate task instance log (ti_log) js (#15309)</p></li> |
| <li><p>Migrate graph js (#15307)</p></li> |
| <li><p>Migrate dags.html javascript (#14692)</p></li> |
| <li><p>Removes unnecessary AzureContainerInstance connection type (#15514)</p></li> |
| <li><p>Separate Kubernetes pod_launcher from core airflow (#15165)</p></li> |
| <li><p>update remaining old import paths of operators (#15127)</p></li> |
| <li><p>Remove broken and undocumented "demo mode" feature (#14601)</p></li> |
| <li><p>Simplify configuration/legibility of <code class="docutils literal notranslate"><span class="pre">Webpack</span></code> entries (#14551)</p></li> |
| <li><p>remove inline tree js (#14552)</p></li> |
| <li><p>Js linting and inline migration for simple scripts (#14215)</p></li> |
| <li><p>Remove use of repeated constant in AirflowConfigParser (#14023)</p></li> |
| <li><p>Deprecate email credentials from environment variables. (#13601)</p></li> |
| <li><p>Remove unused 'context' variable in task_instance.py (#14049)</p></li> |
| <li><p>Disable suppress_logs_and_warning in cli when debugging (#13180)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-2-0-2-2021-04-19"> |
| <h2>Airflow 2.0.2, 2021-04-19<a class="headerlink" href="#airflow-2-0-2-2021-04-19" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id1"> |
| <h3>Bug Fixes<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Bugfix: <code class="docutils literal notranslate"><span class="pre">TypeError</span></code> when Serializing & sorting iterable properties of DAGs (#15395)</p></li> |
| <li><p>Fix missing <code class="docutils literal notranslate"><span class="pre">on_load</span></code> trigger for folder-based plugins (#15208)</p></li> |
| <li><p><code class="docutils literal notranslate"><span class="pre">kubernetes</span> <span class="pre">cleanup-pods</span></code> subcommand will only clean up Airflow-created Pods (#15204)</p></li> |
| <li><p>Fix password masking in CLI action_logging (#15143)</p></li> |
| <li><p>Fix url generation for TriggerDagRunOperatorLink (#14990)</p></li> |
| <li><p>Restore base lineage backend (#14146)</p></li> |
| <li><p>Unable to trigger backfill or manual jobs with Kubernetes executor. (#14160)</p></li> |
| <li><p>Bugfix: Task docs are not shown in the Task Instance Detail View (#15191)</p></li> |
| <li><p>Bugfix: Fix overriding <code class="docutils literal notranslate"><span class="pre">pod_template_file</span></code> in KubernetesExecutor (#15197)</p></li> |
| <li><p>Bugfix: resources in <code class="docutils literal notranslate"><span class="pre">executor_config</span></code> breaks Graph View in UI (#15199)</p></li> |
| <li><p>Fix celery executor bug trying to call len on map (#14883)</p></li> |
| <li><p>Fix bug in airflow.stats timing that broke dogstatsd mode (#15132)</p></li> |
| <li><p>Avoid scheduler/parser manager deadlock by using non-blocking IO (#15112)</p></li> |
| <li><p>Re-introduce <code class="docutils literal notranslate"><span class="pre">dagrun.schedule_delay</span></code> metric (#15105)</p></li> |
| <li><p>Compare string values, not if strings are the same object in Kube executor(#14942)</p></li> |
| <li><p>Pass queue to BaseExecutor.execute_async like in airflow 1.10 (#14861)</p></li> |
| <li><p>Scheduler: Remove TIs from starved pools from the critical path. (#14476)</p></li> |
| <li><p>Remove extra/needless deprecation warnings from airflow.contrib module (#15065)</p></li> |
| <li><p>Fix support for long dag_id and task_id in KubernetesExecutor (#14703)</p></li> |
| <li><p>Sort lists, sets and tuples in Serialized DAGs (#14909)</p></li> |
| <li><p>Simplify cleaning string passed to origin param (#14738) (#14905)</p></li> |
| <li><p>Fix error when running tasks with Sentry integration enabled. (#13929)</p></li> |
| <li><p>Webserver: Sanitize string passed to origin param (#14738)</p></li> |
| <li><p>Fix losing duration < 1 secs in tree (#13537)</p></li> |
| <li><p>Pin SQLAlchemy to <1.4 due to breakage of sqlalchemy-utils (#14812)</p></li> |
| <li><p>Fix KubernetesExecutor issue with deleted pending pods (#14810)</p></li> |
| <li><p>Default to Celery Task model when backend model does not exist (#14612)</p></li> |
| <li><p>Bugfix: Plugins endpoint was unauthenticated (#14570)</p></li> |
| <li><p>BugFix: fix DAG doc display (especially for TaskFlow DAGs) (#14564)</p></li> |
| <li><p>BugFix: TypeError in airflow.kubernetes.pod_launcher's monitor_pod (#14513)</p></li> |
| <li><p>Bugfix: Fix wrong output of tags and owners in dag detail API endpoint (#14490)</p></li> |
| <li><p>Fix logging error with task error when JSON logging is enabled (#14456)</p></li> |
| <li><p>Fix statsd metrics not sending when using daemon mode (#14454)</p></li> |
| <li><p>Gracefully handle missing start_date and end_date for DagRun (#14452)</p></li> |
| <li><p>BugFix: Serialize max_retry_delay as a timedelta (#14436)</p></li> |
| <li><p>Fix crash when user clicks on "Task Instance Details" caused by start_date being None (#14416)</p></li> |
| <li><p>BugFix: Fix TaskInstance API call fails if a task is removed from running DAG (#14381)</p></li> |
| <li><p>Scheduler should not fail when invalid <code class="docutils literal notranslate"><span class="pre">executor_config</span></code> is passed (#14323)</p></li> |
| <li><p>Fix bug allowing task instances to survive when dagrun_timeout is exceeded (#14321)</p></li> |
| <li><p>Fix bug where DAG timezone was not always shown correctly in UI tooltips (#14204)</p></li> |
| <li><p>Use <code class="docutils literal notranslate"><span class="pre">Lax</span></code> for <code class="docutils literal notranslate"><span class="pre">cookie_samesite</span></code> when empty string is passed (#14183)</p></li> |
| <li><p>[AIRFLOW-6076] fix <code class="docutils literal notranslate"><span class="pre">dag.cli()</span></code> KeyError (#13647)</p></li> |
| <li><p>Fix running child tasks in a subdag after clearing a successful subdag (#14776)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id2"> |
| <h3>Improvements<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Remove unused JS packages causing false security alerts (#15383)</p></li> |
| <li><p>Change default of <code class="docutils literal notranslate"><span class="pre">[kubernetes]</span> <span class="pre">enable_tcp_keepalive</span></code> for new installs to <code class="docutils literal notranslate"><span class="pre">True</span></code> (#15338)</p></li> |
| <li><p>Fixed #14270: Add error message in OOM situations (#15207)</p></li> |
| <li><p>Better compatibility/diagnostics for arbitrary UID in docker image (#15162)</p></li> |
| <li><p>Updates 3.6 limits for latest versions of a few libraries (#15209)</p></li> |
| <li><p>Adds Blinker dependency which is missing after recent changes (#15182)</p></li> |
| <li><p>Remove 'conf' from search_columns in DagRun View (#15099)</p></li> |
| <li><p>More proper default value for namespace in K8S cleanup-pods CLI (#15060)</p></li> |
| <li><p>Faster default role syncing during webserver start (#15017)</p></li> |
| <li><p>Speed up webserver start when there are many DAGs (#14993)</p></li> |
| <li><p>Much easier to use and better documented Docker image (#14911)</p></li> |
| <li><p>Use <code class="docutils literal notranslate"><span class="pre">libyaml</span></code> C library when available. (#14577)</p></li> |
| <li><p>Don't create unittest.cfg when not running in unit test mode (#14420)</p></li> |
| <li><p>Webserver: Allow Filtering TaskInstances by queued_dttm (#14708)</p></li> |
| <li><p>Update Flask-AppBuilder dependency to allow 3.2 (and all 3.x series) (#14665)</p></li> |
| <li><p>Remember expanded task groups in browser local storage (#14661)</p></li> |
| <li><p>Add plain format output to cli tables (#14546)</p></li> |
| <li><p>Make <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">dags</span> <span class="pre">show</span></code> command display TaskGroups (#14269)</p></li> |
| <li><p>Increase maximum size of <code class="docutils literal notranslate"><span class="pre">extra</span></code> connection field. (#12944)</p></li> |
| <li><p>Speed up clear_task_instances by doing a single sql delete for TaskReschedule (#14048)</p></li> |
| <li><p>Add more flexibility with FAB menu links (#13903)</p></li> |
| <li><p>Add better description and guidance in case of sqlite version mismatch (#14209)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id3"> |
| <h3>Doc only changes<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add documentation create/update community providers (#15061)</p></li> |
| <li><p>Fix mistake and typos in airflow.utils.timezone docstrings (#15180)</p></li> |
| <li><p>Replace new url for Stable Airflow Docs (#15169)</p></li> |
| <li><p>Docs: Clarify behavior of delete_worker_pods_on_failure (#14958)</p></li> |
| <li><p>Create a documentation package for Docker image (#14846)</p></li> |
| <li><p>Multiple minor doc (OpenAPI) fixes (#14917)</p></li> |
| <li><p>Replace Graph View Screenshot to show Auto-refresh (#14571)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id4"> |
| <h3>Misc/Internal<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Import Connection lazily in hooks to avoid cycles (#15361)</p></li> |
| <li><p>Rename last_scheduler_run into last_parsed_time, and ensure it's updated in DB (#14581)</p></li> |
| <li><p>Make TaskInstance.pool_slots not nullable with a default of 1 (#14406)</p></li> |
| <li><p>Log migrations info in consistent way (#14158)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-2-0-1-2021-02-08"> |
| <h2>Airflow 2.0.1, 2021-02-08<a class="headerlink" href="#airflow-2-0-1-2021-02-08" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id5"> |
| <h3>Bug Fixes<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Bugfix: Return XCom Value in the XCom Endpoint API (#13684)</p></li> |
| <li><p>Bugfix: Import error when using custom backend and <code class="docutils literal notranslate"><span class="pre">sql_alchemy_conn_secret</span></code> (#13260)</p></li> |
| <li><p>Allow PID file path to be relative when daemonize a process (scheduler, kerberos, etc) (#13232)</p></li> |
| <li><p>Bugfix: no generic <code class="docutils literal notranslate"><span class="pre">DROP</span> <span class="pre">CONSTRAINT</span></code> in MySQL during <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">db</span> <span class="pre">upgrade</span></code> (#13239)</p></li> |
| <li><p>Bugfix: Sync Access Control defined in DAGs when running <code class="docutils literal notranslate"><span class="pre">sync-perm</span></code> (#13377)</p></li> |
| <li><p>Stop sending Callback Requests if no callbacks are defined on DAG (#13163)</p></li> |
| <li><p>BugFix: Dag-level Callback Requests were not run (#13651)</p></li> |
| <li><p>Stop creating duplicate Dag File Processors (#13662)</p></li> |
| <li><p>Filter DagRuns with Task Instances in removed State while Scheduling (#13165)</p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">datatables.net</span></code> from 1.10.21 to 1.10.22 in /airflow/www (#13143)</p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">datatables.net</span></code> JS to 1.10.23 (#13253)</p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">dompurify</span></code> from 2.0.12 to 2.2.6 in /airflow/www (#13164)</p></li> |
| <li><p>Update minimum <code class="docutils literal notranslate"><span class="pre">cattrs</span></code> version (#13223)</p></li> |
| <li><p>Remove inapplicable arg 'output' for CLI pools import/export (#13071)</p></li> |
| <li><p>Webserver: Fix the behavior to deactivate the authentication option and add docs (#13191)</p></li> |
| <li><p>Fix: add support for no-menu plugin views (#11742)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">python-daemon</span></code> limit for Python 3.8+ to fix daemon crash (#13540)</p></li> |
| <li><p>Change the default celery <code class="docutils literal notranslate"><span class="pre">worker_concurrency</span></code> to 16 (#13612)</p></li> |
| <li><p>Audit Log records View should not contain link if <code class="docutils literal notranslate"><span class="pre">dag_id</span></code> is None (#13619)</p></li> |
| <li><p>Fix invalid <code class="docutils literal notranslate"><span class="pre">continue_token</span></code> for cleanup list pods (#13563)</p></li> |
| <li><p>Switches to latest version of snowflake connector (#13654)</p></li> |
| <li><p>Fix backfill crash on task retry or reschedule (#13712)</p></li> |
| <li><p>Setting <code class="docutils literal notranslate"><span class="pre">max_tis_per_query</span></code> to <code class="docutils literal notranslate"><span class="pre">0</span></code> now correctly removes the limit (#13512)</p></li> |
| <li><p>Fix race conditions in task callback invocations (#10917)</p></li> |
| <li><p>Fix webserver exiting when gunicorn master crashes (#13518)(#13780)</p></li> |
| <li><p>Fix SQL syntax to check duplicate connections (#13783)</p></li> |
| <li><p><code class="docutils literal notranslate"><span class="pre">BaseBranchOperator</span></code> will push to xcom by default (#13704) (#13763)</p></li> |
| <li><p>Fix Deprecation for <code class="docutils literal notranslate"><span class="pre">configuration.getsection</span></code> (#13804)</p></li> |
| <li><p>Fix TaskNotFound in log endpoint (#13872)</p></li> |
| <li><p>Fix race condition when using Dynamic DAGs (#13893)</p></li> |
| <li><p>Fix: Linux/Chrome window bouncing in Webserver</p></li> |
| <li><p>Fix db shell for sqlite (#13907)</p></li> |
| <li><p>Only compare updated time when Serialized DAG exists (#13899)</p></li> |
| <li><p>Fix dag run type enum query for mysqldb driver (#13278)</p></li> |
| <li><p>Add authentication to lineage endpoint for experimental API (#13870)</p></li> |
| <li><p>Do not add User role perms to custom roles. (#13856)</p></li> |
| <li><p>Do not add <code class="docutils literal notranslate"><span class="pre">Website.can_read</span></code> access to default roles. (#13923)</p></li> |
| <li><p>Fix invalid value error caused by long Kubernetes pod name (#13299)</p></li> |
| <li><p>Fix DB Migration for SQLite to upgrade to 2.0 (#13921)</p></li> |
| <li><p>Bugfix: Manual DagRun trigger should not skip scheduled runs (#13963)</p></li> |
| <li><p>Stop loading Extra Operator links in Scheduler (#13932)</p></li> |
| <li><p>Added missing return parameter in read function of <code class="docutils literal notranslate"><span class="pre">FileTaskHandler</span></code> (#14001)</p></li> |
| <li><p>Bugfix: Do not try to create a duplicate Dag Run in Scheduler (#13920)</p></li> |
| <li><p>Make <code class="docutils literal notranslate"><span class="pre">v1/config</span></code> endpoint respect webserver <code class="docutils literal notranslate"><span class="pre">expose_config</span></code> setting (#14020)</p></li> |
| <li><p>Disable row level locking for Mariadb and MySQL <8 (#14031)</p></li> |
| <li><p>Bugfix: Fix permissions to triggering only specific DAGs (#13922)</p></li> |
| <li><p>Fix broken SLA Mechanism (#14056)</p></li> |
| <li><p>Bugfix: Scheduler fails if task is removed at runtime (#14057)</p></li> |
| <li><p>Remove permissions to read Configurations for User and Viewer roles (#14067)</p></li> |
| <li><p>Fix DB Migration from 2.0.1rc1</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id6"> |
| <h3>Improvements<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Increase the default <code class="docutils literal notranslate"><span class="pre">min_file_process_interval</span></code> to decrease CPU Usage (#13664)</p></li> |
| <li><p>Dispose connections when running tasks with <code class="docutils literal notranslate"><span class="pre">os.fork</span></code> & <code class="docutils literal notranslate"><span class="pre">CeleryExecutor</span></code> (#13265)</p></li> |
| <li><p>Make function purpose clearer in <code class="docutils literal notranslate"><span class="pre">example_kubernetes_executor</span></code> example dag (#13216)</p></li> |
| <li><p>Remove unused libraries - <code class="docutils literal notranslate"><span class="pre">flask-swagger</span></code>, <code class="docutils literal notranslate"><span class="pre">funcsigs</span></code> (#13178)</p></li> |
| <li><p>Display alternative tooltip when a Task has yet to run (no TI) (#13162)</p></li> |
| <li><p>User werkzeug's own type conversion for request args (#13184)</p></li> |
| <li><p>UI: Add <code class="docutils literal notranslate"><span class="pre">queued_by_job_id</span></code> & <code class="docutils literal notranslate"><span class="pre">external_executor_id</span></code> Columns to TI View (#13266)</p></li> |
| <li><p>Make <code class="docutils literal notranslate"><span class="pre">json-merge-patch</span></code> an optional library and unpin it (#13175)</p></li> |
| <li><p>Adds missing LDAP "extra" dependencies to ldap provider. (#13308)</p></li> |
| <li><p>Refactor <code class="docutils literal notranslate"><span class="pre">setup.py</span></code> to better reflect changes in providers (#13314)</p></li> |
| <li><p>Pin <code class="docutils literal notranslate"><span class="pre">pyjwt</span></code> and Add integration tests for Apache Pinot (#13195)</p></li> |
| <li><p>Removes provider-imposed requirements from <code class="docutils literal notranslate"><span class="pre">setup.cfg</span></code> (#13409)</p></li> |
| <li><p>Replace deprecated decorator (#13443)</p></li> |
| <li><p>Streamline & simplify <code class="docutils literal notranslate"><span class="pre">__eq__</span></code> methods in models Dag and BaseOperator (#13449)</p></li> |
| <li><p>Additional properties should be allowed in provider schema (#13440)</p></li> |
| <li><p>Remove unused dependency - <code class="docutils literal notranslate"><span class="pre">contextdecorator</span></code> (#13455)</p></li> |
| <li><p>Remove 'typing' dependency (#13472)</p></li> |
| <li><p>Log migrations info in consistent way (#13458)</p></li> |
| <li><p>Unpin <code class="docutils literal notranslate"><span class="pre">mysql-connector-python</span></code> to allow <code class="docutils literal notranslate"><span class="pre">8.0.22</span></code> (#13370)</p></li> |
| <li><p>Remove thrift as a core dependency (#13471)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">NotFound</span></code> response for DELETE methods in OpenAPI YAML (#13550)</p></li> |
| <li><p>Stop Log Spamming when <code class="docutils literal notranslate"><span class="pre">[core]</span> <span class="pre">lazy_load_plugins</span></code> is <code class="docutils literal notranslate"><span class="pre">False</span></code> (#13578)</p></li> |
| <li><p>Display message and docs link when no plugins are loaded (#13599)</p></li> |
| <li><p>Unpin restriction for <code class="docutils literal notranslate"><span class="pre">colorlog</span></code> dependency (#13176)</p></li> |
| <li><p>Add missing Dag Tag for Example DAGs (#13665)</p></li> |
| <li><p>Support tables in DAG docs (#13533)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">python3-openid</span></code> dependency (#13714)</p></li> |
| <li><p>Add <code class="docutils literal notranslate"><span class="pre">__repr__</span></code> for Executors (#13753)</p></li> |
| <li><p>Add description to hint if <code class="docutils literal notranslate"><span class="pre">conn_type</span></code> is missing (#13778)</p></li> |
| <li><p>Upgrade Azure blob to v12 (#12188)</p></li> |
| <li><p>Add extra field to <code class="docutils literal notranslate"><span class="pre">get_connnection</span></code> REST endpoint (#13885)</p></li> |
| <li><p>Make Smart Sensors DB Migration idempotent (#13892)</p></li> |
| <li><p>Improve the error when DAG does not exist when running dag pause command (#13900)</p></li> |
| <li><p>Update <code class="docutils literal notranslate"><span class="pre">airflow_local_settings.py</span></code> to fix an error message (#13927)</p></li> |
| <li><p>Only allow passing JSON Serializable conf to <code class="docutils literal notranslate"><span class="pre">TriggerDagRunOperator</span></code> (#13964)</p></li> |
| <li><p>Bugfix: Allow getting details of a DAG with null <code class="docutils literal notranslate"><span class="pre">start_date</span></code> (REST API) (#13959)</p></li> |
| <li><p>Add params to the DAG details endpoint (#13790)</p></li> |
| <li><p>Make the role assigned to anonymous users customizable (#14042)</p></li> |
| <li><p>Retry critical methods in Scheduler loop in case of <code class="docutils literal notranslate"><span class="pre">OperationalError</span></code> (#14032)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id7"> |
| <h3>Doc only changes<a class="headerlink" href="#id7" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add Missing Statsd Metrics in Docs (#13708)</p></li> |
| <li><p>Add Missing Email configs in Configuration doc (#13709)</p></li> |
| <li><p>Add quick start for Airflow on Docker (#13660)</p></li> |
| <li><p>Describe which Python versions are supported (#13259)</p></li> |
| <li><p>Add note block to 2.x migration docs (#13094)</p></li> |
| <li><p>Add documentation about webserver_config.py (#13155)</p></li> |
| <li><p>Add missing version information to recently added configs (#13161)</p></li> |
| <li><p>API: Use generic information in UpdateMask component (#13146)</p></li> |
| <li><p>Add Airflow 2.0.0 to requirements table (#13140)</p></li> |
| <li><p>Avoid confusion in doc for CeleryKubernetesExecutor (#13116)</p></li> |
| <li><p>Update docs link in REST API spec (#13107)</p></li> |
| <li><p>Add link to PyPI Repository to provider docs (#13064)</p></li> |
| <li><p>Fix link to Airflow master branch documentation (#13179)</p></li> |
| <li><p>Minor enhancements to Sensors docs (#13381)</p></li> |
| <li><p>Use 2.0.0 in Airflow docs & Breeze (#13379)</p></li> |
| <li><p>Improves documentation regarding providers and custom connections (#13375)(#13410)</p></li> |
| <li><p>Fix malformed table in production-deployment.rst (#13395)</p></li> |
| <li><p>Update celery.rst to fix broken links (#13400)</p></li> |
| <li><p>Remove reference to scheduler run_duration param in docs (#13346)</p></li> |
| <li><p>Set minimum SQLite version supported (#13412)</p></li> |
| <li><p>Fix installation doc (#13462)</p></li> |
| <li><p>Add docs about mocking variables and connections (#13502)</p></li> |
| <li><p>Add docs about Flask CLI (#13500)</p></li> |
| <li><p>Fix Upgrading to 2 guide to use <code class="docutils literal notranslate"><span class="pre">rbac</span></code> UI (#13569)</p></li> |
| <li><p>Make docs clear that Auth can not be disabled for Stable API (#13568)</p></li> |
| <li><p>Remove archived links from docs & add link for AIPs (#13580)</p></li> |
| <li><p>Minor fixes in upgrading-to-2.rst (#13583)</p></li> |
| <li><p>Fix Link in Upgrading to 2.0 guide (#13584)</p></li> |
| <li><p>Fix heading for Mocking section in best-practices.rst (#13658)</p></li> |
| <li><p>Add docs on how to use custom operators within plugins folder (#13186)</p></li> |
| <li><p>Update docs to register Operator Extra Links (#13683)</p></li> |
| <li><p>Improvements for database setup docs (#13696)</p></li> |
| <li><p>Replace module path to Class with just Class Name (#13719)</p></li> |
| <li><p>Update DAG Serialization docs (#13722)</p></li> |
| <li><p>Fix link to Apache Airflow docs in webserver (#13250)</p></li> |
| <li><p>Clarifies differences between extras and provider packages (#13810)</p></li> |
| <li><p>Add information about all access methods to the environment (#13940)</p></li> |
| <li><p>Docs: Fix FAQ on scheduler latency (#13969)</p></li> |
| <li><p>Updated taskflow api doc to show dependency with sensor (#13968)</p></li> |
| <li><p>Add deprecated config options to docs (#13883)</p></li> |
| <li><p>Added a FAQ section to the Upgrading to 2 doc (#13979)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-2-0-0-2020-12-18"> |
| <h2>Airflow 2.0.0, 2020-12-18<a class="headerlink" href="#airflow-2-0-0-2020-12-18" title="Permalink to this headline">¶</a></h2> |
| <p>The full changelog is about 3,000 lines long (already excluding everything backported to 1.10) |
| so please check <a class="reference external" href="https://airflow.apache.org/blog/airflow-two-point-oh-is-here/">Airflow 2.0.0 Highligths Blog Post</a> |
| instead.</p> |
| </div> |
| <div class="section" id="airflow-1-10-15-2021-03-17"> |
| <h2>Airflow 1.10.15, 2021-03-17<a class="headerlink" href="#airflow-1-10-15-2021-03-17" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id8"> |
| <h3>Bug Fixes<a class="headerlink" href="#id8" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Fix <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">db</span> <span class="pre">upgrade</span></code> to upgrade db as intended (#13267)</p></li> |
| <li><p>Moved boto3 limitation to snowflake (#13286)</p></li> |
| <li><p><code class="docutils literal notranslate"><span class="pre">KubernetesExecutor</span></code> should accept images from <code class="docutils literal notranslate"><span class="pre">executor_config</span></code> (#13074)</p></li> |
| <li><p>Scheduler should acknowledge active runs properly (#13803)</p></li> |
| <li><p>Bugfix: Unable to import Airflow plugins on Python 3.8 (#12859)</p></li> |
| <li><p>Include <code class="docutils literal notranslate"><span class="pre">airflow/contrib/executors</span></code> in the dist package</p></li> |
| <li><p>Pin Click version for Python 2.7 users</p></li> |
| <li><p>Ensure all statsd timers use millisecond values. (#10633)</p></li> |
| <li><p>[<code class="docutils literal notranslate"><span class="pre">kubernetes_generate_dag_yaml</span></code>] - Fix dag yaml generate function (#13816)</p></li> |
| <li><p>Fix <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">tasks</span> <span class="pre">clear`</span> <span class="pre">cli</span> <span class="pre">command</span> <span class="pre">with</span> <span class="pre">``--yes</span></code> (#14188)</p></li> |
| <li><p>Fix permission error on non-POSIX filesystem (#13121) (#14383)</p></li> |
| <li><p>Fixed deprecation message for "variables" command (#14457)</p></li> |
| <li><p>BugFix: fix the <code class="docutils literal notranslate"><span class="pre">delete_dag</span></code> function of json_client (#14441)</p></li> |
| <li><p>Fix merging of secrets and configmaps for <code class="docutils literal notranslate"><span class="pre">KubernetesExecutor</span></code> (#14090)</p></li> |
| <li><p>Fix webserver exiting when gunicorn master crashes (#13470)</p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">ini</span></code> from 1.3.5 to 1.3.8 in <code class="docutils literal notranslate"><span class="pre">airflow/www_rbac</span></code></p></li> |
| <li><p>Bump <code class="docutils literal notranslate"><span class="pre">datatables.net</span></code> from 1.10.21 to 1.10.23 in <code class="docutils literal notranslate"><span class="pre">airflow/www_rbac</span></code></p></li> |
| <li><p>Webserver: Sanitize string passed to origin param (#14738)</p></li> |
| <li><p>Make <code class="docutils literal notranslate"><span class="pre">rbac_app</span></code>'s <code class="docutils literal notranslate"><span class="pre">db.session</span></code> use the same timezone with <code class="docutils literal notranslate"><span class="pre">@provide_session</span></code> (#14025)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id9"> |
| <h3>Improvements<a class="headerlink" href="#id9" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Adds airflow as viable docker command in official image (#12878)</p></li> |
| <li><p><code class="docutils literal notranslate"><span class="pre">StreamLogWriter</span></code>: Provide (no-op) close method (#10885)</p></li> |
| <li><p>Add 'airflow variables list' command for 1.10.x transition version (#14462)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id10"> |
| <h3>Doc only changes<a class="headerlink" href="#id10" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Update URL for Airflow docs (#13561)</p></li> |
| <li><p>Clarifies version args for installing 1.10 in Docker (#12875)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-14-2020-12-10"> |
| <h2>Airflow 1.10.14, 2020-12-10<a class="headerlink" href="#airflow-1-10-14-2020-12-10" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id11"> |
| <h3>Bug Fixes<a class="headerlink" href="#id11" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>BugFix: Tasks with <code class="docutils literal notranslate"><span class="pre">depends_on_past</span></code> or <code class="docutils literal notranslate"><span class="pre">task_concurrency</span></code> are stuck (#12663)</p></li> |
| <li><p>Fix issue with empty Resources in executor_config (#12633)</p></li> |
| <li><p>Fix: Deprecated config <code class="docutils literal notranslate"><span class="pre">force_log_out_after</span></code> was not used (#12661)</p></li> |
| <li><p>Fix empty asctime field in JSON formatted logs (#10515)</p></li> |
| <li><p>[AIRFLOW-2809] Fix security issue regarding Flask SECRET_KEY (#3651)</p></li> |
| <li><p>[AIRFLOW-2884] Fix Flask SECRET_KEY security issue in www_rbac (#3729)</p></li> |
| <li><p>[AIRFLOW-2886] Generate random Flask SECRET_KEY in default config (#3738)</p></li> |
| <li><p>Add missing comma in setup.py (#12790)</p></li> |
| <li><p>Bugfix: Unable to import Airflow plugins on Python 3.8 (#12859)</p></li> |
| <li><p>Fix setup.py missing comma in <code class="docutils literal notranslate"><span class="pre">setup_requires</span></code> (#12880)</p></li> |
| <li><p>Don't emit first_task_scheduling_delay metric for only-once dags (#12835)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id12"> |
| <h3>Improvements<a class="headerlink" href="#id12" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Update setup.py to get non-conflicting set of dependencies (#12636)</p></li> |
| <li><p>Rename <code class="docutils literal notranslate"><span class="pre">[scheduler]</span> <span class="pre">max_threads</span></code> to <code class="docutils literal notranslate"><span class="pre">[scheduler]</span> <span class="pre">parsing_processes</span></code> (#12605)</p></li> |
| <li><p>Add metric for scheduling delay between first run task & expected start time (#9544)</p></li> |
| <li><p>Add new-style 2.0 command names for Airflow 1.10.x (#12725)</p></li> |
| <li><p>Add Kubernetes cleanup-pods CLI command for Helm Chart (#11802)</p></li> |
| <li><p>Don't let webserver run with dangerous config (#12747)</p></li> |
| <li><p>Replace pkg_resources with <code class="docutils literal notranslate"><span class="pre">importlib.metadata</span></code> to avoid VersionConflict errors (#12694)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id13"> |
| <h3>Doc only changes<a class="headerlink" href="#id13" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Clarified information about supported Databases</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-13-2020-11-25"> |
| <h2>Airflow 1.10.13, 2020-11-25<a class="headerlink" href="#airflow-1-10-13-2020-11-25" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id14"> |
| <h3>New Features<a class="headerlink" href="#id14" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add "already checked" to failed pods in K8sPodOperator (#11368)</p></li> |
| <li><p>Pass SQLAlchemy engine options to FAB based UI (#11395)</p></li> |
| <li><p>[AIRFLOW-4438] Add Gzip compression to S3_hook (#8571)</p></li> |
| <li><p>Add permission "extra_links" for Viewer role and above (#10719)</p></li> |
| <li><p>Add generate_yaml command to easily test KubernetesExecutor before deploying pods (#10677)</p></li> |
| <li><p>Add Secrets backend for Microsoft Azure Key Vault (#10898)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id15"> |
| <h3>Bug Fixes<a class="headerlink" href="#id15" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>SkipMixin: Handle empty branches (#11120)</p></li> |
| <li><p>[AIRFLOW-5274] dag loading duration metric name too long (#5890)</p></li> |
| <li><p>Handle no Dagrun in DagrunIdDep (#8389) (#11343)</p></li> |
| <li><p>Fix Kubernetes Executor logs for long dag names (#10942)</p></li> |
| <li><p>Add on_kill support for the KubernetesPodOperator (#10666)</p></li> |
| <li><p>KubernetesPodOperator template fix (#10963)</p></li> |
| <li><p>Fix displaying of add serialized_dag table migration</p></li> |
| <li><p>Fix Start Date tooltip on DAGs page (#10637)</p></li> |
| <li><p>URL encode execution date in the Last Run link (#10595)</p></li> |
| <li><p>Fixes issue with affinity backcompat in Airflow 1.10</p></li> |
| <li><p>Fix KubernetesExecutor import in views.py</p></li> |
| <li><p>Fix issues with Gantt View (#12419)</p></li> |
| <li><p>Fix Entrypoint and _CMD config variables (#12411)</p></li> |
| <li><p>Fix operator field update for SerializedBaseOperator (#10924)</p></li> |
| <li><p>Limited cryptography to < 3.2 for Python 2.7</p></li> |
| <li><p>Install cattr on Python 3.7 - Fix docs build on RTD (#12045)</p></li> |
| <li><p>Limit version of marshmallow-sqlalchemy</p></li> |
| <li><p>Pin <cite>kubernetes</cite> to a max version of 11.0.0 (#11974)</p></li> |
| <li><p>Use snakebite-py3 for HDFS dependency for Python3 (#12340)</p></li> |
| <li><p>Removes snakebite kerberos dependency (#10865)</p></li> |
| <li><p>Fix failing dependencies for FAB and Celery (#10828)</p></li> |
| <li><p>Fix pod_mutation_hook for 1.10.13 (#10850)</p></li> |
| <li><p>Fix formatting of Host information</p></li> |
| <li><p>Fix Logout Google Auth issue in Non-RBAC UI (#11890)</p></li> |
| <li><p>Add missing imports to app.py (#10650)</p></li> |
| <li><p>Show Generic Error for Charts & Query View in old UI (#12495)</p></li> |
| <li><p>TimeSensor should respect the default_timezone config (#9699)</p></li> |
| <li><p>TimeSensor should respect DAG timezone (#9882)</p></li> |
| <li><p>Unify user session lifetime configuration (#11970)</p></li> |
| <li><p>Handle outdated webserver session timeout gracefully. (#12332)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id16"> |
| <h3>Improvements<a class="headerlink" href="#id16" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add XCom.deserialize_value to Airflow 1.10.13 (#12328)</p></li> |
| <li><p>Mount airflow.cfg to pod_template_file (#12311)</p></li> |
| <li><p>All k8s object must comply with JSON Schema (#12003)</p></li> |
| <li><p>Validate Airflow chart values.yaml & values.schema.json (#11990)</p></li> |
| <li><p>Pod template file uses custom custom env variable (#11480)</p></li> |
| <li><p>Bump attrs and cattrs dependencies (#11969)</p></li> |
| <li><p>Bump attrs to > 20.0 (#11799)</p></li> |
| <li><p>[AIRFLOW-3607] Only query DB once per DAG run for TriggerRuleDep (#4751)</p></li> |
| <li><p>Rename task with duplicate task_id</p></li> |
| <li><p>Manage Flask AppBuilder Tables using Alembic Migrations (#12352)</p></li> |
| <li><p><code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">test</span></code> only works for tasks in 1.10, not whole dags (#11191)</p></li> |
| <li><p>Improve warning messaging for duplicate task_ids in a DAG (#11126)</p></li> |
| <li><p>Pins moto to 1.3.14 (#10986)</p></li> |
| <li><p>DbApiHook: Support kwargs in get_pandas_df (#9730)</p></li> |
| <li><p>Make grace_period_seconds option on K8sPodOperator (#10727)</p></li> |
| <li><p>Fix syntax error in Dockerfile 'maintainer' Label (#10899)</p></li> |
| <li><p>The entrypoints in Docker Image should be owned by Airflow (#10853)</p></li> |
| <li><p>Make dockerfiles Google Shell Guide Compliant (#10734)</p></li> |
| <li><p>clean-logs script for Dockerfile: trim logs before sleep (#10685)</p></li> |
| <li><p>When sending tasks to celery from a sub-process, reset signal handlers (#11278)</p></li> |
| <li><p>SkipMixin: Add missing session.commit() and test (#10421)</p></li> |
| <li><p>Webserver: Further Sanitize values passed to origin param (#12459)</p></li> |
| <li><p>Security upgrade lodash from 4.17.19 to 4.17.20 (#11095)</p></li> |
| <li><p>Log instead of raise an Error for unregistered OperatorLinks (#11959)</p></li> |
| <li><p>Mask Password in Log table when using the CLI (#11468)</p></li> |
| <li><p>[AIRFLOW-3607] Optimize dep checking when depends on past set and concurrency limit</p></li> |
| <li><p>Execute job cancel HTTPRequest in Dataproc Hook (#10361)</p></li> |
| <li><p>Use rst lexer to format Airflow upgrade check output (#11259)</p></li> |
| <li><p>Remove deprecation warning from contrib/kubernetes/pod.py</p></li> |
| <li><p>adding body as templated field for CloudSqlImportOperator (#10510)</p></li> |
| <li><p>Change log level for User's session to DEBUG (#12414)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="deprecations"> |
| <h3>Deprecations<a class="headerlink" href="#deprecations" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Deprecate importing Hooks from plugin-created module (#12133)</p></li> |
| <li><p>Deprecate adding Operators and Sensors via plugins (#12069)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id17"> |
| <h3>Doc only changes<a class="headerlink" href="#id17" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[Doc] Correct description for macro task_instance_key_str (#11062)</p></li> |
| <li><p>Checks if all the libraries in setup.py are listed in installation.rst file (#12023)</p></li> |
| <li><p>Revise "Project Focus" copy (#12011)</p></li> |
| <li><p>Move Project focus and Principles higher in the README (#11973)</p></li> |
| <li><p>Remove archived link from README.md (#11945)</p></li> |
| <li><p>Update download url for Airflow Version (#11800)</p></li> |
| <li><p>Add Project URLs for PyPI page (#11801)</p></li> |
| <li><p>Move Backport Providers docs to our docsite (#11136)</p></li> |
| <li><p>Refactor rebase copy (#11030)</p></li> |
| <li><p>Add missing images for kubernetes executor docs (#11083)</p></li> |
| <li><p>Fix indentation in executor_config example (#10467)</p></li> |
| <li><p>Enhanced the Kubernetes Executor doc (#10433)</p></li> |
| <li><p>Refactor content to a markdown table (#10863)</p></li> |
| <li><p>Rename "Beyond the Horizon" section and refactor content (#10802)</p></li> |
| <li><p>Refactor official source section to use bullets (#10801)</p></li> |
| <li><p>Add section for official source code (#10678)</p></li> |
| <li><p>Add redbubble link to Airflow merchandise (#10359)</p></li> |
| <li><p>README Doc: Link to Airflow directory in ASF Directory (#11137)</p></li> |
| <li><p>Fix the default value for VaultBackend's config_path (#12518)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-12-2020-08-25"> |
| <h2>Airflow 1.10.12, 2020-08-25<a class="headerlink" href="#airflow-1-10-12-2020-08-25" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id18"> |
| <h3>New Features<a class="headerlink" href="#id18" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add DateTimeSensor (#9697)</p></li> |
| <li><p>Add AirflowClusterPolicyViolation support to Airflow local settings (#10282)</p></li> |
| <li><p>Get Airflow configs with sensitive data from Secret Backends (#9645)</p></li> |
| <li><p>[AIRFLOW-4734] Upsert functionality for PostgresHook.insert_rows() (#8625)</p></li> |
| <li><p>Allow defining custom XCom class (#8560)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id19"> |
| <h3>Bug Fixes<a class="headerlink" href="#id19" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add pre 1.10.11 Kubernetes Paths back with Deprecation Warning (#10067)</p></li> |
| <li><p>Fixes PodMutationHook for backwards compatibility (#9903)</p></li> |
| <li><p>Fix bug in executor_config when defining resources (#9935)</p></li> |
| <li><p>Respect DAG Serialization setting when running sync_perm (#10321)</p></li> |
| <li><p>Show correct duration on graph view for running task (#8311) (#8675)</p></li> |
| <li><p>Fix regression in SQLThresholdCheckOperator (#9312)</p></li> |
| <li><p>[AIRFLOW-6931] Fixed migrations to find all dependencies for MSSQL (#9891)</p></li> |
| <li><p>Avoid sharing session with RenderedTaskInstanceFields write and delete (#9993)</p></li> |
| <li><p>Fix clear future recursive when ExternalTaskMarker is used (#9515)</p></li> |
| <li><p>Handle IntegrityError while creating TIs (#10136)</p></li> |
| <li><p>Fix airflow-webserver startup errors when using Kerberos Auth (#10047)</p></li> |
| <li><p>Fixes treatment of open slots in scheduler (#9316) (#9505)</p></li> |
| <li><p>Fix KubernetesPodOperator reattachment (#10230)</p></li> |
| <li><p>Fix more PodMutationHook issues for backwards compatibility (#10084)</p></li> |
| <li><p>[AIRFLOW-5391] Do not re-run skipped tasks when they are cleared (#7276)</p></li> |
| <li><p>Fix task_instance_mutation_hook (#9910)</p></li> |
| <li><p>Fixes failing formatting of DAG file containing {} in docstring (#9779)</p></li> |
| <li><p>Fix is_terminal_support_colors function (#9734)</p></li> |
| <li><p>Fix PythonVirtualenvOperator when using <code class="docutils literal notranslate"><span class="pre">provide_context=True</span></code> (#8256)</p></li> |
| <li><p>Fix issue with mounting volumes from secrets (#10366)</p></li> |
| <li><p>BugFix: K8s Executor Multinamespace mode is evaluated to true by default (#10410)</p></li> |
| <li><p>Make KubernetesExecutor recognize kubernetes_labels (#10412)</p></li> |
| <li><p>Fix broken Kubernetes PodRuntimeInfoEnv (#10478)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id20"> |
| <h3>Improvements<a class="headerlink" href="#id20" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Use Hash of Serialized DAG to determine DAG is changed or not (#10227)</p></li> |
| <li><p>Update Serialized DAGs in Webserver when DAGs are Updated (#9851)</p></li> |
| <li><p>Do not Update Serialized DAGs in DB if DAG did not change (#9850)</p></li> |
| <li><p>Add __repr__ to SerializedDagModel (#9862)</p></li> |
| <li><p>Update JS packages to latest versions (#9811) (#9921)</p></li> |
| <li><p>UI Graph View: Focus upstream / downstream task dependencies on mouseover (#9303)</p></li> |
| <li><p>Allow <code class="docutils literal notranslate"><span class="pre">image</span></code> in <code class="docutils literal notranslate"><span class="pre">KubernetesPodOperator</span></code> to be templated (#10068)</p></li> |
| <li><p>[AIRFLOW-6843] Add delete_option_kwargs to delete_namespaced_pod (#7523)</p></li> |
| <li><p>Improve process terminating in scheduler_job (#8064)</p></li> |
| <li><p>Replace deprecated base classes used in bigquery_check_operator (#10272)</p></li> |
| <li><p>[AIRFLOW-5897] Allow setting -1 as pool slots value in webserver (#6550)</p></li> |
| <li><p>Limit all google-cloud api to <2.0.0 (#10317)</p></li> |
| <li><p>[AIRFLOW-6706] Lazy load operator extra links (#7327) (#10318)</p></li> |
| <li><p>Add Snowflake support to SQL operator and sensor (#9843)</p></li> |
| <li><p>Makes multi-namespace mode optional (#9570)</p></li> |
| <li><p>Pin pyarrow < 1.0</p></li> |
| <li><p>Pin pymongo version to <3.11.0</p></li> |
| <li><p>Pin google-cloud-container to <2 (#9901)</p></li> |
| <li><p>Dockerfile: Remove package.json and yarn.lock from the prod image (#9814)</p></li> |
| <li><p>Dockerfile: The group of embedded DAGs should be root to be OpenShift compatible (#9794)</p></li> |
| <li><p>Update upper limit of flask-swagger, gunicorn & jinja2 (#9684)</p></li> |
| <li><p>Webserver: Sanitize values passed to origin param (#10334)</p></li> |
| <li><p>Sort connection type list in add/edit page alphabetically (#8692)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id21"> |
| <h3>Doc only changes<a class="headerlink" href="#id21" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add new committers: Ry Walker & Leah Cole to project.rst (#9892)</p></li> |
| <li><p>Add Qingping Hou to committers list (#9725)</p></li> |
| <li><p>Updated link to official documentation (#9629)</p></li> |
| <li><p>Create a short-link for Airflow Slack Invites (#10034)</p></li> |
| <li><p>Fix docstrings in BigQueryGetDataOperator (#10042)</p></li> |
| <li><p>Set language on code-block on docs/howto/email-config.rst (#10238)</p></li> |
| <li><p>Remove duplicate line from 1.10.10 CHANGELOG (#10289)</p></li> |
| <li><p>Improve heading on Email Configuration page (#10175)</p></li> |
| <li><p>Fix link for the Jinja Project in docs/tutorial.rst (#10245)</p></li> |
| <li><p>Create separate section for Cron Presets (#10247)</p></li> |
| <li><p>Add Syntax Highlights to code-blocks in docs/best-practices.rst (#10258)</p></li> |
| <li><p>Fix docstrings in BigQueryGetDataOperator (#10042)</p></li> |
| <li><p>Fix typo in Task Lifecycle section (#9867)</p></li> |
| <li><p>Make Secret Backend docs clearer about Variable & Connection View (#8913)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-11-2020-07-10"> |
| <h2>Airflow 1.10.11, 2020-07-10<a class="headerlink" href="#airflow-1-10-11-2020-07-10" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id22"> |
| <h3>New Features<a class="headerlink" href="#id22" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add task instance mutation hook (#8852)</p></li> |
| <li><p>Allow changing Task States Colors (#9520)</p></li> |
| <li><p>Add support for AWS Secrets Manager as Secrets Backend (#8186)</p></li> |
| <li><p>Add Airflow info command to the CLI (#8704)</p></li> |
| <li><p>Add Local Filesystem Secret Backend (#8596)</p></li> |
| <li><p>Add Airflow config CLI command (#8694)</p></li> |
| <li><p>Add Support for Python 3.8 (#8836)(#8823)</p></li> |
| <li><p>Allow K8S worker pod to be configured from JSON/YAML file (#6230)</p></li> |
| <li><p>Add quarterly to crontab presets (#6873)</p></li> |
| <li><p>Add support for ephemeral storage on KubernetesPodOperator (#6337)</p></li> |
| <li><p>Add AirflowFailException to fail without any retry (#7133)</p></li> |
| <li><p>Add SQL Branch Operator (#8942)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id23"> |
| <h3>Bug Fixes<a class="headerlink" href="#id23" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Use NULL as dag.description default value (#7593)</p></li> |
| <li><p>BugFix: DAG trigger via UI error in RBAC UI (#8411)</p></li> |
| <li><p>Fix logging issue when running tasks (#9363)</p></li> |
| <li><p>Fix JSON encoding error in DockerOperator (#8287)</p></li> |
| <li><p>Fix alembic crash due to typing import (#6547)</p></li> |
| <li><p>Correctly restore upstream_task_ids when deserializing Operators (#8775)</p></li> |
| <li><p>Correctly store non-default Nones in serialized tasks/dags (#8772)</p></li> |
| <li><p>Correctly deserialize dagrun_timeout field on DAGs (#8735)</p></li> |
| <li><p>Fix tree view if config contains " (#9250)</p></li> |
| <li><p>Fix Dag Run UI execution date with timezone cannot be saved issue (#8902)</p></li> |
| <li><p>Fix Migration for MSSQL (#8385)</p></li> |
| <li><p>RBAC ui: Fix missing Y-axis labels with units in plots (#8252)</p></li> |
| <li><p>RBAC ui: Fix missing task runs being rendered as circles instead (#8253)</p></li> |
| <li><p>Fix: DagRuns page renders the state column with artifacts in old UI (#9612)</p></li> |
| <li><p>Fix task and dag stats on home page (#8865)</p></li> |
| <li><p>Fix the trigger_dag api in the case of nested subdags (#8081)</p></li> |
| <li><p>UX Fix: Prevent undesired text selection with DAG title selection in Chrome (#8912)</p></li> |
| <li><p>Fix connection add/edit for spark (#8685)</p></li> |
| <li><p>Fix retries causing constraint violation on MySQL with DAG Serialization (#9336)</p></li> |
| <li><p>[AIRFLOW-4472] Use json.dumps/loads for templating lineage data (#5253)</p></li> |
| <li><p>Restrict google-cloud-texttospeech to <v2 (#9137)</p></li> |
| <li><p>Fix pickling failure when spawning processes (#8671)</p></li> |
| <li><p>Pin Version of azure-cosmos to <4 (#8956)</p></li> |
| <li><p>Azure storage 0.37.0 is not installable any more (#8833)</p></li> |
| <li><p>Fix modal_backdrop z-index in the UI (#7313)</p></li> |
| <li><p>Fix Extra Links in Gantt View (#8308)</p></li> |
| <li><p>Bug fix for EmrAddStepOperator init with cluster_name error (#9235)</p></li> |
| <li><p>Fix KubernetesPodOperator pod name length validation (#8829)</p></li> |
| <li><p>Fix non updating DAG code by checking against last modification time (#8266)</p></li> |
| <li><p>BugFix: Unpausing a DAG with catchup=False creates an extra DAG run (#8776)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id24"> |
| <h3>Improvements<a class="headerlink" href="#id24" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Improve add_dag_code_table migration (#8176)</p></li> |
| <li><p>Persistent display/filtering of DAG status (#8106)</p></li> |
| <li><p>Set unique logger names (#7330)</p></li> |
| <li><p>Update the version of cattrs from 0.9 to 1.0 to support Python 3.8 (#7100)</p></li> |
| <li><p>Reduce response payload size of /dag_stats and /task_stats (#8655)</p></li> |
| <li><p>Add authenticator parameter to snowflake_hook (#8642)</p></li> |
| <li><p>Show "Task Reschedule" table in Airflow Webserver (#9521)</p></li> |
| <li><p>Change worker_refresh_interval fallback to default of 30 (#9588)</p></li> |
| <li><p>Use pformat instead of str to render arguments in WebUI (#9587)</p></li> |
| <li><p>Simplify DagFileProcessorManager (#7521)</p></li> |
| <li><p>Reload gunicorn when plugins has been changed (#8997)</p></li> |
| <li><p>Fix the default value for store_dag_code (#9554)</p></li> |
| <li><p>Add support for fetching logs from running pods (#8626)</p></li> |
| <li><p>Persist start/end date and duration for DummyOperator Task Instance (#8663)</p></li> |
| <li><p>Ensure "started"/"ended" in tooltips are not shown if job not started (#8667)</p></li> |
| <li><p>Add context to execution_date_fn in ExternalTaskSensor (#8702)</p></li> |
| <li><p>Avoid color info in response of <code class="docutils literal notranslate"><span class="pre">/dag_stats</span></code> & <code class="docutils literal notranslate"><span class="pre">/task_stats</span></code> (#8742)</p></li> |
| <li><p>Make loading plugins from entrypoint fault-tolerant (#8732)</p></li> |
| <li><p>Refactor Kubernetes worker config (#7114)</p></li> |
| <li><p>Add default <code class="docutils literal notranslate"><span class="pre">conf</span></code> parameter to Spark JDBC Hook (#8787)</p></li> |
| <li><p>Allow passing backend_kwargs to AWS SSM client (#8802)</p></li> |
| <li><p>Filter dags by clicking on tag (#8897)</p></li> |
| <li><p>Support k8s auth method in Vault Secrets provider (#8640)</p></li> |
| <li><p>Monitor pods by labels instead of names (#6377)</p></li> |
| <li><p>Optimize count query on /home (#8729)</p></li> |
| <li><p>Fix JSON string escape in tree view (#8551)</p></li> |
| <li><p>Add TaskInstance state to TI Tooltip to be colour-blind friendlier (#8910)</p></li> |
| <li><p>Add a tip to trigger DAG screen (#9049)</p></li> |
| <li><p>Use Markup for htmlcontent for landing_times (#9242)</p></li> |
| <li><p>Pinning max pandas version to 2.0 (lesser than) to allow pandas 1.0 (#7954)</p></li> |
| <li><p>Update example webserver_config.py to show correct CSRF config (#8944)</p></li> |
| <li><p>Fix displaying Executor Class Name in "Base Job" table (#8679)</p></li> |
| <li><p>Use existing DagBag for 'dag_details' & 'trigger' Endpoints (#8501)</p></li> |
| <li><p>Flush pending Sentry exceptions before exiting (#7232)</p></li> |
| <li><p>Display DAG run conf in the list view (#6794)</p></li> |
| <li><p>Fix performance degradation when updating dagrun state (#8435)</p></li> |
| <li><p>Don't use the <code class="docutils literal notranslate"><span class="pre">|safe</span></code> filter in code, it's risky (#9180)</p></li> |
| <li><p>Validate only task commands are run by executors (#9178)</p></li> |
| <li><p>Show Deprecation warning on duplicate Task ids (#8728)</p></li> |
| <li><p>Move DAG._schedule_interval logic out of <code class="docutils literal notranslate"><span class="pre">DAG.__init__</span></code> (#8225)</p></li> |
| <li><p>Make retrieving Paused Dag ids a separate method (#7587)</p></li> |
| <li><p>Bulk fetch paused_dag_ids (#7476)</p></li> |
| <li><p>Add a configurable DAGs volume mount path for Kubernetes (#8147)</p></li> |
| <li><p>Add schedulername option for KubernetesPodOperator (#6088)</p></li> |
| <li><p>Support running git sync container as root (#6312)</p></li> |
| <li><p>Add extra options for Slack Webhook operator and Slack hook (#9409)</p></li> |
| <li><p>Monkey patch greenlet Celery pools (#8559)</p></li> |
| <li><p>Decrypt secrets from SystemsManagerParameterStoreBackend (#9214)</p></li> |
| <li><p>Prevent clickable sorting on non sortable columns in TI view (#8681)</p></li> |
| <li><p>Make hive macros py3 compatible (#8598)</p></li> |
| <li><p>Fix SVG tooltip positioning with custom scripting (#8269)</p></li> |
| <li><p>Avoid unnecessary sleep to maintain local task job heart rate (#6553)</p></li> |
| <li><p>Include some missing RBAC roles on User and Viewer roles (#9133)</p></li> |
| <li><p>Show Dag's Markdown docs on Tree View (#9448)</p></li> |
| <li><p>Improved compatibility with Python 3.5+ - Convert signal.SIGTERM to int (#9207)</p></li> |
| <li><p>Add 'main' param to template_fields in DataprocSubmitPySparkJobOperator (#9154)</p></li> |
| <li><p>Make it possible to silence warnings from Airflow (#9208)</p></li> |
| <li><p>Remove redundant count query in BaseOperator.clear() (#9362)</p></li> |
| <li><p>Fix DB migration message (#8988)</p></li> |
| <li><p>Fix awkward log info in dbapi_hook (#8482)</p></li> |
| <li><p>Fix Celery default to no longer allow pickle (#7205)</p></li> |
| <li><p>Further validation that only task commands are run by executors (#9240)</p></li> |
| <li><p>Remove vendored nvd3 and slugify libraries (#9136)</p></li> |
| <li><p>Enable configurable git sync depth (#9094)</p></li> |
| <li><p>Reduce the required resources for the Kubernetes's sidecar (#6062)</p></li> |
| <li><p>Refactor K8S codebase with k8s API models (#5481)</p></li> |
| <li><p>Move k8s executor out of contrib to closer match master (#8904)</p></li> |
| <li><p>Allow filtering using "event" and "owner" in "Log" view (#4881)</p></li> |
| <li><p>Add Yandex.Cloud custom connection to 1.10 (#8791)</p></li> |
| <li><p>Add table-hover css class to DAGs table (#5033)</p></li> |
| <li><p>Show un/pause errors in dags view. (#7669)</p></li> |
| <li><p>Restructure database queries on /home (#4872)</p></li> |
| <li><p>Add Cross Site Scripting defense (#6913)</p></li> |
| <li><p>Make Gantt tooltip the same as Tree and Graph view (#8220)</p></li> |
| <li><p>Add config to only delete worker pod on task failure (#7507)(#8312)</p></li> |
| <li><p>Remove duplicate error message on chart connection failure (#8476)</p></li> |
| <li><p>Remove default value spark_binary (#8508)</p></li> |
| <li><p>Expose Airflow Webserver Port in Production Docker Image (#8228)</p></li> |
| <li><p>Commit after each alembic migration (#4797)</p></li> |
| <li><p>KubernetesPodOperator fixes and test (#6524)</p></li> |
| <li><p>Docker Image: Add ADDITIONAL_AIRFLOW_EXTRAS (#9032)</p></li> |
| <li><p>Docker Image: Add ADDITIONAL_PYTHON_DEPS (#9031)</p></li> |
| <li><p>Remove httplib2 from Google requirements (#9194)</p></li> |
| <li><p>Merging multiple SQL operators (#9124)</p></li> |
| <li><p>Adds hive as extra in pyhive dependency (#9075)</p></li> |
| <li><p>Change default auth for experimental backend to deny_all (#9611)</p></li> |
| <li><p>Restrict changing XCom values from the Webserver (#9614)</p></li> |
| <li><p>Add __repr__ for DagTag so tags display properly in /dagmodel/show (#8719)</p></li> |
| <li><p>Functionality to shuffle HMS connections used by HiveMetastoreHook facilitating load balancing (#9280)</p></li> |
| <li><p>Expose SQLAlchemy's connect_args and make it configurable (#6478)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id25"> |
| <h3>Doc only changes<a class="headerlink" href="#id25" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Add docs on using DAGRun.conf (#9578)</p></li> |
| <li><p>Enforce code-block directives in doc (#9443)</p></li> |
| <li><p>Carefully parse warning messages when building documentation (#8693)</p></li> |
| <li><p>Make KubernetesPodOperator clear in docs (#8444)</p></li> |
| <li><p>Improve language in Pod Mutation Hook docs (#8445)</p></li> |
| <li><p>Fix formatting of Pool docs in concepts.rst (#8443)</p></li> |
| <li><p>Make doc clearer about Airflow Variables using Environment Variables (#8427)</p></li> |
| <li><p>Fix pools doc for LocalExecutor (#7643)</p></li> |
| <li><p>Add Local and Sequential Executors to Doc (#8084)</p></li> |
| <li><p>Add documentation for CLI command Airflow dags test (#8251)</p></li> |
| <li><p>Fix typo in DAG Serialization documentation (#8317)</p></li> |
| <li><p>Add scheduler in production section (#7351)</p></li> |
| <li><p>Add a structural dag validation example (#6727)</p></li> |
| <li><p>Adding Task re-run documentation (#6295)</p></li> |
| <li><p>Fix outdated doc on settings.policy (#7532)</p></li> |
| <li><p>Add docs about reload_on_plugin_change option (#9575)</p></li> |
| <li><p>Add copy button to Code Blocks in Airflow Docs (#9450)</p></li> |
| <li><p>Update commands in docs for v1.10+ (#9585)</p></li> |
| <li><p>Add more info on dry-run CLI option (#9582)</p></li> |
| <li><p>Document default timeout value for SSHOperator (#8744)</p></li> |
| <li><p>Fix docs on creating CustomOperator (#8678)</p></li> |
| <li><p>Enhanced documentation around Cluster Policy (#8661)</p></li> |
| <li><p>Use sphinx syntax in concepts.rst (#7729)</p></li> |
| <li><p>Update README to remove Python 3.8 limitation for Master (#9451)</p></li> |
| <li><p>Add note about using dag_run.conf in BashOperator (#9143)</p></li> |
| <li><p>Improve tutorial - Include all imports statements (#8670)</p></li> |
| <li><p>Added more precise Python requirements to README.md (#8455)</p></li> |
| <li><p>Fix Airflow Stable version in README.md (#9360)</p></li> |
| <li><p>Update AWS connection example to show how to set from env var (#9191)</p></li> |
| <li><p>Fix list formatting of plugins doc. (#8873)</p></li> |
| <li><p>Add 'Version Added' on Secrets Backend docs (#8264)</p></li> |
| <li><p>Simplify language re roll-your-own secrets backend (#8257)</p></li> |
| <li><p>Add installation description for repeatable PyPi installation (#8513)</p></li> |
| <li><p>Add note extra links only render on when using RBAC webserver (#8788)</p></li> |
| <li><p>Remove unused Airflow import from docs (#9274)</p></li> |
| <li><p>Add PR/issue note in Contribution Workflow Example (#9177)</p></li> |
| <li><p>Don't use the term "whitelist" - language matters (#9174)</p></li> |
| <li><p>Add docs to change Colors on the Webserver (#9607)</p></li> |
| <li><p>Change 'initiate' to 'initialize' in installation.rst (#9619)</p></li> |
| <li><p>Replace old Variables View Screenshot with new (#9620)</p></li> |
| <li><p>Replace old SubDag zoom screenshot with new (#9621)</p></li> |
| <li><p>Update docs about the change to default auth for experimental API (#9617)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-10-2020-04-09"> |
| <h2>Airflow 1.10.10, 2020-04-09<a class="headerlink" href="#airflow-1-10-10-2020-04-09" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id26"> |
| <h3>New Features<a class="headerlink" href="#id26" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-7048] Allow user to chose timezone to use in UI (#8046)</p></li> |
| <li><p>Add Production Docker image support (#7832)</p></li> |
| <li><p>Get Airflow Variables from Environment Variables (#7923)</p></li> |
| <li><p>Get Airflow Variables from Hashicorp Vault (#7944)</p></li> |
| <li><p>Get Airflow Variables from AWS Systems Manager Parameter Store (#7945)</p></li> |
| <li><p>Get Airflow Variables from GCP Secrets Manager (#7946)</p></li> |
| <li><p>[AIRFLOW-5705] Add secrets backend and support for AWS SSM / Get Airflow Connections from AWS Parameter Store(#6376)</p></li> |
| <li><p>[AIRFLOW-7104] Add Secret backend for GCP Secrets Manager / Get Airflow Connections from GCP Secrets Manager (#7795)</p></li> |
| <li><p>[AIRFLOW-7076] Add support for HashiCorp Vault as Secrets Backend / Get Airflow Connections from Hashicorp Vault (#7741)</p></li> |
| <li><p>[AIRFLOW-6685] Add ThresholdCheckOperator (#7353)</p></li> |
| <li><p>[AIRFLOW-7080] Add API endpoint to return a DAG's paused state (#7737)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id27"> |
| <h3>Bug Fixes<a class="headerlink" href="#id27" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>BugFix: Show task_id in the Graph View tooltip (#7859)</p></li> |
| <li><p>[AIRFLOW-6730] Use total_seconds instead of seconds (#7363)</p></li> |
| <li><p>[AIRFLOW-6167] Escape column name in create table in hive (#6741)</p></li> |
| <li><p>[AIRFLOW-6628] DAG auto-complete now suggests from all accessible DAGs (#7251)</p></li> |
| <li><p>[AIRFLOW-7113] Fix gantt render error (#7913)</p></li> |
| <li><p>[AIRFLOW-6399] Add _access control to validate deserialized DAGs (#7896)</p></li> |
| <li><p>[AIRFLOW-6399] Serialization: DAG access_control field should be decorated field in DAG serialization (#7879)</p></li> |
| <li><p>[AIRFLOW-4453] Make behavior of <cite>none_failed</cite> consistent with documentation (#7464)</p></li> |
| <li><p>[AIRFLOW-4363] Fix JSON encoding error (#7628)</p></li> |
| <li><p>[AIRFLOW-6683] Run REST API tests when DAGs are serialized (#7352)</p></li> |
| <li><p>[AIRFLOW-6704] Copy common TaskInstance attributes from Task (#7324)</p></li> |
| <li><p>[AIRFLOW-6734] Use configured base_template instead of hard-coding (#7367)</p></li> |
| <li><p>[AIRFLOW-7098] Simple salesforce release 1.0.0 breaks the build (#7775)</p></li> |
| <li><p>[AIRFLOW-6062] Executor would only delete workers in its own namespace (#7123)</p></li> |
| <li><p>[AIRFLOW-7074] Add Permissions to view SubDAGs (#7752)</p></li> |
| <li><p>[AIRFLOW-7025] Fix SparkSqlHook.run_query to handle its parameter properly (#7677)</p></li> |
| <li><p>[AIRFLOW-6855] Escape project_dataset_table in SQL query in gcs to bq operator (#7475)</p></li> |
| <li><p>[AIRFLOW-6949] Respect explicit conf to SparkSubmitOperator (#7575)</p></li> |
| <li><p>[AIRFLOW-6588] write_stdout and json_format are boolean (#7199)</p></li> |
| <li><p>[AIRFLOW-3439] Decode logs with 'utf-8' (#4474)</p></li> |
| <li><p>[AIRFLOW-6878] Fix misconfigured default value for kube_client_request_args</p></li> |
| <li><p>[AIRFLOW-5167] Update dependencies for GCP packages (#7116)</p></li> |
| <li><p>[AIRFLOW-6821] Success callback not called when task marked as success from UI (#7447)</p></li> |
| <li><p>[AIRFLOW-6740] Remove Undocumented, deprecated, dysfunctional PROXY_FIX_NUM_PROXIES (#7359)</p></li> |
| <li><p>[AIRFLOW-6728] Change various DAG info methods to POST (#7364)</p></li> |
| <li><p>[AIRFLOW-6997] Make sure worker pods initcontainers obtain env vars from config (#7663)</p></li> |
| <li><p>[AIRFLOW-7062] Fix pydruid release breaking the build (#7720)</p></li> |
| <li><p>[AIRFLOW-6040] ReadTimoutError in KubernetesExecutor should not raise exception (#7616)</p></li> |
| <li><p>[AIRFLOW-6943] Fix utf-8 encoded description in DAG in Python 2 (#7567)</p></li> |
| <li><p>[AIRFLOW-6892] Fix broken non-wheel releases (#7514)</p></li> |
| <li><p>[AIRFLOW-6789] BugFix: Fix Default Worker concurrency (#7494)</p></li> |
| <li><p>[AIRFLOW-6840] Bump up version of future (#7471)</p></li> |
| <li><p>[AIRFLOW-5705] Fix bugs in AWS SSM Secrets Backend (#7745)</p></li> |
| <li><p>[AIRFLOW-5705] Fix bug in Secrets Backend (#7742)</p></li> |
| <li><p>Fix CloudSecretsManagerBackend invalid connections_prefix (#7861)</p></li> |
| <li><p>[AIRFLOW-7045] BugFix: DebugExecutor fails to change task state. (#8073)</p></li> |
| <li><p>BugFix: Datetimepicker is stuck on the UI (#8092)</p></li> |
| <li><p>[AIRFLOW-5277] Gantt chart respects per-user the Timezone UI setting (#8096)</p></li> |
| <li><p>Fix timezones displayed in Task Instance tooltip (#8103)</p></li> |
| <li><p>BugFix: Fix writing & deleting Dag Code for Serialized DAGs (#8151)</p></li> |
| <li><p>Make the default TI pool slots '1' (#8153)</p></li> |
| <li><p>Fix 500 error in Security screens (#8165)</p></li> |
| <li><p>Fix Viewing Dag Code for Stateless Webserver (#8159)</p></li> |
| <li><p>Fix issue with sqlalchemy 1.3.16 (#8230)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id28"> |
| <h3>Improvements<a class="headerlink" href="#id28" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Use same tooltip for Graph and Tree views for TaskInstances (#8043)</p></li> |
| <li><p>Allow DateTimePicker in Webserver to actually pick times too (#8034)</p></li> |
| <li><p>[AIRFLOW-5590] Add run_id to trigger DAG run API response (#6256)</p></li> |
| <li><p>[AIRFLOW-6695] Can now pass dagrun conf when triggering dags via UI (#7312)</p></li> |
| <li><p>[AIRFLOW-5336] Add ability to make updating FAB perms on webserver in it optional (#5940)</p></li> |
| <li><p>[AIRFLOW-1467] Allow tasks to use more than one pool slot (#7160)</p></li> |
| <li><p>[AIRFLOW-6987] Avoid creating default connections (#7629)</p></li> |
| <li><p>[AIRFLOW-4175] S3Hook load_file should support ACL policy parameter (#7733)</p></li> |
| <li><p>[AIRFLOW-4438] Add Gzip compression to S3_hook (#7680)</p></li> |
| <li><p>Allow setting Airflow Variable values to empty string (#8021)</p></li> |
| <li><p>Dont schedule dummy tasks (#7880)</p></li> |
| <li><p>Prevent sequential scan of task instance table (#8014)</p></li> |
| <li><p>[AIRFLOW-7017] Respect default dag view in trigger dag origin (#7667)</p></li> |
| <li><p>[AIRFLOW-6837] Limit description length of a Dag on HomePage (#7457)</p></li> |
| <li><p>[AIRFLOW-6989] Display Rendered template_fields without accessing Dag files (#7633)</p></li> |
| <li><p>[AIRFLOW-5944] Rendering templated_fields without accessing DAG files (#6788)</p></li> |
| <li><p>[AIRFLOW-5946] DAG Serialization: Store source code in db (#7217)</p></li> |
| <li><p>[AIRFLOW-7079] Remove redundant code for storing template_fields (#7750)</p></li> |
| <li><p>[AIRFLOW-7024] Add the verbose parameter support to SparkSqlOperator (#7676)</p></li> |
| <li><p>[AIRFLOW-6733] Extend not replace template (#7366)</p></li> |
| <li><p>[AIRFLOW-7001] Further fix for the MySQL 5.7 UtcDateTime (#7655)</p></li> |
| <li><p>[AIRFLOW-6014] Handle pods which are preempted & deleted by kubernetes but not restarted (#6606)</p></li> |
| <li><p>[AIRFLOW-6950] Remove refresh_executor_config from ti.refresh_from_db (#7577)</p></li> |
| <li><p>[AIRFLOW-7016] Sort dag tags in the UI (#7661)</p></li> |
| <li><p>[AIRFLOW-6762] Fix link to "Suggest changes on this page" (#7387)</p></li> |
| <li><p>[AIRFLOW-6948] Remove ASCII Airflow from version command (#7572)</p></li> |
| <li><p>[AIRFLOW-6767] Correct name for default Athena workgroup (#7394)</p></li> |
| <li><p>[AIRFLOW-6905] Update pin.svg with new pinwheel (#7524)</p></li> |
| <li><p>[AIRFLOW-6801] Make use of ImportError.timestamp (#7425)</p></li> |
| <li><p>[AIRFLOW-6830] Add Subject/MessageAttributes to SNS hook and operator (#7451)</p></li> |
| <li><p>[AIRFLOW-6630] Resolve handlebars advisory (#7284)</p></li> |
| <li><p>[AIRFLOW-6945] MySQL 5.7 is used in v1-10-test as an option</p></li> |
| <li><p>[AIRFLOW-6871] Optimize tree view for large DAGs (#7492)</p></li> |
| <li><p>[AIRFLOW-7063] Fix dag.clear() slowness caused by count (#7723)</p></li> |
| <li><p>[AIRFLOW-7023] Remove duplicated package definitions in setup.py (#7675)</p></li> |
| <li><p>[AIRFLOW-7001] Time zone removed from MySQL TIMSTAMP field inserts</p></li> |
| <li><p>[AIRFLOW-7105] Unify Secrets Backend method interfaces (#7830)</p></li> |
| <li><p>Make BaseSecretsBackend.build_path generic (#7948)</p></li> |
| <li><p>Allow hvac package installation using 'hashicorp' extra (#7915)</p></li> |
| <li><p>Standardize SecretBackend class names (#7846)</p></li> |
| <li><p>[AIRFLOW-5705] Make AwsSsmSecretsBackend consistent with VaultBackend (#7753)</p></li> |
| <li><p>[AIRFLOW-7045] Update SQL query to delete RenderedTaskInstanceFields (#8051)</p></li> |
| <li><p>Handle DST better in Task Instance tool tips (#8104)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id29"> |
| <h3>Misc/Internal<a class="headerlink" href="#id29" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Fix Flaky TriggerDAG UI test (#8022)</p></li> |
| <li><p>Remove unnecessary messages in CI (#7951)</p></li> |
| <li><p>Fixes too high parallelism in CI (#7947)</p></li> |
| <li><p>Install version is not persistent in breeze (#7914)</p></li> |
| <li><p>Fixed automated check for image rebuild (#7912)</p></li> |
| <li><p>Move Dockerfile to Dockerfile.ci (#7829)</p></li> |
| <li><p>Generate requirements are now sorted (#8040)</p></li> |
| <li><p>Change name of the common environment initialization function (#7805)</p></li> |
| <li><p>Requirements now depend on Python version (#7841)</p></li> |
| <li><p>Bring back reset db explicitly called at CI entry (#7798)</p></li> |
| <li><p>Fixes unclean installation of Airflow 1.10 (#7796)</p></li> |
| <li><p>[AIRFLOW-7029] Use separate docker image for running license check (#7678)</p></li> |
| <li><p>[AIRFLOW-5842] Switch to Debian buster image as a base (#7647)</p></li> |
| <li><p>[AIRFLOW-5828] Move build logic out from hooks/build (#7618)</p></li> |
| <li><p>[AIRFLOW-6839] Even more mypy speed improvements (#7460)</p></li> |
| <li><p>[AIRFLOW-6820] split breeze into functions (#7433)</p></li> |
| <li><p>[AIRFLOW-7097] Install gcloud beta components in CI image (#7772)</p></li> |
| <li><p>[AIRFLOW-7018] fixing travis's job name escaping problem (#7668)</p></li> |
| <li><p>[AIRFLOW-7054] Breeze has an option now to reset db at entry (#7710)</p></li> |
| <li><p>[AIRFLOW-7005] Added exec command to Breeze (#7649)</p></li> |
| <li><p>[AIRFLOW-7015] Detect Dockerhub repo/user when building on Dockerhub (#7673)</p></li> |
| <li><p>[AIRFLOW-6727] Fix minor bugs in Release Management scripts (#7355)</p></li> |
| <li><p>[AIRFLOW-7013] Automated check if Breeze image needs to be pulled (#7656)</p></li> |
| <li><p>[AIRFLOW-7010] Skip in-container checks for Dockerhub builds (#7652)</p></li> |
| <li><p>[AIRFLOW-7011] Pin JPype release to allow to build 1.10 images</p></li> |
| <li><p>[AIRFLOW-7006] Fix missing +e in Breeze script (#7648)</p></li> |
| <li><p>[AIRFLOW-6979] Fix breeze test-target specific test param issue (#7614)</p></li> |
| <li><p>[AIRFLOW-6932] Add restart-environment command to Breeze</p></li> |
| <li><p>[AIRFLOW-6919] Make Breeze DAG-test friendly (#7539)</p></li> |
| <li><p>[AIRFLOW-6838] Introduce real subcommands for Breeze (#7515)</p></li> |
| <li><p>[AIRFLOW-6763] Make systems tests ready for backport tests (#7389)</p></li> |
| <li><p>[AIRFLOW-6866] Fix wrong export for Mac on Breeze (#7485)</p></li> |
| <li><p>[AIRFLOW-6842] Skip fixing ownership on Mac (#7469)</p></li> |
| <li><p>[AIRFLOW-6841] Fixed unbounded variable on Mac (#7465)</p></li> |
| <li><p>[AIRFLOW-7067] Pinned version of Apache Airflow (#7730)</p></li> |
| <li><p>[AIRFLOW-7058] Add support for different DB versions (#7717)</p></li> |
| <li><p>[AIRFLOW-7002] Get rid of yaml "parser" in bash (#7646)</p></li> |
| <li><p>[AIRFLOW-6972] Shorter frequently used commands in Breeze (#7608)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id30"> |
| <h3>Doc only changes<a class="headerlink" href="#id30" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>Fix typo for store_serialized_dags config (#7952)</p></li> |
| <li><p>Fix broken link in README.md (#7893)</p></li> |
| <li><p>Separate supported Postgres versions with comma (#7892)</p></li> |
| <li><p>Fix grammar in setup.py (#7877)</p></li> |
| <li><p>Add Jiajie Zhong to committers list (#8047)</p></li> |
| <li><p>Update Security doc for 1.10.* for auth backends (#8072)</p></li> |
| <li><p>Fix Example in config_templates for Secrets Backend (#8074)</p></li> |
| <li><p>Add backticks in IMAGES.rst command description (#8075)</p></li> |
| <li><p>Change version_added for store_dag_code config (#8076)</p></li> |
| <li><p>[AIRFLOW-XXXX] Remove duplicate docs</p></li> |
| <li><p>[AIRFLOW-XXXX] Remove the defunct limitation of Dag Serialization (#7716)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add prerequisite tasks for all GCP operators guide (#6049)</p></li> |
| <li><p>[AIRFLOW-XXXX] Simplify AWS/Azure/Databricks operators listing (#6047)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add external reference to all GCP operator guide (#6048)</p></li> |
| <li><p>[AIRFLOW-XXXX] Simplify GCP operators listing</p></li> |
| <li><p>[AIRFLOW-XXXX] Simplify Qubole operators listing</p></li> |
| <li><p>[AIRFLOW-XXXX] Add autogenerated TOC (#6038)</p></li> |
| <li><p>[AIRFLOW-XXXX] Create "Using the CLI" page (#5823)</p></li> |
| <li><p>[AIRFLOW-XXXX] Group references in one section (#5776)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix analytics doc (#5885)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add S3 Logging section (#6039)</p></li> |
| <li><p>[AIRFLOW-XXXX] Move Azure Logging section above operators (#6040)</p></li> |
| <li><p>[AIRFLOW-XXXX] Update temp link to a fixed link (#7715)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add Updating.md section for 1.10.9 (#7385)</p></li> |
| <li><p>[AIRFLOW-XXXX] Remove duplication in BaseOperator docstring (#7321)</p></li> |
| <li><p>[AIRFLOW-XXXX] Update tests info in CONTRIBUTING.rst (#7466)</p></li> |
| <li><p>[AIRFLOW-XXXX] Small BREEZE.rst update (#7487)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add instructions for logging to localstack S3 (#7461)</p></li> |
| <li><p>[AIRFLOW-XXXX] Remove travis config warnings (#7467)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add communication chapter to contributing (#7204)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add known issue - example_dags/__init__.py (#7444)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix breeze build-docs (#7445)</p></li> |
| <li><p>[AIRFLOW-XXXX] Less verbose docker builds</p></li> |
| <li><p>[AIRFLOW-XXXX] Speed up mypy runs (#7421)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix location of kubernetes tests (#7373)</p></li> |
| <li><p>[AIRFLOW-XXXX] Remove quotes from domains in Google Oauth (#4226)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add explicit info about JIRAs for code-related PRs (#7318)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix typo in the word committer (#7392)</p></li> |
| <li><p>[AIRFLOW-XXXX] Remove duplicated paragraph in docs (#7662)</p></li> |
| <li><p>Fix reference to KubernetesPodOperator (#8100)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-9-2020-02-07"> |
| <h2>Airflow 1.10.9, 2020-02-07<a class="headerlink" href="#airflow-1-10-9-2020-02-07" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id31"> |
| <h3>Bug Fixes<a class="headerlink" href="#id31" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-6751] Pin Werkzeug (dependency of a number of our dependencies) to < 1.0.0 (#7377)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-8-2020-02-07"> |
| <h2>Airflow 1.10.8, 2020-02-07<a class="headerlink" href="#airflow-1-10-8-2020-02-07" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id32"> |
| <h3>New Features<a class="headerlink" href="#id32" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4026] Add filter by DAG tags (#6489)</p></li> |
| <li><p>[AIRFLOW-6613] Center dag on graph view load (#7238)</p></li> |
| <li><p>[AIRFLOW-5843] Add conf option to Add DAG Run view (#7281)</p></li> |
| <li><p>[AIRFLOW-4495] Allow externally triggered dags to run for future exec dates (#7038)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id33"> |
| <h3>Improvements<a class="headerlink" href="#id33" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-6438] Filter DAGs returned by blocked (#7019)</p></li> |
| <li><p>[AIRFLOW-6666] Resolve js-yaml advisory (#7283)</p></li> |
| <li><p>[AIRFLOW-6632] Bump dagre-d3 to resolve lodash CVE advisory (#7280)</p></li> |
| <li><p>[AIRFLOW-6667] Resolve serialize-javascript advisory (#7282)</p></li> |
| <li><p>[AIRFLOW-6451] self._print_stat() in dag_processing.py should be skipable (#7134)</p></li> |
| <li><p>[AIRFLOW-6495] Load DAG only once when running a task using StandardTaskRunner (#7090)</p></li> |
| <li><p>[AIRFLOW-6319] Add support for AWS Athena workgroups (#6871)</p></li> |
| <li><p>[AIRFLOW-6677] Remove deprecation warning from SQLAlchmey (#7289)</p></li> |
| <li><p>[AIRFLOW-6428] Fix import path for airflow.utils.dates.days_ago in Example DAGs (#7007)</p></li> |
| <li><p>[AIRFLOW-6595] Use TaskNotFound exception instead of AirflowException (#7210)</p></li> |
| <li><p>[AIRFLOW-6620] Mock celery in worker cli test (#7243)</p></li> |
| <li><p>[AIRFLOW-6608] Change logging level for Bash & PyOperator Env exports</p></li> |
| <li><p>[AIRFLOW-2279] Clear tasks across DAGs if marked by ExternalTaskMarker (#6633)</p></li> |
| <li><p>[AIRFLOW-6359] Make Spark status_poll_interval explicit (#6978)</p></li> |
| <li><p>[AIRFLOW-6359] spark_submit_hook.py status polling interval config (#6909)</p></li> |
| <li><p>[AIRFLOW-6316] Use exampleinclude directives in tutorial.rst (#6868)</p></li> |
| <li><p>[AIRFLOW-6519] Make TI logs constants in Webserver configurable (#7113)</p></li> |
| <li><p>[AIRFLOW-6327] http_hook: Accept json= parameter for payload (#6886)</p></li> |
| <li><p>[AIRFLOW-6261] flower_basic_auth eligible to _cmd (#6825)</p></li> |
| <li><p>[AIRFLOW-6238] Filter dags returned by dag_stats</p></li> |
| <li><p>[AIRFLOW-5616] Switch PrestoHook from pyhive to presto-python-client</p></li> |
| <li><p>[AIRFLOW-6611] Add proxy_fix configs to default_airflow.cfg (#7236)</p></li> |
| <li><p>[AIRFLOW-6557] Add test for newly added fields in BaseOperator (#7162)</p></li> |
| <li><p>[AIRFLOW-6584] Pin cassandra driver (#7194)</p></li> |
| <li><p>[AIRFLOW-6537] Fix backticks in RST files (#7140)</p></li> |
| <li><p>[AIRFLOW-4428] Error if exec_date before default_args.start_date in trigger_dag (#6948)</p></li> |
| <li><p>[AIRFLOW-6330] Show cli help when param blank or typo (#6883)</p></li> |
| <li><p>[AIRFLOW-4113] Unpin boto3 (#6884)</p></li> |
| <li><p>[AIRFLOW-6181] Add DebugExecutor (#6740)</p></li> |
| <li><p>[AIRFLOW-6504] Allow specifying configmap for Airflow Local Setting (#7097)</p></li> |
| <li><p>[AIRFLOW-6436] Cleanup for Airflow configs doc generator code (#7036)</p></li> |
| <li><p>[AIRFLOW-6436] Add x_frame_enabled config in config.yml (#7024)</p></li> |
| <li><p>[AIRFLOW-6436] Create & Automate docs on Airflow Configs (#7015)</p></li> |
| <li><p>[AIRFLOW-6527] Make send_task_to_executor timeout configurable (#7143)</p></li> |
| <li><p>[AIRFLOW-6272] Switch from npm to yarnpkg for managing front-end dependencies (#6844)</p></li> |
| <li><p>[AIRFLOW-6350] Security - spark submit operator logging+exceptions should mask passwords</p></li> |
| <li><p>[AIRFLOW-6358] Log details of failed task (#6908)</p></li> |
| <li><p>[AIRFLOW-5149] Skip SLA checks config (#6923)</p></li> |
| <li><p>[AIRFLOW-6057] Update template_fields of the PythonSensor (#6656)</p></li> |
| <li><p>[AIRFLOW-4445] Mushroom cloud errors too verbose (#6952)</p></li> |
| <li><p>[AIRFLOW-6394] Simplify github PR template (#6955)</p></li> |
| <li><p>[AIRFLOW-5385] spark hook does not work on spark 2.3/2.4 (#6976)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id34"> |
| <h3>Bug Fixes<a class="headerlink" href="#id34" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-6345] Ensure arguments to ProxyFix are integers (#6901)</p></li> |
| <li><p>[AIRFLOW-6576] Fix scheduler crash caused by deleted task with sla misses (#7187)</p></li> |
| <li><p>[AIRFLOW-6686] Fix syntax error constructing list of process ids (#7298)</p></li> |
| <li><p>[AIRFLOW-6683] REST API respects store_serialized_dag setting (#7296)</p></li> |
| <li><p>[AIRFLOW-6553] Add upstream_failed in instance state filter to WebUI (#7159)</p></li> |
| <li><p>[AIRFLOW-6357] Highlight nodes in Graph UI if task id contains dots (#6904)</p></li> |
| <li><p>[AIRFLOW-3349] Use None instead of False as value for encoding in StreamLogWriter (#7329)</p></li> |
| <li><p>[AIRFLOW-6627] Email with incorrect DAG not delivered (#7250)</p></li> |
| <li><p>[AIRFLOW-6637] Fix Airflow test command in 1.10.x</p></li> |
| <li><p>[AIRFLOW-6636] Avoid exceptions when printing task instance</p></li> |
| <li><p>[AIRFLOW-6522] Clear task log file before starting to fix duplication in S3TaskHandler (#7120)</p></li> |
| <li><p>[AIRFLOW-5501] Make default <cite>in_cluster</cite> value in KubernetesPodOperator respect config (#6124)</p></li> |
| <li><p>[AIRFLOW-6514] Use RUNNING_DEPS to check run from UI (#6367)</p></li> |
| <li><p>[AIRFLOW-6381] Remove styling based on DAG id from DAGs page (#6985)</p></li> |
| <li><p>[AIRFLOW-6434] Add return statement back to DockerOperator.execute (#7013)</p></li> |
| <li><p>[AIRFLOW-2516] Fix mysql deadlocks (#6988)</p></li> |
| <li><p>[AIRFLOW-6528] Disable flake8 W503 line break before binary operator (#7124)</p></li> |
| <li><p>[AIRFLOW-6517] Make merge_dicts function recursive (#7111)</p></li> |
| <li><p>[AIRFLOW-5621] Failure callback is not triggered when marked Failed on UI (#7025)</p></li> |
| <li><p>[AIRFLOW-6353] Security - ui - add click jacking defense (#6995)</p></li> |
| <li><p>[AIRFLOW-6348] Security - cli.py is currently printing logs with password (#6915)</p></li> |
| <li><p>[AIRFLOW-6323] Remove non-ascii letters from default config (#6878)</p></li> |
| <li><p>[AIRFLOW-6506] Fix do_xcom_push defaulting to True in KubernetesPodOperator (#7122)</p></li> |
| <li><p>[AIRFLOW-6516] BugFix: airflow.cfg does not exist in Volume Mounts (#7109)</p></li> |
| <li><p>[AIRFLOW-6427] Fix broken example_qubole_operator dag (#7005)</p></li> |
| <li><p>[AIRFLOW-6385] BugFix: SlackAPIPostOperator fails when blocks not set (#7022)</p></li> |
| <li><p>[AIRFLOW-6347] BugFix: Can't get task logs when serialization is enabled (#7092)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix downgrade of db migration 0e2a74e0fc9f (#6859)</p></li> |
| <li><p>[AIRFLOW-6366] Fix migrations for MS SQL Server (#6920)</p></li> |
| <li><p>[AIRFLOW-5406] Allow spark without kubernetes (#6921)</p></li> |
| <li><p>[AIRFLOW-6229] SparkSubmitOperator polls forever if status JSON can't… (#6918)</p></li> |
| <li><p>[AIRFLOW-6352] Security - ui - add login timeout (#6912)</p></li> |
| <li><p>[AIRFLOW-6397] Ensure sub_process attribute exists before trying to kill it (#6958)</p></li> |
| <li><p>[AIRFLOW-6400] Fix pytest not working on Windows (#6964)</p></li> |
| <li><p>[AIRFLOW-6418] Remove SystemTest.skip decorator (#6991)</p></li> |
| <li><p>[AIRFLOW-6425] Serialization: Add missing DAG parameters to JSON Schema (#7002)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id35"> |
| <h3>Misc/Internal<a class="headerlink" href="#id35" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-6467] Use self.dag i/o creating a new one (#7067)</p></li> |
| <li><p>[AIRFLOW-6490] Improve time delta comparison in local task job tests (#7083)</p></li> |
| <li><p>[AIRFLOW-5814] Implementing Presto hook tests (#6491)</p></li> |
| <li><p>[AIRFLOW-5704] Improve Kind Kubernetes scripts for local testing (#6516)</p></li> |
| <li><p>[AIRFLOW-XXXX] Move airflow-config-yaml pre-commit before pylint (#7108)</p></li> |
| <li><p>[AIRFLOW-XXXX] Improve clarity of confirm message (#7110)</p></li> |
| <li><p>[AIRFLOW-6662] install dumb init (#7300)</p></li> |
| <li><p>[AIRFLOW-6705] One less chatty message at breeze initialisation (#7326)</p></li> |
| <li><p>[AIRFLOW-6705] Less chatty integration/backend checks (#7325)</p></li> |
| <li><p>[AIRFLOW-6662] Switch to --init docker flag for signal propagation (#7278)</p></li> |
| <li><p>[AIRFLOW-6661] Fail after 50 failing tests (#7277)</p></li> |
| <li><p>[AIRFLOW-6607] Get rid of old local scripts for Breeze (#7225)</p></li> |
| <li><p>[AIRFLOW-6589] BAT tests run in pre-commit on bash script changes (#7203)</p></li> |
| <li><p>[AIRFLOW-6592] Doc build is moved to test phase (#7208)</p></li> |
| <li><p>[AIRFLOW-6641] Better diagnostics for kubernetes flaky tests (#7261)</p></li> |
| <li><p>[AIRFLOW-6642] Make local task job test less flaky (#7262)</p></li> |
| <li><p>[AIRFLOW-6643] Fix flakiness of kerberos tests</p></li> |
| <li><p>[AIRFLOW-6638] Remove flakiness test from test_serialized_db remove</p></li> |
| <li><p>[AIRFLOW-6701] Rat is downloaded from stable backup/mirrors (#7323)</p></li> |
| <li><p>[AIRFLOW-6702] Dumping kind logs to file.io. (#7319)</p></li> |
| <li><p>[AIRFLOW-6491] Improve handling of Breeze parameters (#7084)</p></li> |
| <li><p>[AIRFLOW-6470] Avoid pipe to file when do curl (#7063)</p></li> |
| <li><p>[AIRFLOW-6471] Add pytest-instafail plugin (#7064)</p></li> |
| <li><p>[AIRFLOW-6462] Limit exported variables in Dockerfile/Breeze (#7057)</p></li> |
| <li><p>[AIRFLOW-6465] Add bash autocomplete for Airflow in Breeze (#7060)</p></li> |
| <li><p>[AIRFLOW-6464] Add cloud providers CLI tools in Breeze (#7059)</p></li> |
| <li><p>[AIRFLOW-6461] Remove silent flags in Dockerfile (#7052)</p></li> |
| <li><p>[AIRFLOW-6459] Increase verbosity of pytest (#7049)</p></li> |
| <li><p>[AIRFLOW-6370] Skip Cassandra tests if cluster is not up (#6926)</p></li> |
| <li><p>[AIRFLOW-6511] Remove BATS docker containers (#7103)</p></li> |
| <li><p>[AIRFLOW-6475] Remove duplication of volume mount specs in Breeze.. (#7065)</p></li> |
| <li><p>[AIRFLOW-6489] Add BATS support for Bash unit testing (#7081)</p></li> |
| <li><p>[AIRFLOW-6387] print details of success/skipped task (#6956)</p></li> |
| <li><p>[AIRFLOW-6568] Add Emacs related files to .gitignore (#7175)</p></li> |
| <li><p>[AIRFLOW-6575] Entropy source for CI tests is changed to unblocking (#7185)</p></li> |
| <li><p>[AIRFLOW-6496] Separate integrations in tests (#7091)</p></li> |
| <li><p>[AIRFLOW-6634] Set PYTHONPATH in interactive Breeze</p></li> |
| <li><p>[AIRFLOW-6564] Additional diagnostics information on CI check failure (#7172)</p></li> |
| <li><p>[AIRFLOW-6383] Add no trailing-whitespace pre-commit hook (#6941)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id36"> |
| <h3>Doc only changes<a class="headerlink" href="#id36" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-XXXX] Consistency fixes in new documentation (#7207)</p></li> |
| <li><p>[AIRFLOW-XXXX] Improve grammar and structure in FAQ doc (#7291)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix email configuration link in CONTRIBUTING.rst (#7311)</p></li> |
| <li><p>[AIRFLOW-XXXX] Update docs with new BranchPythonOperator behaviour (#4682)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix Typo in scripts/ci/ci_run_airflow_testing.sh (#7235)</p></li> |
| <li><p>[AIRFLOW-XXXX] Screenshot showing disk space configuration for OSX (#7226)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add mentoring information to contributing docs (#7202)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add rebase info to contributing (#7201)</p></li> |
| <li><p>[AIRFLOW-XXXX] Increase verbosity of static checks in CI (#7200)</p></li> |
| <li><p>[AIRFLOW-XXXX] Adds branching strategy to documentation (#7193)</p></li> |
| <li><p>[AIRFLOW-XXXX] Move email configuration from the concept page (#7189)</p></li> |
| <li><p>[AIRFLOW-XXXX] Update task lifecycle diagram (#7161)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix reference in concepts doc (#7135)</p></li> |
| <li><p>[AIRFLOW-XXXX] Clear debug docs (#7104)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix typos and broken links in development docs (#7086)</p></li> |
| <li><p>[AIRFLOW-XXXX] Clarify wait_for_downstream and execution_date (#6999)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add <cite>airflow dags show</cite> command guide (#7014)</p></li> |
| <li><p>[AIRFLOW-XXXX] Update operation chaining documentation (#7018)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add <cite>.autoenv_leave.zsh</cite> to .gitignore (#6986)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix development packages installation instructions (#6942)</p></li> |
| <li><p>[AIRFLOW-XXXX] Update committers list (#7212)</p></li> |
| <li><p>[AIRFLOW-XXXX] Move UPDATING changes into correct versions (#7166)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add Documentation for check_slas flag (#6974)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix gcp keyfile_dict typo (#6962)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add tips for writing a note in UPDATIND.md (#6960)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add note warning that bash>4.0 is required for docs build script (#6947)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add autoenv to gitignore (#6946)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix GCSTaskHandler Comment Typo (#6928)</p></li> |
| <li><p>[AIRFLOW-XXXX] Fix broken DAG Serialization Link (#6891)</p></li> |
| <li><p>[AIRFLOW-XXXX] Add versions_added field to configs</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-7-2019-12-24"> |
| <h2>Airflow 1.10.7, 2019-12-24<a class="headerlink" href="#airflow-1-10-7-2019-12-24" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id37"> |
| <h3>New Features<a class="headerlink" href="#id37" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5088][AIP-24] Persisting serialized DAG in DB for webserver scalability (#5992)</p></li> |
| <li><p>[AIRFLOW-6083] Adding ability to pass custom configuration to AWS Lambda client. (#6678)</p></li> |
| <li><p>[AIRFLOW-5117] Automatically refresh EKS API tokens when needed (#5731)</p></li> |
| <li><p>[AIRFLOW-5118] Add ability to specify optional components in DataprocClusterCreateOperator (#5821)</p></li> |
| <li><p>[AIRFLOW-5681] Allow specification of a tag or hash for the git_sync init container (#6350)</p></li> |
| <li><p>[AIRFLOW-6025] Add label to uniquely identify creator of Pod (#6621)</p></li> |
| <li><p>[AIRFLOW-4843] Allow orchestration via Docker Swarm (SwarmOperator) (#5489)</p></li> |
| <li><p>[AIRFLOW-5751] add get_uri method to Connection (#6426)</p></li> |
| <li><p>[AIRFLOW-6056] Allow EmrAddStepsOperator to accept job_flow_name as alternative to job_flow_id (#6655)</p></li> |
| <li><p>[AIRFLOW-2694] Declare permissions in DAG definition (#4642)</p></li> |
| <li><p>[AIRFLOW-4940] Add DynamoDB to S3 operator (#5663)</p></li> |
| <li><p>[AIRFLOW-4161] BigQuery to MySQL Operator (#5711)</p></li> |
| <li><p>[AIRFLOW-6041] Add user agent to the Discovery API client (#6636)</p></li> |
| <li><p>[AIRFLOW-6089] Reorder setup.py dependencies and add ci (#6681)</p></li> |
| <li><p>[AIRFLOW-5921] Add bulk_load_custom to MySqlHook (#6575)</p></li> |
| <li><p>[AIRFLOW-5854] Add support for <cite>tty</cite> parameter in Docker related operators (#6542)</p></li> |
| <li><p>[AIRFLOW-4758] Add GcsToGDriveOperator operator (#5822)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id38"> |
| <h3>Improvements<a class="headerlink" href="#id38" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-3656] Show doc link for the current installed version (#6690)</p></li> |
| <li><p>[AIRFLOW-5665] Add path_exists method to SFTPHook (#6344)</p></li> |
| <li><p>[AIRFLOW-5729] Make InputDataConfig optional in Sagemaker's training config (#6398)</p></li> |
| <li><p>[AIRFLOW-5045] Add ability to create Google Dataproc cluster with custom image from a different project (#5752)</p></li> |
| <li><p>[AIRFLOW-6132] Allow to pass in tags for the AzureContainerInstancesOperator (#6694)</p></li> |
| <li><p>[AIRFLOW-5945] Make inbuilt OperatorLinks work when using Serialization (#6715)</p></li> |
| <li><p>[AIRFLOW-5947] Make the JSON backend pluggable for DAG Serialization (#6630)</p></li> |
| <li><p>[AIRFLOW-6239] Filter dags return by last_dagruns (to only select visible dags, not all dags) (#6804)</p></li> |
| <li><p>[AIRFLOW-6095] Filter dags returned by task_stats (to only select visible dags, not all dags) (#6684)</p></li> |
| <li><p>[AIRFLOW-4482] Add execution_date to "trigger DagRun" API response (#5260)</p></li> |
| <li><p>[AIRFLOW-1076] Add get method for template variable accessor (#6793)</p></li> |
| <li><p>[AIRFLOW-5194] Add error handler to action log (#5883)</p></li> |
| <li><p>[AIRFLOW-5936] Allow explicit get_pty in SSHOperator (#6586)</p></li> |
| <li><p>[AIRFLOW-5474] Add Basic auth to Druid hook (#6095)</p></li> |
| <li><p>[AIRFLOW-5726] Allow custom filename in RedshiftToS3Transfer (#6396)</p></li> |
| <li><p>[AIRFLOW-5834] Option to skip serve_logs process with <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">worker</span></code> (#6709)</p></li> |
| <li><p>[AIRFLOW-5583] Extend the 'DAG Details' page to display the start_date / end_date (#6235)</p></li> |
| <li><p>[AIRFLOW-6250] Ensure on_failure_callback always has a populated context (#6812)</p></li> |
| <li><p>[AIRFLOW-6222] http hook logs response body for any failure (#6779)</p></li> |
| <li><p>[AIRFLOW-6260] Drive _cmd config option by env var (<code class="docutils literal notranslate"><span class="pre">AIRFLOW__CORE__SQL_ALCHEMY_CONN_CMD</span></code> for example) (#6801)</p></li> |
| <li><p>[AIRFLOW-6168] Allow proxy_fix middleware of webserver to be configurable (#6723)</p></li> |
| <li><p>[AIRFLOW-5931] Use os.fork when appropriate to speed up task execution. (#6627)</p></li> |
| <li><p>[AIRFLOW-4145] Allow RBAC roles permissions, ViewMenu to be over-rideable (#4960)</p></li> |
| <li><p>[AIRFLOW-5928] Hive hooks load_file short circuit (#6582)</p></li> |
| <li><p>[AIRFLOW-5313] Add params support for awsbatch_operator (#5900)</p></li> |
| <li><p>[AIRFLOW-2227] Add delete method to Variable class (#4963)</p></li> |
| <li><p>[AIRFLOW-5082] Add subject in AwsSnsHook (#5694)</p></li> |
| <li><p>[AIRFLOW-5715] Make email, owner context available (#6385)</p></li> |
| <li><p>[AIRFLOW-5345] Allow SqlSensor's hook to be customized by subclasses (#5946)</p></li> |
| <li><p>[AIRFLOW-5417] Fix DB disconnects during webserver startup (#6023)</p></li> |
| <li><p>[AIRFLOW-5730] Enable get_pandas_df on PinotDbApiHook (#6399)</p></li> |
| <li><p>[AIRFLOW-3235] Add list function in AzureDataLakeHook (#4070)</p></li> |
| <li><p>[AIRFLOW-5442] implementing get_pandas_df method for druid broker hook (#6057)</p></li> |
| <li><p>[AIRFLOW-5883] Improve count() queries in a few places (#6532)</p></li> |
| <li><p>[AIRFLOW-5811] Add metric for externally killed task count (#6466)</p></li> |
| <li><p>[AIRFLOW-5758] Support the custom cursor classes for the PostgreSQL hook (#6432)</p></li> |
| <li><p>[AIRFLOW-5766] Use httpbin.org in http_default (#6438)</p></li> |
| <li><p>[AIRFLOW-5798] Set default ExternalTaskSensor.external_task_id (#6431)</p></li> |
| <li><p>[AIRFLOW-5643] Reduce duplicated logic in S3Hook (#6313)</p></li> |
| <li><p>[AIRFLOW-5562] Skip grant single DAG permissions for Admin role. (#6199)</p></li> |
| <li><p>[AIRFLOW-6192] Stop creating Hook from SFTPSensor.__init__ (#6748)</p></li> |
| <li><p>[AIRFLOW-5749][AIRFLOW-4162] Support the "blocks" component for the Slack operators (#6418)</p></li> |
| <li><p>[AIRFLOW-5693] Support the "blocks" component for the Slack messages (#6364)</p></li> |
| <li><p>[AIRFLOW-5714] Collect SLA miss emails only from tasks missed SLA (#6384)</p></li> |
| <li><p>[AIRFLOW-5049] Add validation for src_fmt_configs in bigquery hook (#5671)</p></li> |
| <li><p>[AIRFLOW-6177] Log DAG processors timeout event at error level, not info (#6731)</p></li> |
| <li><p>[AIRFLOW-6180] Improve kerberos init in pytest conftest (#6735)</p></li> |
| <li><p>[AIRFLOW-6159] Change logging level of the heartbeat message to DEBUG (#6716)</p></li> |
| <li><p>[AIRFLOW-6144] Improve the log message of Airflow scheduler (#6710)</p></li> |
| <li><p>[AIRFLOW-6099] Add host name to task runner log (#6688)</p></li> |
| <li><p>[AIRFLOW-6045] Error on failed execution of compile_assets (#6640)</p></li> |
| <li><p>[AIRFLOW-5144] Add confirmation on delete button click (#6745)</p></li> |
| <li><p>[AIRFLOW-6099] Add host name to task runner log (#6688)</p></li> |
| <li><p>[AIRFLOW-5915] Add support for the new documentation theme (#6563)</p></li> |
| <li><p>[AIRFLOW-5897] Allow setting -1 as pool slots value in webserver (#6550)</p></li> |
| <li><p>[AIRFLOW-5888] Use psycopg2-binary for postgres operations (#6533)</p></li> |
| <li><p>[AIRFLOW-5870] Allow -1 for pool size and optimise pool query (#6520)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id39"> |
| <h3>Bug Fixes<a class="headerlink" href="#id39" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-XXX] Bump Jira version to fix issue with async</p></li> |
| <li><p>[AIRFLOW-XXX] Add encoding to fix Cyrillic output when reading back task logs (#6631)</p></li> |
| <li><p>[AIRFLOW-5304] Fix extra links in BigQueryOperator with multiple queries (#5906)</p></li> |
| <li><p>[AIRFLOW-6268] Prevent (expensive) ajax calls on home page when no dags visible (#6839)</p></li> |
| <li><p>[AIRFLOW-6259] Reset page to 1 with each new search for dags (#6828)</p></li> |
| <li><p>[AIRFLOW-6185] SQLAlchemy Connection model schema not aligned with Alembic schema (#6754)</p></li> |
| <li><p>[AIRFLOW-3632] Only replace microseconds if execution_date is None in trigger_dag REST API (#6380)</p></li> |
| <li><p>[AIRFLOW-5458] Bump Flask-AppBuilder to 2.2.0 (for Python >= 3.6) (#6607)</p></li> |
| <li><p>[AIRFLOW-5072] gcs_hook should download files once (#5685)</p></li> |
| <li><p>[AIRFLOW-5744] Environment variables not correctly set in Spark submit operator (#6796)</p></li> |
| <li><p>[AIRFLOW-3189] Remove schema from DbHook.get_uri response if None (#6833)</p></li> |
| <li><p>[AIRFLOW-6195] Fixed TaskInstance attrs not correct on UI (#6758)</p></li> |
| <li><p>[AIRFLOW-5889] Make polling for AWS Batch job status more resilient (#6765)</p></li> |
| <li><p>[AIRFLOW-6043] Fix bug in UI when "filtering by root" to display section of dag (#6638)</p></li> |
| <li><p>[AIRFLOW-6033] Fix UI Crash at "Landing Times" when task_id is changed (#6635)</p></li> |
| <li><p>[AIRFLOW-3745] Fix viewer not able to view dag details (#4569)</p></li> |
| <li><p>[AIRFLOW-6175] Fixes bug when tasks get stuck in "scheduled" state (#6732)</p></li> |
| <li><p>[AIRFLOW-5463] Make Variable.set when replacing an atomic operation (#6807)</p></li> |
| <li><p>[AIRFLOW-5582] Add get_autocommit to JdbcHook (#6232)</p></li> |
| <li><p>[AIRFLOW-5867] Fix webserver unit_test_mode data type (#6517)</p></li> |
| <li><p>[AIRFLOW-5819] Update AWSBatchOperator default value (#6473)</p></li> |
| <li><p>[AIRFLOW-5709] Fix regression in setting custom operator resources. (#6331)</p></li> |
| <li><p>[AIRFLOW-5658] Fix broken navigation links (#6374)</p></li> |
| <li><p>[AIRFLOW-5727] SqoopHook: Build --connect parameter only if port/schema are defined (#6397)</p></li> |
| <li><p>[AIRFLOW-5695] use RUNNING_DEPS to check run from UI (#6367)</p></li> |
| <li><p>[AIRFLOW-6254] obscure conn extra in logs (#6817)</p></li> |
| <li><p>[AIRFLOW-4824] Add charset handling for SqlAlchemy engine for MySqlHook (#6816)</p></li> |
| <li><p>[AIRFLOW-6091] Add flushing in execute method for BigQueryCursor (#6683)</p></li> |
| <li><p>[AIRFLOW-6256] Ensure Jobs table is cleared when resetting DB (#6818)</p></li> |
| <li><p>[AIRFLOW-5224] Add encoding parameter to GoogleCloudStorageToBigQuery (#6297)</p></li> |
| <li><p>[AIRFLOW-5179] Remove top level __init__.py (#5818)</p></li> |
| <li><p>[AIRFLOW-5660] Attempt to find the task in DB from Kubernetes pod labels (#6340)</p></li> |
| <li><p>[AIRFLOW-6241] Fix typo in airflow/gcp/operator/dataflow.py (#6806)</p></li> |
| <li><p>[AIRFLOW-6171] Apply .airflowignore to correct subdirectories (#6784)</p></li> |
| <li><p>[AIRFLOW-6018] Display task instance in table during backfilling (#6612)</p></li> |
| <li><p>[AIRFLOW-6189] Reduce the maximum test duration to 8 minutes (#6744)</p></li> |
| <li><p>[AIRFLOW-6141] Remove ReadyToRescheduleDep if sensor mode == poke (#6704)</p></li> |
| <li><p>[AIRFLOW-6054] Add a command that starts the database consoles (#6653)</p></li> |
| <li><p>[AIRFLOW-6047] Simplify the logging configuration template (#6644)</p></li> |
| <li><p>[AIRFLOW-6017] Exclude PULL_REQUEST_TEMPLATE.md from RAT check (#6611)</p></li> |
| <li><p>[AIRFLOW-4560] Fix Tez queue parameter name in mapred_queue (#5315)</p></li> |
| <li><p>[AIRFLOW-2143] Fix TaskTries graph counts off-by-1 (#6526)</p></li> |
| <li><p>[AIRFLOW-5873] KubernetesPodOperator fixes and test (#6523)</p></li> |
| <li><p>[AIRFLOW-5869] BugFix: Some Deserialized tasks have no start_date (#6519)</p></li> |
| <li><p>[AIRFLOW-4020] Remove DAG edit permissions from Viewer role (#4845)</p></li> |
| <li><p>[AIRFLOW-6263] Fix broken WinRM integration (#6832)</p></li> |
| <li><p>[AIRFLOW-5836] Pin azure-storage-blob version to <12 (#6486)</p></li> |
| <li><p>[AIRFLOW-4488] Fix typo for non-RBAC UI in max_active_runs_per_dag (#6778)</p></li> |
| <li><p>[AIRFLOW-5942] Pin PyMSSQL to <3.0 (#6592)</p></li> |
| <li><p>[AIRFLOW-5451] SparkSubmitHook don't set default namespace (#6072)</p></li> |
| <li><p>[AIRFLOW-6271] Printing log files read during load_test_config (#6842)</p></li> |
| <li><p>[AIRFLOW-6308] Unpin Kombu for Python 3</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id40"> |
| <h3>Misc/Internal<a class="headerlink" href="#id40" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-6009] Switch off travis_wait for regular tests (#6600)</p></li> |
| <li><p>[AIRFLOW-6226] Always reset warnings in tests</p></li> |
| <li><p>[AIRFLOW-XXX] Remove cyclic imports and pylint hacks in Serialization (#6601)</p></li> |
| <li><p>[AIRFLOW-XXX] Bump npm from 6.4.1 to 6.13.4 in /airflow/www (#6815)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove executable permission from file</p></li> |
| <li><p>[AIRFLOW-XXX] Group AWS & Azure dependencies (old <code class="docutils literal notranslate"><span class="pre">[emr]</span></code> etc. extra still work)</p></li> |
| <li><p>[AIRFLOW-5487] Fix unused warning var (#6111)</p></li> |
| <li><p>[AIRFLOW-5925] Relax <code class="docutils literal notranslate"><span class="pre">funcsigs</span></code> and psutil version requirements (#6580)</p></li> |
| <li><p>[AIRFLOW-5740] Fix Transient failure in Slack test (#6407)</p></li> |
| <li><p>[AIRFLOW-6058] Running tests with pytest (#6472)</p></li> |
| <li><p>[AIRFLOW-6066] Added pre-commit checks for accidental debug stmts (#6662)</p></li> |
| <li><p>[AIRFLOW-6060] Improve conf_vars context manager (#6658)</p></li> |
| <li><p>[AIRFLOW-6044] Standardize the Code Structure in kube_pod_operator.py (#6639)</p></li> |
| <li><p>[AIRFLOW-4940] Simplify tests of DynamoDBToS3Operator (#6836)</p></li> |
| <li><p>[AIRFLOW-XXX] Update airflow-jira release management script (#6772)</p></li> |
| <li><p>[AIRFLOW-XXX] Add simple guidelines to unit test writing (#6846)</p></li> |
| <li><p>[AIRFLOW-6309] Fix stable build on Travis</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id41"> |
| <h3>Doc only changes<a class="headerlink" href="#id41" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-6211] Doc how to use conda for local virtualenv (#6766)</p></li> |
| <li><p>[AIRFLOW-5855] Fix broken reference in custom operator doc (#6508)</p></li> |
| <li><p>[AIRFLOW-5875] Fix typo in example_qubole_operator.py (#6525)</p></li> |
| <li><p>[AIRFLOW-5702] Fix common docstring issues (#6372)</p></li> |
| <li><p>[AIRFLOW-5640] Document and test <code class="docutils literal notranslate"><span class="pre">email</span></code> parameters of BaseOperator (#6315)</p></li> |
| <li><p>[AIRFLOW-XXX] Improve description OpenFaaS Hook (#6187)</p></li> |
| <li><p>[AIRFLOW-XXX] GSoD: How to make DAGs production ready (#6515)</p></li> |
| <li><p>[AIRFLOW-XXX] Use full command in examples (#5973)</p></li> |
| <li><p>[AIRFLOW-XXX] Update docs to accurately describe the precedence of remote and local logs (#5607)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix example "extras" field in mysql connect doc (#5285)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix wrong inline code highlighting in docs (#5309)</p></li> |
| <li><p>[AIRFLOW-XXX] Group executors in one section (#5834)</p></li> |
| <li><p>[AIRFLOW-XXX] Add task lifecycle diagram to documentation (#6762)</p></li> |
| <li><p>[AIRFLOW-XXX] Highlight code blocks (#6243)</p></li> |
| <li><p>[AIRFLOW-XXX] Documents about task_concurrency and pool (#5262)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix incorrect docstring parameter (#6649)</p></li> |
| <li><p>[AIRFLOW-XXX] Add link to XCom section in concepts.rst (#6791)</p></li> |
| <li><p>[AIRFLOW-XXX] Update kubernetes doc with correct path (#6774)</p></li> |
| <li><p>[AIRFLOW-XXX] Add information how to configure pytest runner (#6736)</p></li> |
| <li><p>[AIRFLOW-XXX] More GSOD improvements (#6585)</p></li> |
| <li><p>[AIRFLOW-XXX] Clarified a grammatically incorrect sentence (#6667)</p></li> |
| <li><p>[AIRFLOW-XXX] Add notice for Mesos Executor deprecation in docs (#6712)</p></li> |
| <li><p>[AIRFLOW-XXX] Update list of pre-commits (#6603)</p></li> |
| <li><p>[AIRFLOW-XXX] Updates to Breeze documentation from GSOD (#6285)</p></li> |
| <li><p>[AIRFLOW-XXX] Clarify daylight savings time behavior (#6324)</p></li> |
| <li><p>[AIRFLOW-XXX] GSoD: Adding 'Create a custom operator' doc (#6348)</p></li> |
| <li><p>[AIRFLOW-XXX] Add resources & links to CONTRIBUTING.rst (#6405)</p></li> |
| <li><p>[AIRFLOW-XXX] Update chat channel details from gitter to slack (#4149)</p></li> |
| <li><p>[AIRFLOW-XXX] Add logo info to readme (#6349)</p></li> |
| <li><p>[AIRFLOW-XXX] Fixed case problem with CONTRIBUTING.rst (#6329)</p></li> |
| <li><p>[AIRFLOW-XXX] Google Season of Docs updates to CONTRIBUTING doc (#6283)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-6-2019-10-28"> |
| <h2>Airflow 1.10.6, 2019-10-28<a class="headerlink" href="#airflow-1-10-6-2019-10-28" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id42"> |
| <h3>New Features<a class="headerlink" href="#id42" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4908] Implement BigQuery Hooks/Operators for update_dataset, patch_dataset and get_dataset (#5546)</p></li> |
| <li><p>[AIRFLOW-4741] Optionally report task errors to Sentry (#5407)</p></li> |
| <li><p>[AIRFLOW-4939] Add default_task_retries config (#5570)</p></li> |
| <li><p>[AIRFLOW-5508] Add config setting to limit which StatsD metrics are emitted (#6130)</p></li> |
| <li><p>[AIRFLOW-4222] Add cli autocomplete for bash & zsh (#5789)</p></li> |
| <li><p>[AIRFLOW-3871] Operators template fields can now render fields inside objects (#4743)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id43"> |
| <h3>Improvements<a class="headerlink" href="#id43" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5127] Gzip support for CassandraToGoogleCloudStorageOperator (#5738)</p></li> |
| <li><p>[AIRFLOW-5125] Add gzip support for AdlsToGoogleCloudStorageOperator (#5737)</p></li> |
| <li><p>[AIRFLOW-5124] Add gzip support for S3ToGoogleCloudStorageOperator (#5736)</p></li> |
| <li><p>[AIRFLOW-5653] Log AirflowSkipException in task instance log to make it clearer why tasks might be skipped (#6330)</p></li> |
| <li><p>[AIRFLOW-5343] Remove legacy SQLAlchmey pessimistic pool disconnect handling (#6034)</p></li> |
| <li><p>[AIRFLOW-5561] Relax httplib2 version required for gcp extra (#6194)</p></li> |
| <li><p>[AIRFLOW-5657] Update the upper bound for dill dependency (#6334)</p></li> |
| <li><p>[AIRFLOW-5292] Allow ECSOperator to tag tasks (#5891)</p></li> |
| <li><p>[AIRFLOW-4939] Simplify Code for Default Task Retries (#6233)</p></li> |
| <li><p>[AIRFLOW-5126] Read <code class="docutils literal notranslate"><span class="pre">aws_session_token</span></code> in extra_config of the aws hook (#6303)</p></li> |
| <li><p>[AIRFLOW-5636] Allow adding or overriding existing Operator Links (#6302)</p></li> |
| <li><p>[AIRFLOW-4965] Handle quote exceptions in GCP AI operators (v1.10) (#6304)</p></li> |
| <li><p>[AIRFLOW-3783] Speed up Redshift to S3 unload with HEADERs (#6309)</p></li> |
| <li><p>[AIRFLOW-3388] Add support to Array Jobs for AWS Batch Operator (#6153)</p></li> |
| <li><p>[AIRFLOW-4574] add option to provide private_key in SSHHook (#6104) (#6163)</p></li> |
| <li><p>[AIRFLOW-5530] Fix typo in AWS SQS sensors (#6012)</p></li> |
| <li><p>[AIRFLOW-5445] Reduce the required resources for the Kubernetes's sidecar (#6062)</p></li> |
| <li><p>[AIRFLOW-5443] Use alpine image in Kubernetes's sidecar (#6059)</p></li> |
| <li><p>[AIRFLOW-5344] Add --proxy-user parameter to SparkSubmitOperator (#5948)</p></li> |
| <li><p>[AIRFLOW-3888] HA for Hive metastore connection (#4708)</p></li> |
| <li><p>[AIRFLOW-5269] Reuse session in Scheduler Job from health endpoint (#5873)</p></li> |
| <li><p>[AIRFLOW-5153] Option to force delete non-empty BQ datasets (#5768)</p></li> |
| <li><p>[AIRFLOW-4443] Document LatestOnly behavior for external trigger (#5214)</p></li> |
| <li><p>[AIRFLOW-2891] Make DockerOperator container_name be templateable (#5696)</p></li> |
| <li><p>[AIRFLOW-2891] allow configurable docker_operator container name (#5689)</p></li> |
| <li><p>[AIRFLOW-4285] Update task dependency context definition and usage (#5079)</p></li> |
| <li><p>[AIRFLOW-5142] Fixed flaky Cassandra test (#5758)</p></li> |
| <li><p>[AIRFLOW-5218] Less polling of AWS Batch job status (#5825)</p></li> |
| <li><p>[AIRFLOW-4956] Fix LocalTaskJob heartbeat log spamming (#5589)</p></li> |
| <li><p>[AIRFLOW-3160] Load latest_dagruns asynchronously on home page (#5339)</p></li> |
| <li><p>[AIRFLOW-5560] Allow no confirmation on reset dags in <cite>airflow backfill</cite> command (#6195)</p></li> |
| <li><p>[AIRFLOW-5280] conn: Remove aws_default's default region name (#5879)</p></li> |
| <li><p>[AIRFLOW-5528] end_of_log_mark should not be a log record (#6159)</p></li> |
| <li><p>[AIRFLOW-5526] Update docs configuration due to migration of GCP docs (#6154)</p></li> |
| <li><p>[AIRFLOW-4835] Refactor operator render_template (#5461)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id44"> |
| <h3>Bug Fixes<a class="headerlink" href="#id44" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5459] Use a dynamic tmp location in Dataflow operator (#6078)</p></li> |
| <li><p>[Airflow 4923] Fix Databricks hook leaks API secret in logs (#5635)</p></li> |
| <li><p>[AIRFLOW-5133] Keep original env state in provide_gcp_credential_file (#5747)</p></li> |
| <li><p>[AIRFLOW-5497] Update docstring in <code class="docutils literal notranslate"><span class="pre">airflow/utils/dag_processing.py</span></code> (#6314)</p></li> |
| <li><p>Revert/and then rework "[AIRFLOW-4797] Improve performance and behaviour of zombie detection (#5511)" to improve performance (#5908)</p></li> |
| <li><p>[AIRFLOW-5634] Don't allow editing of DagModelView (#6308)</p></li> |
| <li><p>[AIRFLOW-4309] Remove Broken Dag error after Dag is deleted (#6102)</p></li> |
| <li><p>[AIRFLOW-5387] Fix "show paused" pagination bug (#6100)</p></li> |
| <li><p>[AIRFLOW-5489] Remove unneeded assignment of variable (#6106)</p></li> |
| <li><p>[AIRFLOW-5491] mark_tasks pydoc is incorrect (#6108)</p></li> |
| <li><p>[AIRFLOW-5492] added missing docstrings (#6107)</p></li> |
| <li><p>[AIRFLOW-5503] Fix tree view layout on HDPI screen (#6125)</p></li> |
| <li><p>[AIRFLOW-5481] Allow Deleting Renamed DAGs (#6101)</p></li> |
| <li><p>[AIRFLOW-3857] spark_submit_hook cannot kill driver pod in Kubernetes (#4678)</p></li> |
| <li><p>[AIRFLOW-4391] Fix tooltip for None-State Tasks in 'Recent Tasks' (#5909)</p></li> |
| <li><p>[AIRFLOW-5554] Require statsd 3.3.0 minimum (#6185)</p></li> |
| <li><p>[AIRFLOW-5306] Fix the display of links when they contain special characters (#5904)</p></li> |
| <li><p>[AIRFLOW-3705] Fix PostgresHook get_conn to use conn_name_attr (#5841)</p></li> |
| <li><p>[AIRFLOW-5581] Cleanly shutdown KubernetesJobWatcher for safe Scheduler shutdown on SIGTERM (#6237)</p></li> |
| <li><p>[AIRFLOW-5634] Don't allow disabled fields to be edited in DagModelView (#6307)</p></li> |
| <li><p>[AIRFLOW-4833] Allow to set Jinja env options in DAG declaration (#5943)</p></li> |
| <li><p>[AIRFLOW-5408] Fix env variable name in Kubernetes template (#6016)</p></li> |
| <li><p>[AIRFLOW-5102] Worker jobs should terminate themselves if they can't heartbeat (#6284)</p></li> |
| <li><p>[AIRFLOW-5572] Clear task reschedules when clearing task instances (#6217)</p></li> |
| <li><p>[AIRFLOW-5543] Fix tooltip disappears in tree and graph view (RBAC UI) (#6174)</p></li> |
| <li><p>[AIRFLOW-5444] Fix action_logging so that request.form for POST is logged (#6064)</p></li> |
| <li><p>[AIRFLOW-5484] fix PigCliHook has incorrect named parameter (#6112)</p></li> |
| <li><p>[AIRFLOW-5342] Fix MSSQL breaking task_instance db migration (#6014)</p></li> |
| <li><p>[AIRFLOW-5556] Add separate config for timeout from scheduler dag processing (#6186)</p></li> |
| <li><p>[AIRFLOW-4858] Deprecate "Historical convenience functions" in airflow.configuration (#5495) (#6144)</p></li> |
| <li><p>[AIRFLOW-774] Fix long-broken DAG parsing Statsd metrics (#6157)</p></li> |
| <li><p>[AIRFLOW-5419] Use <code class="docutils literal notranslate"><span class="pre">sudo</span></code> to kill cleared tasks when running with impersonation (#6026) (#6176)</p></li> |
| <li><p>[AIRFLOW-5537] Yamllint is not needed as dependency on host</p></li> |
| <li><p>[AIRFLOW-5536] Better handling of temporary output files</p></li> |
| <li><p>[AIRFLOW-5535] Fix name of VERBOSE parameter</p></li> |
| <li><p>[AIRFLOW-5519] Fix sql_to_gcs operator missing multi-level default args by adding apply_defaults decorator (#6146)</p></li> |
| <li><p>[AIRFLOW-5210] Make finding template files more efficient (#5815)</p></li> |
| <li><p>[AIRFLOW-5447] Scheduler stalls because second watcher thread in default args (#6129)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id45"> |
| <h3>Doc-only changes<a class="headerlink" href="#id45" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5574] Fix Google Analytics script loading (#6218)</p></li> |
| <li><p>[AIRFLOW-5588] Add Celery's architecture diagram (#6247)</p></li> |
| <li><p>[AIRFLOW-5521] Fix link to GCP documentation (#6150)</p></li> |
| <li><p>[AIRFLOW-5398] Update contrib example DAGs to context manager (#5998)</p></li> |
| <li><p>[AIRFLOW-5268] Apply same DAG naming conventions as in literature (#5874)</p></li> |
| <li><p>[AIRFLOW-5101] Fix inconsistent owner value in examples (#5712)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo - AWS DynamoDB Hook (#6319)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix Documentation for adding extra Operator Links (#6301)</p></li> |
| <li><p>[AIRFLOW-XXX] Add section on task lifecycle & correct casing in docs (#4681)</p></li> |
| <li><p>[AIRFLOW-XXX] Make it clear that 1.10.5 was not accidentally omitted from UPDATING.md (#6240)</p></li> |
| <li><p>[AIRFLOW-XXX] Improve format in code-block directives (#6242)</p></li> |
| <li><p>[AIRFLOW-XXX] Format Sendgrid docs (#6245)</p></li> |
| <li><p>[AIRFLOW-XXX] Update to new logo (#6066)</p></li> |
| <li><p>[AIRFLOW-XXX] Typo in FAQ - schedule_interval (#6291)</p></li> |
| <li><p>[AIRFLOW-XXX] Add message about breaking change in DAG#get_task_instances in 1.10.4 (#6226)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix incorrect units in docs for metrics using Timers (#6152)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix backtick issues in .rst files & Add Precommit hook (#6162)</p></li> |
| <li><p>[AIRFLOW-XXX] Update documentation about variables forcing answer (#6158)</p></li> |
| <li><p>[AIRFLOW-XXX] Add a third way to configure authorization (#6134)</p></li> |
| <li><p>[AIRFLOW-XXX] Add example of running pre-commit hooks on single file (#6143)</p></li> |
| <li><p>[AIRFLOW-XXX] Add information about default pool to docs (#6019)</p></li> |
| <li><p>[AIRFLOW-XXX] Make Breeze The default integration test environment (#6001)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id46"> |
| <h3>Misc/Internal<a class="headerlink" href="#id46" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5687] Upgrade pip to 19.0.2 in CI build pipeline (#6358) (#6361)</p></li> |
| <li><p>[AIRFLOW-5533] Fixed failing CRON build (#6167)</p></li> |
| <li><p>[AIRFLOW-5130] Use GOOGLE_APPLICATION_CREDENTIALS constant from library (#5744)</p></li> |
| <li><p>[AIRFLOW-5369] Adds interactivity to pre-commits (#5976)</p></li> |
| <li><p>[AIRFLOW-5531] Replace deprecated log.warn() with log.warning() (#6165)</p></li> |
| <li><p>[AIRFLOW-4686] Make dags Pylint compatible (#5753)</p></li> |
| <li><p>[AIRFLOW-4864] Remove calls to load_test_config (#5502)</p></li> |
| <li><p>[AIRFLOW-XXX] Pin version of mypy so we are stable over time (#6198)</p></li> |
| <li><p>[AIRFLOW-XXX] Add tests that got missed from #5127</p></li> |
| <li><p>[AIRFLOW-4928] Move config parses to class properties inside DagBag (#5557)</p></li> |
| <li><p>[AIRFLOW-5003] Making AWS Hooks pylint compatible (#5627)</p></li> |
| <li><p>[AIRFLOW-5580] Add base class for system test (#6229)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-5-2019-09-04"> |
| <h2>Airflow 1.10.5, 2019-09-04<a class="headerlink" href="#airflow-1-10-5-2019-09-04" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id47"> |
| <h3>New Features<a class="headerlink" href="#id47" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-1498] Add feature for users to add Google Analytics to Airflow UI (#5850)</p></li> |
| <li><p>[AIRFLOW-4074] Add option to add labels to Dataproc jobs (#5606)</p></li> |
| <li><p>[AIRFLOW-4846] Allow specification of an existing secret containing git credentials for init containers (#5475)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id48"> |
| <h3>Improvements<a class="headerlink" href="#id48" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5335] Update GCSHook methods so they need min IAM perms (#5939)</p></li> |
| <li><p>[AIRFLOW-2692] Allow AWS Batch Operator to use templates in job_name parameter (#3557)</p></li> |
| <li><p>[AIRFLOW-4768] Add Timeout parameter in example_gcp_video_intelligence (#5862)</p></li> |
| <li><p>[AIRFLOW-5165] Make Dataproc highly available (#5781)</p></li> |
| <li><p>[AIRFLOW-5139] Allow custom ES configs (#5760)</p></li> |
| <li><p>[AIRFLOW-5340] Fix GCP DLP example (#594)</p></li> |
| <li><p>[AIRFLOW-5211] Add pass_value to template_fields BigQueryValueCheckOperator (#5816)</p></li> |
| <li><p>[AIRFLOW-5113] Support icon url in slack web hook (#5724)</p></li> |
| <li><p>[AIRFLOW-4230] bigquery schema update options should be a list (#5766)</p></li> |
| <li><p>[AIRFLOW-1523] Clicking on Graph View should display related DAG run (#5866)</p></li> |
| <li><p>[AIRFLOW-5027] Generalized CloudWatch log grabbing for ECS and SageMaker operators (#5645)</p></li> |
| <li><p>[AIRFLOW-5244] Add all possible themes to default_webserver_config.py (#5849)</p></li> |
| <li><p>[AIRFLOW-5245] Add more metrics around the scheduler (#5853)</p></li> |
| <li><p>[AIRFLOW-5048] Improve display of Kubernetes resources (#5665)</p></li> |
| <li><p>[AIRFLOW-5284] Replace deprecated log.warn by log.warning (#5881)</p></li> |
| <li><p>[AIRFLOW-5276] Remove unused helpers from airflow.utils.helpers (#5878)</p></li> |
| <li><p>[AIRFLOW-4316] Support setting kubernetes_environment_variables config section from env var (#5668)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id49"> |
| <h3>Bug fixes<a class="headerlink" href="#id49" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5168] Fix Dataproc operators that failed in 1.10.4 (#5928)</p></li> |
| <li><p>[AIRFLOW-5136] Fix Bug with Incorrect template_fields in DataProc{*} Operators (#5751)</p></li> |
| <li><p>[AIRFLOW-5169] Pass GCP Project ID explicitly to StorageClient in GCSHook (#5783)</p></li> |
| <li><p>[AIRFLOW-5302] Fix bug in none_skipped Trigger Rule (#5902)</p></li> |
| <li><p>[AIRFLOW-5350] Fix bug in the num_retires field in BigQueryHook (#5955)</p></li> |
| <li><p>[AIRFLOW-5145] Fix rbac ui presents false choice to encrypt or not encrypt variable values (#5761)</p></li> |
| <li><p>[AIRFLOW-5104] Set default schedule for GCP Transfer operators (#5726)</p></li> |
| <li><p>[AIRFLOW-4462] Use datetime2 column types when using MSSQL backend (#5707)</p></li> |
| <li><p>[AIRFLOW-5282] Add default timeout on kubeclient & catch HTTPError (#5880)</p></li> |
| <li><p>[AIRFLOW-5315] TaskInstance not updating from DB when user changes executor_config (#5926)</p></li> |
| <li><p>[AIRFLOW-4013] Mark success/failed is picking all execution date (#5616)</p></li> |
| <li><p>[AIRFLOW-5152] Fix autodetect default value in GoogleCloudStorageToBigQueryOperator(#5771)</p></li> |
| <li><p>[AIRFLOW-5100] Airflow scheduler does not respect safe mode setting (#5757)</p></li> |
| <li><p>[AIRFLOW-4763] Allow list in DockerOperator.command (#5408)</p></li> |
| <li><p>[AIRFLOW-5260] Allow empty uri arguments in connection strings (#5855)</p></li> |
| <li><p>[AIRFLOW-5257] Fix ElasticSearch log handler errors when attempting to close logs (#5863)</p></li> |
| <li><p>[AIRFLOW-1772] Google Updated Sensor doesnt work with CRON expressions (#5730)</p></li> |
| <li><p>[AIRFLOW-5085] When you run kubernetes git-sync test from TAG, it fails (#5699)</p></li> |
| <li><p>[AIRFLOW-5258] ElasticSearch log handler, has 2 times of hours (%H and %I) in _clean_execution_dat (#5864)</p></li> |
| <li><p>[AIRFLOW-5348] Escape Label in deprecated chart view when set via JS (#5952)</p></li> |
| <li><p>[AIRFLOW-5357] Fix Content-Type for exported variables.json file (#5963)</p></li> |
| <li><p>[AIRFLOW-5109] Fix process races when killing processes (#5721)</p></li> |
| <li><p>[AIRFLOW-5240] Latest version of Kombu is breaking Airflow for py2</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id50"> |
| <h3>Misc/Internal<a class="headerlink" href="#id50" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5111] Remove apt-get upgrade from the Dockerfile (#5722)</p></li> |
| <li><p>[AIRFLOW-5209] Fix Documentation build (#5814)</p></li> |
| <li><p>[AIRFLOW-5083] Check licence image building can be faster and moved to before-install (#5695)</p></li> |
| <li><p>[AIRFLOW-5119] Cron job should always rebuild everything from scratch (#5733)</p></li> |
| <li><p>[AIRFLOW-5108] In the CI local environment long-running kerberos might fail sometimes (#5719)</p></li> |
| <li><p>[AIRFLOW-5092] Latest Python image should be pulled locally in force_pull_and_build (#5705)</p></li> |
| <li><p>[AIRFLOW-5225] Consistent licences can be added automatically for all JS files (#5827)</p></li> |
| <li><p>[AIRFLOW-5229] Add licence to all other file types (#5831)</p></li> |
| <li><p>[AIRFLOW-5227] Consistent licences for all .sql files (#5829)</p></li> |
| <li><p>[AIRFLOW-5161] Add pre-commit hooks to run static checks for only changed files (#5777)</p></li> |
| <li><p>[AIRFLOW-5159] Optimise checklicence image build (do not build if not needed) (#5774)</p></li> |
| <li><p>[AIRFLOW-5263] Show diff on failure of pre-commit checks (#5869)</p></li> |
| <li><p>[AIRFLOW-5204] Shell files should be checked with shellcheck and have identical licence (#5807)</p></li> |
| <li><p>[AIRFLOW-5233] Check for consistency in whitespace (tabs/eols) and common problems (#5835)</p></li> |
| <li><p>[AIRFLOW-5247] Getting all dependencies from NPM can be moved up in Dockerfile (#5870)</p></li> |
| <li><p>[AIRFLOW-5143] Corrupted rat.jar became part of the Docker image (#5759)</p></li> |
| <li><p>[AIRFLOW-5226] Consistent licences for all html JINJA templates (#5828)</p></li> |
| <li><p>[AIRFLOW-5051] Coverage is not properly reported in the new CI system (#5732)</p></li> |
| <li><p>[AIRFLOW-5239] Small typo and incorrect tests in CONTRIBUTING.md (#5844)</p></li> |
| <li><p>[AIRFLOW-5287] Checklicence base image is not pulled (#5886)</p></li> |
| <li><p>[AIRFLOW-5301] Some not-yet-available files from breeze are committed to master (#5901)</p></li> |
| <li><p>[AIRFLOW-5285] Pre-commit pylint runs over todo files (#5884)</p></li> |
| <li><p>[AIRFLOW-5288] Temporary container for static checks should be auto-removed (#5887)</p></li> |
| <li><p>[AIRFLOW-5326] Fix teething problems for Airflow breeze (#5933)</p></li> |
| <li><p>[AIRFLOW-5206] All .md files should have all common licence, TOC (where applicable) (#5809)</p></li> |
| <li><p>[AIRFLOW-5329] Easy way to add local files to docker (#5933)</p></li> |
| <li><p>[AIRFLOW-4027] Make experimental api tests more stateless (#4854)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id51"> |
| <h3>Doc-only changes<a class="headerlink" href="#id51" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-XXX] Fixed Azkaban link (#5865)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove duplicate lines from CONTRIBUTING.md (#5830)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix incorrect docstring parameter in SchedulerJob (#5729)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-4-2019-08-06"> |
| <h2>Airflow 1.10.4, 2019-08-06<a class="headerlink" href="#airflow-1-10-4-2019-08-06" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id52"> |
| <h3>New Features<a class="headerlink" href="#id52" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4811] Implement GCP Data Loss Prevention Hook and Operators (#5539)</p></li> |
| <li><p>[AIRFLOW-5035] Replace multiprocessing.Manager with a golang-"channel" style (#5615)</p></li> |
| <li><p>[AIRFLOW-4883] Kill hung file process managers (#5605)</p></li> |
| <li><p>[AIRFLOW-4929] Pretty print JSON Variables in UI (#5573)</p></li> |
| <li><p>[AIRFLOW-4884] Roll up import_errors in RBAC UI (#5516)</p></li> |
| <li><p>[AIRFLOW-4871] Allow creating DagRuns via RBAC UI (#5507)</p></li> |
| <li><p>[AIRFLOW-4591] Make default_pool a real pool (#5349)</p></li> |
| <li><p>[AIRFLOW-4844] Add optional is_paused_upon_creation argument to DAG (#5473)</p></li> |
| <li><p>[AIRFLOW-4456] Add sub-classable BaseBranchOperator (#5231)</p></li> |
| <li><p>[AIRFLOW-4343] Show warning in UI if scheduler is not running (#5127)</p></li> |
| <li><p>[AIRFLOW-4739] Add ability to arbitrarily define kubernetes worker pod labels (#5376)</p></li> |
| <li><p>[AIRFLOW-4348] Add GCP console link in BigQueryOperator (#5195)</p></li> |
| <li><p>[AIRFLOW-4306] Global operator extra links (#5094)</p></li> |
| <li><p>[AIRFLOW-4812] Add batch images annotation (#5433)</p></li> |
| <li><p>[AIRFLOW-4135] Add Google Cloud Build operator and hook (#5251)</p></li> |
| <li><p>[AIRFLOW-4781] Add the ability to specify ports in KubernetesPodOperator (#5410)</p></li> |
| <li><p>[AIRFLOW-4521] Pause dag also pause its subdags (#5283)</p></li> |
| <li><p>[AIRFLOW-4738] Enforce exampleinclude for example DAGs (#5375)</p></li> |
| <li><p>[AIRFLOW-4326] Airflow AWS SQS Operator (#5110)</p></li> |
| <li><p>[AIRFLOW-3729] Support <cite>DownwardAPI</cite> in env variables for KubernetesPodOperator (#4554)</p></li> |
| <li><p>[AIRFLOW-4585] Implement Kubernetes Pod Mutation Hook (#5359)</p></li> |
| <li><p>[AIRFLOW-161] New redirect route and extra links (#5059)</p></li> |
| <li><p>[AIRFLOW-4420] Backfill respects task_concurrency (#5221)</p></li> |
| <li><p>[AIRFLOW-4147] Add Operator to publish event to Redis (#4967)</p></li> |
| <li><p>[AIRFLOW-3359] Add option to pass customer encryption keys to Dataproc (#4200)</p></li> |
| <li><p>[AIRFLOW-4318] Create Google Cloud Translate Speech Operator (#5102)</p></li> |
| <li><p>[AIRFLOW-3960] Adds Google Cloud Speech operators (#4780)</p></li> |
| <li><p>[AIRFLOW-1501] Add GoogleCloudStorageDeleteOperator (#5230)</p></li> |
| <li><p>[AIRFLOW-3672] Add support for Mongo DB DNS Seedlist Connection Format (#4481)</p></li> |
| <li><p>[AIRFLOW-4397] add integrations docs manually for gcs sensors (#5204)</p></li> |
| <li><p>[AIRFLOW-4251] Instrument DagRun schedule delay (#5050)</p></li> |
| <li><p>[AIRFLOW-4118] instrument DagRun duration (#4946)</p></li> |
| <li><p>[AIRFLOW-4361] Fix flaky test_integration_run_dag_with_scheduler_failure (#5182)</p></li> |
| <li><p>[AIRFLOW-4361] Fix flaky test_integration_run_dag_with_scheduler_failure (#5140)</p></li> |
| <li><p>[AIRFLOW-4168] Create Google Cloud Video Intelligence Operators (#4985)</p></li> |
| <li><p>[AIRFLOW-4397] Add GCSUploadSessionCompleteSensor (#5166)</p></li> |
| <li><p>[AIRFLOW-4335] Add default num_retries to GCP connection (#5117)</p></li> |
| <li><p>[AIRFLOW-3808] Add cluster_fields to BigQueryHook's create_empty_table (#4654)</p></li> |
| <li><p>[AIRFLOW-4362] Fix test_execution_limited_parallelism (#5141)</p></li> |
| <li><p>[AIRFLOW-4307] Backfill respects concurrency limit (#5128)</p></li> |
| <li><p>[AIRFLOW-4268] Add MsSqlToGoogleCloudStorageOperator (#5077)</p></li> |
| <li><p>[AIRFLOW-4169] Add Google Cloud Vision Detect Operators (#4986)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix WS-2019-0032 (#5384)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix CVE-2019-11358 (#5197)</p></li> |
| <li><p>[AIRFLOW-XXX] Change allowed version of Jinja2 to fix CVE-2019-10906 (#5075)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="improvement"> |
| <h3>Improvement<a class="headerlink" href="#improvement" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5022] Fix DockerHook for registries with port numbers (#5644)</p></li> |
| <li><p>[AIRFLOW-4961] Insert TaskFail.duration as int match DB schema column type (#5593)</p></li> |
| <li><p>[AIRFLOW-5038] skip pod deleted log message when pod deletion is disabled (#5656)</p></li> |
| <li><p>[AIRFLOW-5067] Update pagination symbols (#5682)</p></li> |
| <li><p>[AIRFLOW-4981][AIRFLOW-4788] Always use pendulum DateTimes in task instance context (#5654)</p></li> |
| <li><p>[AIRFLOW-4880] Add success, failure and fail_on_empty params to SqlSensor (#5488)</p></li> |
| <li><p>[AIRFLOW-3617] Add gpu limits option in configurations for Kube executor and pod (#5643)</p></li> |
| <li><p>[AIRFLOW-4998] Run multiple queries in BigQueryOperator (#5619)</p></li> |
| <li><p>[AIRFLOW-4929] Improve display of JSON Variables in UI (#5641)</p></li> |
| <li><p>[AIRFLOW-4959] Add .hql support for the DataProcHiveOperator (#5591)</p></li> |
| <li><p>[AIRFLOW-4962] Fix Werkzeug v0.15 deprecation notice for DispatcherMiddleware import (#5595)</p></li> |
| <li><p>[AIRFLOW-4797] Improve performance and behaviour of zombie detection (#5511)</p></li> |
| <li><p>[AIRFLOW-4911] Silence the FORBIDDEN errors from the KubernetesExecutor (#5547)</p></li> |
| <li><p>[AIRFLOW-3495] Validate one of query and query_uri passed to DataProcSparkSqlOperator (#5510)</p></li> |
| <li><p>[AIRFLOW-4925] Improve css style for Variables Import file field (#5552)</p></li> |
| <li><p>[AIRFLOW-4906] Improve debugging for the SparkSubmitHook (#5542)</p></li> |
| <li><p>[AIRFLOW-4904] unittest.cfg name and path can be overridden by setting $AIRFLOW_TEST_CONFIG (#5540)</p></li> |
| <li><p>[AIRFLOW-4920] Use html.escape instead of cgi.escape to fix DeprecationWarning (#5551)</p></li> |
| <li><p>[AIRFLOW-4919] DataProcJobBaseOperator dataproc_*_properties templated (#5555)</p></li> |
| <li><p>[AIRFLOW-4478] Lazily instantiate default resources objects. (#5259)</p></li> |
| <li><p>[AIRFLOW-4564] AzureContainerInstance bugfixes and improvements (#5319)</p></li> |
| <li><p>[AIRFLOW-4237] Including Try Number of Task in Gantt Chart (#5037)</p></li> |
| <li><p>[AIRFLOW-4862] Allow directly using IP address as hostname for webserver logs (#5501)</p></li> |
| <li><p>[AIRFLOW-4857] Add templated fields to SlackWebhookOperator (#5490)</p></li> |
| <li><p>[AIRFLOW-3502] Add Celery config option for setting "pool" (#4308)</p></li> |
| <li><p>[AIRFLOW-3217] Button to toggle line wrapping in log and code views (#4277)</p></li> |
| <li><p>[AIRFLOW-4491] Add a "Jump to end" button for logs (#5266)</p></li> |
| <li><p>[AIRFLOW-4422] Pool utilization stats (#5453)</p></li> |
| <li><p>[AIRFLOW-4805] Add py_file as templated field in DataflowPythonOperator (#5451)</p></li> |
| <li><p>[AIRFLOW-4838] Surface Athena errors in AWSAthenaOperator (#5467)</p></li> |
| <li><p>[AIRFLOW-4831] conf.has_option no longer throws if section is missing. (#5455)</p></li> |
| <li><p>[AIRFLOW-4829] More descriptive exceptions for EMR sensors (#5452)</p></li> |
| <li><p>[AIRFLOW-4414] AWSAthenaOperator: Push QueryExecutionID to XCom (#5276)</p></li> |
| <li><p>[AIRFLOW-4791] add "schema" keyword arg to SnowflakeOperator (#5415)</p></li> |
| <li><p>[AIRFLOW-4759] Don't error when marking successful run as failed (#5435)</p></li> |
| <li><p>[AIRFLOW-4716] Instrument dag loading time duration (#5350)</p></li> |
| <li><p>[AIRFLOW-3958] Support list tasks as upstream in chain (#4779)</p></li> |
| <li><p>[AIRFLOW-4409] Prevent task duration break by null value (#5178)</p></li> |
| <li><p>[AIRFLOW-4418] Add "failed only" option to task modal (#5193)</p></li> |
| <li><p>[AIRFLOW-4740] Accept string <code class="docutils literal notranslate"><span class="pre">end_date</span></code> in DAG default_args (#5381)</p></li> |
| <li><p>[AIRFLOW-4423] Improve date handling in mysql to gcs operator. (#5196)</p></li> |
| <li><p>[AIRFLOW-4447] Display task duration as human friendly format in UI (#5218)</p></li> |
| <li><p>[AIRFLOW-4377] Remove needless object conversion in DAG.owner() (#5144)</p></li> |
| <li><p>[AIRFLOW-4766] Add autoscaling option for DataprocClusterCreateOperator (#5425)</p></li> |
| <li><p>[AIRFLOW-4795] Upgrade alembic to latest release. (#5411)</p></li> |
| <li><p>[AIRFLOW-4793] Add signature_name to mlengine operator (#5417)</p></li> |
| <li><p>[AIRFLOW-3211] Reattach to GCP Dataproc jobs upon Airflow restart (#4083)</p></li> |
| <li><p>[AIRFLOW-4750] Log identified zombie task instances (#5389)</p></li> |
| <li><p>[AIRFLOW-3870] STFPOperator: Update log level and return value (#4355)</p></li> |
| <li><p>[AIRFLOW-4759] Batch queries in set_state API. (#5403)</p></li> |
| <li><p>[AIRFLOW-2737] Restore original license header to airflow.api.auth.backend.kerberos_auth</p></li> |
| <li><p>[AIRFLOW-3635] Fix incorrect logic in delete_dag (introduced in PR#4406) (#4445)</p></li> |
| <li><p>[AIRFLOW-3599] Removed Dagbag from delete dag (#4406)</p></li> |
| <li><p>[AIRFLOW-4737] Increase and document celery queue name limit (#5383)</p></li> |
| <li><p>[AIRFLOW-4505] Correct Tag ALL for PY3 (#5275)</p></li> |
| <li><p>[AIRFLOW-4743] Add environment variables support to SSHOperator (#5385)</p></li> |
| <li><p>[AIRFLOW-4725] Fix setup.py PEP440 & Sphinx-PyPI-upload dependency (#5363)</p></li> |
| <li><p>[AIRFLOW-3370] Add stdout output options to Elasticsearch task log handler (#5048)</p></li> |
| <li><p>[AIRFLOW-4396] Provide a link to external Elasticsearch logs in UI. (#5164)</p></li> |
| <li><p>[AIRFLOW-1381] Allow setting host temporary directory in DockerOperator (#5369)</p></li> |
| <li><p>[AIRFLOW-4598] Task retries are not exhausted for K8s executor (#5347)</p></li> |
| <li><p>[AIRFLOW-4218] Support to Provide http args to K8executor while calling k8 Python client lib apis (#5060)</p></li> |
| <li><p>[AIRFLOW-4159] Add support for additional static pod labels for K8sExecutor (#5134)</p></li> |
| <li><p>[AIRFLOW-4720] Allow comments in .airflowignore files. (#5355)</p></li> |
| <li><p>[AIRFLOW-4486] Add AWS IAM authentication in MySqlHook (#5334)</p></li> |
| <li><p>[AIRFLOW-4417] Add AWS IAM authentication for PostgresHook (#5223)</p></li> |
| <li><p>[AIRFLOW-3990] Compile regular expressions. (#4813)</p></li> |
| <li><p>[AIRFLOW-4572] Rename prepare_classpath() to prepare_syspath() (#5328)</p></li> |
| <li><p>[AIRFLOW-3869] Raise consistent exception in AirflowConfigParser.getboolean (#4692)</p></li> |
| <li><p>[AIRFLOW-4571] Add headers to templated field for SimpleHttpOperator (#5326)</p></li> |
| <li><p>[AIRFLOW-3867] Rename GCP's subpackage (#4690)</p></li> |
| <li><p>[AIRFLOW-3725] Add private_key to bigquery_hook get_pandas_df (#4549)</p></li> |
| <li><p>[AIRFLOW-4546] Upgrade google-cloud-bigtable. (#5307)</p></li> |
| <li><p>[AIRFLOW-4519] Optimise operator classname sorting in views (#5282)</p></li> |
| <li><p>[AIRFLOW-4503] Support fully pig options (#5271)</p></li> |
| <li><p>[AIRFLOW-4468] add sql_alchemy_max_overflow parameter (#5249)</p></li> |
| <li><p>[AIRFLOW-4467] Add dataproc_jars to templated fields in Dataproc oper… (#5248)</p></li> |
| <li><p>[AIRFLOW-4381] Use get_direct_relative_ids get task relatives (#5147)</p></li> |
| <li><p>[AIRFLOW-3624] Add masterType parameter to MLEngineTrainingOperator (#4428)</p></li> |
| <li><p>[AIRFLOW-3143] Support Auto-Zone in DataprocClusterCreateOperator (#5169)</p></li> |
| <li><p>[AIRFLOW-3874] Improve BigQueryHook.run_with_configuration's location support (#4695)</p></li> |
| <li><p>[AIRFLOW-4399] Avoid duplicated os.path.isfile() check in models.dagbag (#5165)</p></li> |
| <li><p>[AIRFLOW-4031] Allow for key pair auth in snowflake hook (#4875)</p></li> |
| <li><p>[AIRFLOW-3901] add role as optional config parameter for SnowflakeHook (#4721)</p></li> |
| <li><p>[AIRFLOW-3455] add region in snowflake connector (#4285)</p></li> |
| <li><p>[AIRFLOW-4073] add template_ext for AWS Athena operator (#4907)</p></li> |
| <li><p>[AIRFLOW-4093] AWSAthenaOperator: Throw exception if job failed/cancelled/reach max retries (#4919)</p></li> |
| <li><p>[AIRFLOW-4356] Add extra RuntimeEnvironment keys to DataFlowHook (#5149)</p></li> |
| <li><p>[AIRFLOW-4337] Fix docker-compose deprecation warning in CI (#5119)</p></li> |
| <li><p>[AIRFLOW-3603] QuboleOperator: Remove SQLCommand from SparkCmd documentation (#4411)</p></li> |
| <li><p>[AIRFLOW-4328] Fix link to task instances from Pool page (#5124)</p></li> |
| <li><p>[AIRFLOW-4255] Make GCS Hook Backwards compatible (#5089)</p></li> |
| <li><p>[AIRFLOW-4103] Allow uppercase letters in dataflow job names (#4925)</p></li> |
| <li><p>[AIRFLOW-4255] Replace Discovery based api with client based for GCS (#5054)</p></li> |
| <li><p>[AIRFLOW-4311] Remove sleep in localexecutor (#5096)</p></li> |
| <li><p>[AIRFLOW-2836] Minor improvement-contrib.sensors.FileSensor (#3674)</p></li> |
| <li><p>[AIRFLOW-4104] Add type annotations to common classes. (#4926)</p></li> |
| <li><p>[AIRFLOW-3910] Raise exception explicitly in Connection.get_hook() (#4728)</p></li> |
| <li><p>[AIRFLOW-3322] Update QuboleHook to fetch args dynamically from qds_sdk (#4165)</p></li> |
| <li><p>[AIRFLOW-4565] instrument celery executor (#5321)</p></li> |
| <li><p>[AIRFLOW-4573] Import airflow_local_settings after prepare_classpath (#5330)</p></li> |
| <li><p>[AIRFLOW-4448] Don't bake ENV and _cmd into tmp config for non-sudo (#4050)</p></li> |
| <li><p>[AIRFLOW-4295] Make <code class="docutils literal notranslate"><span class="pre">method</span></code> attribute case insensitive in HttpHook (#5313)</p></li> |
| <li><p>[AIRFLOW-3703] Add dnsPolicy option for KubernetesPodOperator (#4520)</p></li> |
| <li><p>[AIRFLOW-3057] add prev_*_date_success to template context (#5372)</p></li> |
| <li><p>[AIRFLOW-4336] Stop showing entire GCS files bytes in log for gcs_download_operator (#5151)</p></li> |
| <li><p>[AIRFLOW-4528] Cancel DataProc task on timeout (#5293)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id53"> |
| <h3>Bug fixes<a class="headerlink" href="#id53" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-5089] Change version requirement on google-cloud-spanner to work around version incompatibility (#5703)</p></li> |
| <li><p>[AIRFLOW-4289] fix spark_binary argument being ignored in SparkSubmitHook (#5564)</p></li> |
| <li><p>[AIRFLOW-5075] Let HttpHook handle connections with empty host fields (#5686)</p></li> |
| <li><p>[AIRFLOW-4822] Fix bug where parent-dag task instances are wrongly cleared when using subdags (#5444)</p></li> |
| <li><p>[AIRFLOW-5050] Correctly delete FAB permission m2m objects in <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">sync_perms</span></code> (#5679)</p></li> |
| <li><p>[AIRFLOW-5030] fix env var expansion for config key contains __ (#5650)</p></li> |
| <li><p>[AIRFLOW-4590] changing log level to be proper library to suppress warning in WinRM (#5337)</p></li> |
| <li><p>[AIRFLOW-4451] Allow named tuples to be templated (#5673)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix bug where Kube pod limits were not applied (requests were, but not limits) (#5657)</p></li> |
| <li><p>[AIRFLOW-4775] Fix incorrect parameter order in GceHook (#5613)</p></li> |
| <li><p>[AIRFLOW-4995] Fix DB initialisation on MySQL >=8.0.16 (#5614)</p></li> |
| <li><p>[AIRFLOW-4934] Fix ProxyFix due to Werkzeug upgrade (#5563) (#5571)</p></li> |
| <li><p>[AIRFLOW-4136] fix key_file of hook is overwritten by SSHHook connection (#5558)</p></li> |
| <li><p>[AIRFLOW-4587] Replace self.conn with self.get_conn() in AWSAthenaHook (#5545)</p></li> |
| <li><p>[AIRFLOW-1740] Fix xcom creation and update via UI (#5530) (#5531)</p></li> |
| <li><p>[AIRFLOW-4900] Resolve incompatible version of Werkzeug (#5535)</p></li> |
| <li><p>[AIRFLOW-4510] Don't mutate default_args during DAG initialization (#5277)</p></li> |
| <li><p>[AIRFLOW-3360] Make the DAGs search respect other querystring parameters with url-search-params-polyfill for IE support (#5503)</p></li> |
| <li><p>[AIRFLOW-4896] Make KubernetesExecutorConfig's default args immutable (#5534)</p></li> |
| <li><p>[AIRFLOW-4494] Remove <code class="docutils literal notranslate"><span class="pre">shell=True</span></code> in DaskExecutor (#5273)</p></li> |
| <li><p>[AIRFLOW-4890] Fix Log link in TaskInstance's View for Non-RBAC (#5525)</p></li> |
| <li><p>[AIRFLOW-4892] Fix connection creation via UIs (#5527)</p></li> |
| <li><p>[AIRFLOW-4406] Fix a method name typo: NullFernet.decrpyt to decrypt (#5509)</p></li> |
| <li><p>[AIRFLOW-4849] Add gcp_conn_id to cloudsqldatabehook class to use correctly CloudSqlProxyRunner class (#5478)</p></li> |
| <li><p>[AIRFLOW-4769] Pass gcp_conn_id to BigtableHook (#5445)</p></li> |
| <li><p>[AIRFLOW-4524] Fix incorrect field names in view for Mark Success/Failure (#5486)</p></li> |
| <li><p>[AIRFLOW-3671] Remove arg <code class="docutils literal notranslate"><span class="pre">replace</span></code> of MongoToS3Operator from <code class="docutils literal notranslate"><span class="pre">kwargs</span></code> (#4480)</p></li> |
| <li><p>[AIRFLOW-4845] Fix bug where runAsUser 0 doesn't get set in k8s security context (#5474)</p></li> |
| <li><p>[AIRFLOW-4354] Fix exception in "between" date filter in classic UI (#5480)</p></li> |
| <li><p>[AIRFLOW-4587] Replace self.conn with self.get_conn() in AWSAthenaHook (#5462)</p></li> |
| <li><p>[AIRFLOW-4516] K8s runAsUser and fsGroup cannot be strings (#5429)</p></li> |
| <li><p>[AIRFLOW-4298] Stop Scheduler repeatedly warning "connection invalidated" (#5470)</p></li> |
| <li><p>[AIRFLOW-4559] JenkinsJobTriggerOperator bugfix (#5318)</p></li> |
| <li><p>[AIRFLOW-4841] Pin Sphinx AutoApi to 1.0.0 (#5468)</p></li> |
| <li><p>[AIRFLOW-4479] Include s3_overwrite kwarg in load_bytes method (#5312)</p></li> |
| <li><p>[AIRFLOW-3746] Fix DockerOperator missing container exit (#4583)</p></li> |
| <li><p>[AIRFLOW-4233] Remove Template Extension from Bq to GCS Operator (#5456)</p></li> |
| <li><p>[AIRFLOW-2141][AIRFLOW-3157][AIRFLOW-4170] Serialize non-str value by JSON when importing Variables (#4991)</p></li> |
| <li><p>[AIRFLOW-4826] Remove warning from <code class="docutils literal notranslate"><span class="pre">airflow</span> <span class="pre">resetdb</span></code> command (#5447)</p></li> |
| <li><p>[AIRFLOW-4148] Fix editing DagRuns when clicking state column (#5436)</p></li> |
| <li><p>[AIRFLOW-4455] dag_details broken for subdags in RBAC UI (#5234)</p></li> |
| <li><p>[AIRFLOW-2955] Fix kubernetes pod operator to set requests and limits on task pods (#4551)</p></li> |
| <li><p>[AIRFLOW-4459] Fix wrong DAG count in /home page when DAG count is zero (#5235)</p></li> |
| <li><p>[AIRFLOW-3876] AttributeError: module <cite>distutils</cite> has no attribute 'util'</p></li> |
| <li><p>[AIRFLOW-4146] Fix CgroupTaskRunner errors (#5224)</p></li> |
| <li><p>[AIRFLOW-4524] Fix bug with "Ignore *" toggles in RBAC mode (#5378)</p></li> |
| <li><p>[AIRFLOW-4765] Fix DataProcPigOperator execute method (#5426)</p></li> |
| <li><p>[AIRFLOW-4798] Obviate interdependencies for dagbag and TI tests (#5422)</p></li> |
| <li><p>[AIRFLOW-4800] Fix GKEClusterHook ctor calls (#5424)</p></li> |
| <li><p>[AIRFLOW-4799] Don't mutate self.env in BashOperator execute method (#5421)</p></li> |
| <li><p>[AIRFLOW-4393] Add retry logic when fetching pod status and/or logs in KubernetesPodOperator (#5284)</p></li> |
| <li><p>[AIRFLOW-4174] Fix HttpHook run with backoff (#5213)</p></li> |
| <li><p>[AIRFLOW-4463] Handle divide-by-zero errors in short retry intervals (#5243)</p></li> |
| <li><p>[AIRFLOW-2614] Speed up trigger_dag API call when lots of DAGs in system</p></li> |
| <li><p>[AIRFLOW-4756] add ti.state to ti.start_date as criteria for gantt (#5399)</p></li> |
| <li><p>[AIRFLOW-4760] Fix zip-packaged DAGs disappearing from DagBag when reloaded (#5404)</p></li> |
| <li><p>[AIRFLOW-4731] Fix GCS hook with google-storage-client 1.16 (#5368)</p></li> |
| <li><p>[AIRFLOW-3506] use match_phrase to query log_id in elasticsearch (#4342)</p></li> |
| <li><p>[AIRFLOW-4084] fix ElasticSearch log download (#5177)</p></li> |
| <li><p>[AIRFLOW-4501] Register pendulum datetime converter for sqla+pymysql (#5190)</p></li> |
| <li><p>[AIRFLOW-986] HiveCliHook ignores 'proxy_user' value in a connection's extra parameter (#5305)</p></li> |
| <li><p>[AIRFLOW-4442] fix hive_tblproperties in HiveToDruidTransfer (#5211)</p></li> |
| <li><p>[AIRFLOW-4557] Add gcp_conn_id parameter to get_sqlproxy_runner() of CloudSqlDatabaseHook (#5314)</p></li> |
| <li><p>[AIRFLOW-4545] Upgrade FAB to latest version (#4955)</p></li> |
| <li><p>[AIRFLOW-4492] Change Dataproc Cluster operators to poll Operations (#5269)</p></li> |
| <li><p>[AIRFLOW-4452] Webserver and Scheduler keep crashing because of slackclient update (#5225)</p></li> |
| <li><p>[AIRFLOW-4450] Fix request arguments in has_dag_access (#5220)</p></li> |
| <li><p>[AIRFLOW-4434] Support Impala with the HiveServer2Hook (#5206)</p></li> |
| <li><p>[AIRFLOW-3449] Write local dag parsing logs when remote logging enabled. (#5175)</p></li> |
| <li><p>[AIRFLOW-4300] Fix graph modal call when DAG has not yet run (#5185)</p></li> |
| <li><p>[AIRFLOW-4401] Use managers for Queue synchronization (#5200)</p></li> |
| <li><p>[AIRFLOW-3626] Fixed triggering DAGs contained within zip files (#4439)</p></li> |
| <li><p>[AIRFLOW-3720] Fix mismatch while comparing GCS and S3 files (#4766)</p></li> |
| <li><p>[AIRFLOW-4403] search by <code class="docutils literal notranslate"><span class="pre">dag_id</span></code> or <code class="docutils literal notranslate"><span class="pre">owners</span></code> in UI (#5184)</p></li> |
| <li><p>[AIRFLOW-4308] Fix TZ-loop around DST on Python 3.6+ (#5095)</p></li> |
| <li><p>[AIRFLOW-4324] fix DAG fuzzy search in RBAC UI (#5131)</p></li> |
| <li><p>[AIRFLOW-4297] Temporary hot fix on manage_slas() for 1.10.4 release (#5150)</p></li> |
| <li><p>[AIRFLOW-4299] Upgrade to Celery 4.3.0 to fix crashing workers (#5116)</p></li> |
| <li><p>[AIRFLOW-4291] Correctly render doc_md in DAG graph page (#5121)</p></li> |
| <li><p>[AIRFLOW-4310] Fix incorrect link on Dag Details page (#5122)</p></li> |
| <li><p>[AIRFLOW-4331] Correct filter for Null-state runs from Dag Detail page (#5123)</p></li> |
| <li><p>[AIRFLOW-4294] Fix missing dag & task runs in UI dag_id contains a dot (#5111)</p></li> |
| <li><p>[AIRFLOW-4332] Upgrade sqlalchemy to remove security Vulnerability (#5113)</p></li> |
| <li><p>[AIRFLOW-4312] Add template_fields & template_ext to BigQueryCheckO… (#5097)</p></li> |
| <li><p>[AIRFLOW-4293] Fix downgrade in d4ecb8fbee3_add_schedule_interval_to_dag.py (#5086)</p></li> |
| <li><p>[AIRFLOW-4267] Fix TI duration in Graph View (#5071)</p></li> |
| <li><p>[AIRFLOW-4163] IntervalCheckOperator supports relative diff and not ignore 0 (#4983)</p></li> |
| <li><p>[AIRFLOW-3938] QuboleOperator Fixes and Support for SqlCommand (#4832)</p></li> |
| <li><p>[AIRFLOW-2903] Change default owner to <code class="docutils literal notranslate"><span class="pre">airflow</span></code> (#4151)</p></li> |
| <li><p>[AIRFLOW-4136] Fix overwrite of key_file by constructor (#5155)</p></li> |
| <li><p>[AIRFLOW-3241] Remove Invalid template ext in GCS Sensors (#4076)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id54"> |
| <h3>Misc/Internal<a class="headerlink" href="#id54" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4338] Change k8s pod_request_factory to use yaml safe_load (#5120)</p></li> |
| <li><p>[AIRFLOW-4869] Reorganize sql to gcs operators. (#5504)</p></li> |
| <li><p>[AIRFLOW-5021] move gitpython into setup_requires (#5640)</p></li> |
| <li><p>[AIRFLOW-4583] Fixes type error in GKEPodOperator (#5612)</p></li> |
| <li><p>[AIRFLOW-4116] Dockerfile now supports CI image build on DockerHub (#4937)</p></li> |
| <li><p>[AIRFLOW-4115] Multi-staging Airflow Docker image (#4936)</p></li> |
| <li><p>[AIRFLOW-4963] Avoid recreating task context (#5596)</p></li> |
| <li><p>[AIRFLOW-4865] Add context manager to set temporary config values in tests. (#5569)</p></li> |
| <li><p>[AIRFLOW-4937] Fix lodash security issue with version below 4.17.13 (#5572) (used only in build-pipeline, not runtime)</p></li> |
| <li><p>[AIRFLOW-4868] Fix typo in kubernetes/docker/build.sh (#5505)</p></li> |
| <li><p>[AIRFLOW-4211] Add tests for WebHDFSHook (#5015)</p></li> |
| <li><p>[AIRFLOW-4320] Add tests for SegmentTrackEventOperator (#5104)</p></li> |
| <li><p>[AIRFLOW-4319] Add tests for Bigquery related Operators (#5101)</p></li> |
| <li><p>[AIRFLOW-4014] Change DatastoreHook and add tests (#4842)</p></li> |
| <li><p>[AIRFLOW-4322] Add test for VerticaOperator (#5107)</p></li> |
| <li><p>[AIRFLOW-4323] Add 2 tests for WinRMOperator (#5108)</p></li> |
| <li><p>[AIRFLOW-3677] Improve CheckOperator test coverage (#4756)</p></li> |
| <li><p>[AIRFLOW-4659] Fix pylint problems for api module (#5398)</p></li> |
| <li><p>[AIRFLOW-4358] Speed up test_jobs by not running tasks (#5162)</p></li> |
| <li><p>[AIRFLOW-4394] Don't test behaviour of BackfillJob from CLI tests (#5160)</p></li> |
| <li><p>[AIRFLOW-3471] Move XCom out of models.py (#4629)</p></li> |
| <li><p>[AIRFLOW-4379] Remove duplicate code & Add validation in gcs_to_gcs.py (#5145)</p></li> |
| <li><p>[AIRFLOW-4259] Move models out of models.py (#5056)</p></li> |
| <li><p>[AIRFLOW-XXX] Speed up building of Cassanda module on Travis (#5233)</p></li> |
| <li><p>[AIRFLOW-4535] Break jobs.py into multiple files (#5303)</p></li> |
| <li><p>[AIRFLOW-1464] Batch update task_instance state (#5323)</p></li> |
| <li><p>[AIRFLOW-4554] Test for sudo command, add some other test docs (#5310)</p></li> |
| <li><p>[AIRFLOW-4419] Refine concurrency check in scheduler (#5194)</p></li> |
| <li><p>[AIRFLOW-4269] Minor acceleration of jobs._process_task_instances() (#5076)</p></li> |
| <li><p>[AIRFLOW-4341] Remove <code class="docutils literal notranslate"><span class="pre">View.render()</span></code> already exists in fab.BaseView (#5125)</p></li> |
| <li><p>[AIRFLOW-4342] Use @cached_property instead of re-implementing it each time (#5126)</p></li> |
| <li><p>[AIRFLOW-4256] Remove noqa from migrations (#5055)</p></li> |
| <li><p>[AIRFLOW-4034] Remove unnecessary string formatting with <code class="docutils literal notranslate"><span class="pre">**locals()</span></code> (#4861)</p></li> |
| <li><p>[AIRFLOW-3944] Remove code smells (#4762)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id55"> |
| <h3>Doc-only changes<a class="headerlink" href="#id55" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-XXX] Add missing doc for annotations param of KubernetesPodOperator (#5666)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typos in CONTRIBUTING.md (#5626)</p></li> |
| <li><p>[AIRFLOW-XXX] Correct BaseSensorOperator docs (#5562)</p></li> |
| <li><p>[AIRFLOW-4926] Fix example dags where its start_date is datetime.utcnow() (#5553)</p></li> |
| <li><p>[AIRFLOW-4860] Remove Redundant Information in Example Dags (#5497)</p></li> |
| <li><p>[AIRFLOW-4767] Fix errors in the documentation of Dataproc Operator (#5487)</p></li> |
| <li><p>[AIRFLOW-1684] Branching based on XCom variable (Docs) (#4365)</p></li> |
| <li><p>[AIRFLOW-3341] FAQ return DAG object example (#4605)</p></li> |
| <li><p>[AIRFLOW-4433] Add missing type in DockerOperator doc string (#5205)</p></li> |
| <li><p>[AIRFLOW-4321] Replace incorrect info of Max Size limit of GCS Object Size (#5106)</p></li> |
| <li><p>[AIRFLOW-XXX] Add information about user list (#5341)</p></li> |
| <li><p>[AIRFLOW-XXX] Clarify documentation related to autodetect parameter in GCS_to_BQ Op (#5294)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove mention of pytz compatibility from timezone documentation (#5316)</p></li> |
| <li><p>[AIRFLOW-XXX] Add missing docs for GoogleCloudStorageDeleteOperator (#5274)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove incorrect note about Scopes of GCP connection (#5242)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix mistakes in docs of Dataproc operators (#5192)</p></li> |
| <li><p>[AIRFLOW-XXX] Link to correct class for timedelta in macros.rst (#5226)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Kamil as committer (#5216)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Joshua and Kevin as committer (#5207)</p></li> |
| <li><p>[AIRFLOW-XXX] Reduce log spam in tests (#5174)</p></li> |
| <li><p>[AIRFLOW-XXX] Speed up tests for PythonSensor (#5158)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Bas Harenslak to committer list (#5157)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Jarek Potiuk to committer list (#5132)</p></li> |
| <li><p>[AIRFLOW-XXX] Update docstring for SchedulerJob (#5105)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix docstrings for CassandraToGoogleCloudStorageOperator (#5103)</p></li> |
| <li><p>[AIRFLOW-XXX] update SlackWebhookHook and SlackWebhookOperator docstring (#5074)</p></li> |
| <li><p>[AIRFLOW-XXX] Ignore Python files under node_modules in docs (#5063)</p></li> |
| <li><p>[AIRFLOW-XXX] Build a universal wheel with LICNESE files (#5052)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix docstrings of SQSHook (#5099)</p></li> |
| <li><p>[AIRFLOW-XXX] Use Py3.7 on readthedocs</p></li> |
| <li><p>[AIRFLOW-4446] Fix typos (#5217)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-3-2019-04-09"> |
| <h2>Airflow 1.10.3, 2019-04-09<a class="headerlink" href="#airflow-1-10-3-2019-04-09" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="new-feature"> |
| <h3>New Feature<a class="headerlink" href="#new-feature" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4232] Add <code class="docutils literal notranslate"><span class="pre">none_skipped</span></code> trigger rule (#5032)</p></li> |
| <li><p>[AIRFLOW-3971] Add Google Cloud Natural Language operators (#4980)</p></li> |
| <li><p>[AIRFLOW-4069] Add Opsgenie Alert Hook and Operator (#4903)</p></li> |
| <li><p>[AIRFLOW-3552] Fix encoding issue in ImapAttachmentToS3Operator (#5040)</p></li> |
| <li><p>[AIRFLOW-3552] Add ImapAttachmentToS3Operator (#4476)</p></li> |
| <li><p>[AIRFLOW-1526] Add dingding hook and operator (#4895)</p></li> |
| <li><p>[AIRFLOW-3490] Add BigQueryHook's Ability to Patch Table/View (#4299)</p></li> |
| <li><p>[AIRFLOW-3918] Add SSH private-key support to git-sync for KubernetesExecutor (#4777)</p></li> |
| <li><p>[AIRFLOW-3659] Create Google Cloud Transfer Service Operators (#4792)</p></li> |
| <li><p>[AIRFLOW-3939] Add Google Cloud Translate operator (#4755)</p></li> |
| <li><p>[AIRFLOW-3541] Add Avro logical type conversion to bigquery hook (#4553)</p></li> |
| <li><p>[AIRFLOW-4106] instrument staving tasks in pool (#4927)</p></li> |
| <li><p>[AIRFLOW-2568] Azure Container Instances operator (#4121)</p></li> |
| <li><p>[AIRFLOW-4107] instrument executor (#4928)</p></li> |
| <li><p>[AIRFLOW-4033] record stats of task duration (#4858)</p></li> |
| <li><p>[AIRFLOW-3892] Create Redis pub sub sensor (#4712)</p></li> |
| <li><p>[AIRFLOW-4124] add get_table and get_table_location in aws_glue_hook and tests (#4942)</p></li> |
| <li><p>[AIRFLOW-1262] Adds missing docs for email configuration (#4557)</p></li> |
| <li><p>[AIRFLOW-3701] Add Google Cloud Vision Product Search operators (#4665)</p></li> |
| <li><p>[AIRFLOW-3766] Add support for kubernetes annotations (#4589)</p></li> |
| <li><p>[AIRFLOW-3741] Add extra config to Oracle hook (#4584)</p></li> |
| <li><p>[AIRFLOW-1262] Allow configuration of email alert subject and body (#2338)</p></li> |
| <li><p>[AIRFLOW-2985] Operators for S3 object copying/deleting (#3823)</p></li> |
| <li><p>[AIRFLOW-2993] s3_to_sftp and sftp_to_s3 operators (#3828)</p></li> |
| <li><p>[AIRFLOW-3799] Add compose method to GoogleCloudStorageHook (#4641)</p></li> |
| <li><p>[AIRFLOW-3218] add support for poking a whole DAG (#4058)</p></li> |
| <li><p>[AIRFLOW-3315] Add ImapAttachmentSensor (#4161)</p></li> |
| <li><p>[AIRFLOW-3556] Add cross join set dependency function (#4356)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id56"> |
| <h3>Improvement<a class="headerlink" href="#id56" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-3823] Exclude branch's downstream tasks from the tasks to skip (#4666)</p></li> |
| <li><p>[AIRFLOW-3274] Add run_as_user and fs_group options for Kubernetes (#4648)</p></li> |
| <li><p>[AIRFLOW-4247] Template Region on the DataprocOperators (#5046)</p></li> |
| <li><p>[AIRFLOW-4008] Add envFrom for Kubernetes Executor (#4952)</p></li> |
| <li><p>[AIRFLOW-3947] Flash msg for no DAG-level access error (#4767)</p></li> |
| <li><p>[AIRFLOW-3287] Moving database clean-up code into the CoreTest.tearDown() (#4122)</p></li> |
| <li><p>[AIRFLOW-4058] Name models test file to get automatically picked up (#4901)</p></li> |
| <li><p>[AIRFLOW-3830] Remove DagBag from /dag_details (#4831)</p></li> |
| <li><p>[AIRFLOW-3596] Clean up undefined template variables. (#4401)</p></li> |
| <li><p>[AIRFLOW-3573] Remove DagStat table (#4378)</p></li> |
| <li><p>[AIRFLOW-3623] Fix bugs in Download task logs (#5005)</p></li> |
| <li><p>[AIRFLOW-4173] Improve SchedulerJob.process_file() (#4993)</p></li> |
| <li><p>[AIRFLOW-3540] Warn if old airflow.cfg file is found (#5006)</p></li> |
| <li><p>[AIRFLOW-4000] Return response when no file (#4822)</p></li> |
| <li><p>[AIRFLOW-3383] Rotate fernet keys. (#4225)</p></li> |
| <li><p>[AIRFLOW-3003] Pull the krb5 image instead of building (#3844)</p></li> |
| <li><p>[AIRFLOW-3862] Check types with mypy. (#4685)</p></li> |
| <li><p>[AIRFLOW-251] Add option SQL_ALCHEMY_SCHEMA parameter to specify schema for metadata (#4199)</p></li> |
| <li><p>[AIRFLOW-1814] Temple PythonOperator {op_args,op_kwargs} fields (#4691)</p></li> |
| <li><p>[AIRFLOW-3730] Standarization use of logs mechanisms (#4556)</p></li> |
| <li><p>[AIRFLOW-3770] Validation of documentation on CI] (#4593)</p></li> |
| <li><p>[AIRFLOW-3866] Run docker-compose pull silently in CI (#4688)</p></li> |
| <li><p>[AIRFLOW-3685] Move licence header check (#4497)</p></li> |
| <li><p>[AIRFLOW-3670] Add stages to Travis build (#4477)</p></li> |
| <li><p>[AIRFLOW-3937] KubernetesPodOperator support for envFrom configMapRef and secretRef (#4772)</p></li> |
| <li><p>[AIRFLOW-3408] Remove outdated info from Systemd Instructions (#4269)</p></li> |
| <li><p>[AIRFLOW-3202] add missing documentation for AWS hooks/operator (#4048)</p></li> |
| <li><p>[AIRFLOW-3908] Add more Google Cloud Vision operators (#4791)</p></li> |
| <li><p>[AIRFLOW-2915] Add example DAG for GoogleCloudStorageToBigQueryOperator (#3763)</p></li> |
| <li><p>[AIRFLOW-3062] Add Qubole in integration docs (#3946)</p></li> |
| <li><p>[AIRFLOW-3288] Add SNS integration (#4123)</p></li> |
| <li><p>[AIRFLOW-3148] Remove unnecessary arg "parameters" in RedshiftToS3Transfer (#3995)</p></li> |
| <li><p>[AIRFLOW-3049] Add extra operations for Mongo hook (#3890)</p></li> |
| <li><p>[AIRFLOW-3559] Add missing options to DatadogHook. (#4362)</p></li> |
| <li><p>[AIRFLOW-1191] Simplify override of spark submit command. (#4360)</p></li> |
| <li><p>[AIRFLOW-3155] Add ability to filter by a last modified time in GCS Operator (#4008)</p></li> |
| <li><p>[AIRFLOW-2864] Fix docstrings for SubDagOperator (#3712)</p></li> |
| <li><p>[AIRFLOW-4062] Improve docs on install extra package commands (#4966)</p></li> |
| <li><p>[AIRFLOW-3743] Unify different methods of working out AIRFLOW_HOME (#4705)</p></li> |
| <li><p>[AIRFLOW-4002] Option to open debugger on errors in <cite>airflow test</cite>. (#4828)</p></li> |
| <li><p>[AIRFLOW-3997] Extend Variable.get so it can return None when var not found (#4819)</p></li> |
| <li><p>[AIRFLOW-4009] Fix docstring issue in GCSToBQOperator (#4836)</p></li> |
| <li><p>[AIRFLOW-3980] Unify logger (#4804)</p></li> |
| <li><p>[AIRFLOW-4076] Correct port type of beeline_default in init_db (#4908)</p></li> |
| <li><p>[AIRFLOW-4046] Add validations for poke_interval & timeout for Sensor (#4878)</p></li> |
| <li><p>[AIRFLOW-3744] Abandon the use of obsolete aliases of methods (#4568)</p></li> |
| <li><p>[AIRFLOW-3865] Add API endpoint to get Python code of dag by id (#4687)</p></li> |
| <li><p>[AIRFLOW-3516] Support to create k8 worker pods in batches (#4434)</p></li> |
| <li><p>[AIRFLOW-2843] Add flag in ExternalTaskSensor to check if external DAG/task exists (#4547)</p></li> |
| <li><p>[AIRFLOW-2224] Add support CSV files in MySqlToGoogleCloudStorageOperator (#4738)</p></li> |
| <li><p>[AIRFLOW-3895] GoogleCloudStorageHook/Op create_bucket takes optional resource params (#4717)</p></li> |
| <li><p>[AIRFLOW-3950] Improve AirflowSecurityManager.update_admin_perm_view (#4774)</p></li> |
| <li><p>[AIRFLOW-4006] Make better use of Set in AirflowSecurityManager (#4833)</p></li> |
| <li><p>[AIRFLOW-3917] Specify alternate kube config file/context when running out of cluster (#4859)</p></li> |
| <li><p>[AIRFLOW-3911] Change Harvesting DAG parsing results to DEBUG log level (#4729)</p></li> |
| <li><p>[AIRFLOW-3584] Use ORM DAGs for index view. (#4390)</p></li> |
| <li><p>[AIRFLOW-2821] Refine Doc "Plugins" (#3664)</p></li> |
| <li><p>[AIRFLOW-3561] Improve queries (#4368)</p></li> |
| <li><p>[AIRFLOW-3600] Remove dagbag from trigger (#4407)</p></li> |
| <li><p>[AIRFLOW-3713] Updated documentation for GCP optional project_id (#4541)</p></li> |
| <li><p>[AIRFLOW-2767] Upgrade gunicorn to 19.5.0 to avoid moderate-severity CVE (#4795)</p></li> |
| <li><p>[AIRFLOW-3795] provide_context param is now used (#4735)</p></li> |
| <li><p>[AIRFLOW-4012] Upgrade tabulate to 0.8.3 (#4838)</p></li> |
| <li><p>[AIRFLOW-3623] Support download logs by attempts from UI (#4425)</p></li> |
| <li><p>[AIRFLOW-2715] Use region setting when launching Dataflow templates (#4139)</p></li> |
| <li><p>[AIRFLOW-3932] Update unit tests and documentation for safe mode flag. (#4760)</p></li> |
| <li><p>[AIRFLOW-3932] Optionally skip dag discovery heuristic. (#4746)</p></li> |
| <li><p>[AIRFLOW-3258] K8S executor environment variables section. (#4627)</p></li> |
| <li><p>[AIRFLOW-3931] set network, subnetwork when launching dataflow template (#4744)</p></li> |
| <li><p>[AIRFLOW-4095] Add template_fields for S3CopyObjectOperator & S3DeleteObjectsOperator (#4920)</p></li> |
| <li><p>[AIRFLOW-2798] Remove needless code from models.py</p></li> |
| <li><p>[AIRFLOW-3731] Constrain mysqlclient to <1.4 (#4558)</p></li> |
| <li><p>[AIRFLOW-3139] include parameters into log.info in SQL operators, if any (#3986)</p></li> |
| <li><p>[AIRFLOW-3174] Refine Docstring for SQL Operators & Hooks (#4043)</p></li> |
| <li><p>[AIRFLOW-3933] Fix various typos (#4747)</p></li> |
| <li><p>[AIRFLOW-3905] Allow using "parameters" in SqlSensor (#4723)</p></li> |
| <li><p>[AIRFLOW-2761] Parallelize enqueue in celery executor (#4234)</p></li> |
| <li><p>[AIRFLOW-3540] Respect environment config when looking up config file. (#4340)</p></li> |
| <li><p>[AIRFLOW-2156] Parallelize Celery Executor task state fetching (#3830)</p></li> |
| <li><p>[AIRFLOW-3702] Add backfill option to run backwards (#4676)</p></li> |
| <li><p>[AIRFLOW-3821] Add replicas logic to GCP SQL example DAG (#4662)</p></li> |
| <li><p>[AIRFLOW-3547] Fixed Jinja templating in SparkSubmitOperator (#4347)</p></li> |
| <li><p>[AIRFLOW-3647] Add archives config option to SparkSubmitOperator (#4467)</p></li> |
| <li><p>[AIRFLOW-3802] Updated documentation for HiveServer2Hook (#4647)</p></li> |
| <li><p>[AIRFLOW-3817] Corrected task ids returned by BranchPythonOperator to match the dummy operator ids (#4659)</p></li> |
| <li><p>[AIRFLOW-3782] Clarify docs around celery worker_autoscale in default_airflow.cfg (#4609)</p></li> |
| <li><p>[AIRFLOW-1945] Add Autoscale config for Celery workers (#3989)</p></li> |
| <li><p>[AIRFLOW-3590] Change log message of executor exit status (#4616)</p></li> |
| <li><p>[AIRFLOW-3591] Fix start date, end date, duration for rescheduled tasks (#4502)</p></li> |
| <li><p>[AIRFLOW-3709] Validate <cite>allowed_states</cite> for ExternalTaskSensor (#4536)</p></li> |
| <li><p>[AIRFLOW-3522] Add support for sending Slack attachments (#4332)</p></li> |
| <li><p>[AIRFLOW-3569] Add "Trigger DAG" button in DAG page (/www only) (#4373)</p></li> |
| <li><p>[AIRFLOW-3569] Add "Trigger DAG" button in DAG page (/www_rbac only) (#4373)</p></li> |
| <li><p>[AIRFLOW-3044] Dataflow operators accept templated job_name param (#3887)</p></li> |
| <li><p>[AIRFLOW-3023] Fix docstring datatypes</p></li> |
| <li><p>[AIRFLOW-2928] Use uuid4 instead of uuid1 (#3779)</p></li> |
| <li><p>[AIRFLOW-2988] Run specifically python2 for dataflow (#3826)</p></li> |
| <li><p>[AIRFLOW-3697] Vendorize nvd3 and slugify (#4513)</p></li> |
| <li><p>[AIRFLOW-3692] Remove ENV variables to avoid GPL (#4506)</p></li> |
| <li><p>[AIRFLOW-3907] Upgrade flask and set cookie security flags. (#4725)</p></li> |
| <li><p>[AIRFLOW-3698] Add documentation for AWS Connection (#4514)</p></li> |
| <li><p>[AIRFLOW-3616][AIRFLOW-1215] Add aliases for schema with underscore (#4523)</p></li> |
| <li><p>[AIRFLOW-3375] Support returning multiple tasks with BranchPythonOperator (#4215)</p></li> |
| <li><p>[AIRFLOW-3742] Fix handling of "fallback" for AirflowConfigParsxer.getint/boolean (#4674)</p></li> |
| <li><p>[AIRFLOW-3742] Respect the <cite>fallback</cite> arg in airflow.configuration.get (#4567)</p></li> |
| <li><p>[AIRFLOW-3789] Fix flake8 3.7 errors. (#4617)</p></li> |
| <li><p>[AIRFLOW-3602] Improve ImapHook handling of retrieving no attachments (#4475)</p></li> |
| <li><p>[AIRFLOW-3631] Update flake8 and fix lint. (#4436)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id57"> |
| <h3>Bug fixes<a class="headerlink" href="#id57" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4248] Fix <cite>FileExistsError</cite> makedirs race in file_processor_handler (#5047)</p></li> |
| <li><p>[AIRFLOW-4240] State-changing actions should be POST requests (#5039)</p></li> |
| <li><p>[AIRFLOW-4246] Flask-Oauthlib needs downstream dependencies pinning due to breaking changes (#5045)</p></li> |
| <li><p>[AIRFLOW-3887] Downgrade dagre-d3 to 0.4.18 (#4713)</p></li> |
| <li><p>[AIRFLOW-3419] Fix S3Hook.select_key on Python3 (#4970)</p></li> |
| <li><p>[AIRFLOW-4127] Correct AzureContainerInstanceHook._get_instance_view's return (#4945)</p></li> |
| <li><p>[AIRFLOW-4172] Fix changes for driver class path option in Spark Submit (#4992)</p></li> |
| <li><p>[AIRFLOW-3615] Preserve case of UNIX socket paths in Connections (#4591)</p></li> |
| <li><p>[AIRFLOW-3417] ECSOperator: pass platformVersion only for FARGATE launch type (#4256)</p></li> |
| <li><p>[AIRFLOW-3884] Fixing doc checker, no warnings allowed anymore and fixed the current… (#4702)</p></li> |
| <li><p>[AIRFLOW-2652] implement / enhance baseOperator deepcopy</p></li> |
| <li><p>[AIRFLOW-4001] Update docs about how to run tests (#4826)</p></li> |
| <li><p>[AIRFLOW-3699] Speed up Flake8 (#4515)</p></li> |
| <li><p>[AIRFLOW-4160] Fix redirecting of 'Trigger Dag' Button in DAG Page (#4982)</p></li> |
| <li><p>[AIRFLOW-3650] Skip running on mysql for the flaky test (#4457)</p></li> |
| <li><p>[AIRFLOW-3423] Fix mongo hook to work with anonymous access (#4258)</p></li> |
| <li><p>[AIRFLOW-3982] Fix race condition in CI test (#4968)</p></li> |
| <li><p>[AIRFLOW-3982] Update DagRun state based on its own tasks (#4808)</p></li> |
| <li><p>[AIRFLOW-3737] Kubernetes executor cannot handle long dag/task names (#4636)</p></li> |
| <li><p>[AIRFLOW-3945] Stop inserting row when permission views unchanged (#4764)</p></li> |
| <li><p>[AIRFLOW-4123] Add Exception handling for _change_state method in K8 Executor (#4941)</p></li> |
| <li><p>[AIRFLOW-3771] Minor refactor securityManager (#4594)</p></li> |
| <li><p>[AIRFLOW-987] Pass kerberos cli args keytab and principal to kerberos.run() (#4238)</p></li> |
| <li><p>[AIRFLOW-3736] Allow int value in SqoopOperator.extra_import_options(#4906)</p></li> |
| <li><p>[AIRFLOW-4063] Fix exception string in BigQueryHook [2/2] (#4902)</p></li> |
| <li><p>[AIRFLOW-4063] Fix exception string in BigQueryHook (#4899)</p></li> |
| <li><p>[AIRFLOW-4037] Log response in SimpleHttpOperator even if the response check fails</p></li> |
| <li><p>[AIRFLOW-4044] The documentation of <cite>query_params</cite> in <cite>BigQueryOperator</cite> is wrong. (#4876)</p></li> |
| <li><p>[AIRFLOW-4015] Make missing API endpoints available in classic mode</p></li> |
| <li><p>[AIRFLOW-3153] Send DAG processing stats to statsd (#4748)</p></li> |
| <li><p>[AIRFLOW-2966] Catch ApiException in the Kubernetes Executor (#4209)</p></li> |
| <li><p>[AIRFLOW-4129] Escape HTML in generated tooltips (#4950)</p></li> |
| <li><p>[AIRFLOW-4070] AirflowException -> log.warning for duplicate task dependencies (#4904)</p></li> |
| <li><p>[AIRFLOW-4054] Fix assertEqualIgnoreMultipleSpaces util & add tests (#4886)</p></li> |
| <li><p>[AIRFLOW-3239] Fix test recovery further (#4074)</p></li> |
| <li><p>[AIRFLOW-4053] Fix KubePodOperator Xcom on Kube 1.13.0 (#4883)</p></li> |
| <li><p>[AIRFLOW-2961] Refactor tests.BackfillJobTest.test_backfill_examples test (#3811)</p></li> |
| <li><p>[AIRFLOW-3606] Fix Flake8 test & fix the Flake8 errors introduced since Flake8 test was broken (#4415)</p></li> |
| <li><p>[AIRFLOW-3543] Fix deletion of DAG with rescheduled tasks (#4646)</p></li> |
| <li><p>[AIRFLOW-2548] Output plugin import errors to web UI (#3930)</p></li> |
| <li><p>[AIRFLOW-4019] Fix AWS Athena Sensor object has no attribute 'mode' (#4844)</p></li> |
| <li><p>[AIRFLOW-3758] Fix circular import in WasbTaskHandler (#4601)</p></li> |
| <li><p>[AIRFLOW-3706] Fix tooltip max-width by correcting ordering of CSS files (#4947)</p></li> |
| <li><p>[AIRFLOW-4100] Correctly JSON escape data for tree/graph views (#4921)</p></li> |
| <li><p>[AIRFLOW-3636] Fix a test introduced in #4425 (#4446)</p></li> |
| <li><p>[AIRFLOW-3977] Add examples of trigger rules in doc (#4805)</p></li> |
| <li><p>[AIRFLOW-2511] Fix improper failed session commit handling causing deadlocks (#4769)</p></li> |
| <li><p>[AIRFLOW-3962] Added graceful handling for creation of dag_run of a dag which doesn't have any task (#4781)</p></li> |
| <li><p>[AIRFLOW-3881] Correct to_csv row number (#4699)</p></li> |
| <li><p>[AIRFLOW-3875] Simplify SlackWebhookHook code and change docstring (#4696)</p></li> |
| <li><p>[AIRFLOW-3733] Don't raise NameError in HQL hook to_csv when no rows returned (#4560)</p></li> |
| <li><p>[AIRFLOW-3734] Fix hql not run when partition is None (#4561)</p></li> |
| <li><p>[AIRFLOW-3767] Correct bulk insert function (#4773)</p></li> |
| <li><p>[AIRFLOW-4087] remove sudo in basetaskrunner on_finish (#4916)</p></li> |
| <li><p>[AIRFLOW-3768] Escape search parameter in pagination controls (#4911)</p></li> |
| <li><p>[AIRFLOW-4045] Fix hard-coded URLs in FAB-based UI (#4914)</p></li> |
| <li><p>[AIRFLOW-3123] Use a stack for DAG context management (#3956)</p></li> |
| <li><p>[AIRFLOW-3060] DAG context manager fails to exit properly in certain circumstances</p></li> |
| <li><p>[AIRFLOW-3924] Fix try number in alert emails (#4741)</p></li> |
| <li><p>[AIRFLOW-4083] Add tests for link generation utils (#4912)</p></li> |
| <li><p>[AIRFLOW-2190] Send correct HTTP status for base_url not found (#4910)</p></li> |
| <li><p>[AIRFLOW-4015] Add get_dag_runs GET endpoint to "classic" API (#4884)</p></li> |
| <li><p>[AIRFLOW-3239] Enable existing CI tests (#4131)</p></li> |
| <li><p>[AIRFLOW-1390] Update Alembic to 0.9 (#3935)</p></li> |
| <li><p>[AIRFLOW-3885] Fix race condition in scheduler test (#4737)</p></li> |
| <li><p>[AIRFLOW-3885] ~10x speed-up of SchedulerJobTest suite (#4730)</p></li> |
| <li><p>[AIRFLOW-3780] Fix some incorrect when base_url is used (#4643)</p></li> |
| <li><p>[AIRFLOW-3807] Fix Graph View Highlighting of Tasks (#4653)</p></li> |
| <li><p>[AIRFLOW-3009] Import Hashable from collection.abc to fix Python 3.7 deprecation warning (#3849)</p></li> |
| <li><p>[AIRFLOW-2231] Fix relativedelta DAG schedule_interval (#3174)</p></li> |
| <li><p>[AIRFLOW-2641] Fix MySqlToHiveTransfer to handle MySQL DECIMAL correctly</p></li> |
| <li><p>[AIRFLOW-3751] Option to allow malformed schemas for LDAP authentication (#4574)</p></li> |
| <li><p>[AIRFLOW-2888] Add deprecation path for task_runner config change (#4851)</p></li> |
| <li><p>[AIRFLOW-2930] Fix celery executor scheduler crash (#3784)</p></li> |
| <li><p>[AIRFLOW-2888] Remove shell=True and bash from task launch (#3740)</p></li> |
| <li><p>[AIRFLOW-3885] ~2.5x speed-up for backfill tests (#4731)</p></li> |
| <li><p>[AIRFLOW-3885] ~20x speed-up of slowest unit test (#4726)</p></li> |
| <li><p>[AIRFLOW-2508] Handle non string types in Operators templatized fields (#4292)</p></li> |
| <li><p>[AIRFLOW-3792] Fix validation in BQ for useLegacySQL & queryParameters (#4626)</p></li> |
| <li><p>[AIRFLOW-3749] Fix Edit Dag Run page when using RBAC (#4613)</p></li> |
| <li><p>[AIRFLOW-3801] Fix DagBag collect dags invocation to prevent examples to be loaded (#4677)</p></li> |
| <li><p>[AIRFLOW-3774] Register blueprints with RBAC web app (#4598)</p></li> |
| <li><p>[AIRFLOW-3719] Handle StopIteration in CloudWatch logs retrieval (#4516)</p></li> |
| <li><p>[AIRFLOW-3108] Define get_autocommit method for MsSqlHook (#4525)</p></li> |
| <li><p>[AIRFLOW-3074] Add relevant ECS options to ECS operator. (#3908)</p></li> |
| <li><p>[AIRFLOW-3353] Upgrade Redis client (#4834)</p></li> |
| <li><p>[AIRFLOW-3250] Fix for Redis Hook for not authorised connection calls (#4090)</p></li> |
| <li><p>[AIRFLOW-2009] Fix dataflow hook connection-id (#4563)</p></li> |
| <li><p>[AIRFLOW-2190] Fix TypeError when returning 404 (#4596)</p></li> |
| <li><p>[AIRFLOW-2876] Update Tenacity to 4.12 (#3723)</p></li> |
| <li><p>[AIRFLOW-3923] Update flask-admin dependency to 1.5.3 to resolve security vulnerabilities from safety (#4739)</p></li> |
| <li><p>[AIRFLOW-3683] Fix formatting of error message for invalid TriggerRule (#4490)</p></li> |
| <li><p>[AIRFLOW-2787] Allow is_backfill to handle NULL DagRun.run_id (#3629)</p></li> |
| <li><p>[AIRFLOW-3780] Fix some incorrect when base_url is used (#4643)</p></li> |
| <li><p>[AIRFLOW-3639] Fix request creation in Jenkins Operator (#4450)</p></li> |
| <li><p>[AIRFLOW-3779] Don't install enum34 backport when not needed (#4620)</p></li> |
| <li><p>[AIRFLOW-3079] Improve migration scripts to support MSSQL Server (#3964)</p></li> |
| <li><p>[AIRFLOW-2735] Use equality, not identity, check for detecting AWS Batch failures[]</p></li> |
| <li><p>[AIRFLOW-2706] AWS Batch Operator should use top-level job state to determine status</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo in http_operator.py</p></li> |
| <li><p>[AIRFLOW-XXX] Solve lodash security warning (#4820)</p></li> |
| <li><p>[AIRFLOW-XXX] Pin version of tornado pulled in by celery. (#4815)</p></li> |
| <li><p>[AIRFLOW-XXX] Upgrade FAB to 1.12.3 (#4694)</p></li> |
| <li><p>[AIRFLOW-XXX] Pin pinodb dependency (#4704)</p></li> |
| <li><p>[AIRFLOW-XXX] Pin version of Pip in tests to work around pypa/pip#6163 (#4576)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix spark submit hook KeyError (#4578)</p></li> |
| <li><p>[AIRFLOW-XXX] Pin psycopg2 due to breaking change (#5036)</p></li> |
| <li><p>[AIRFLOW-XXX] Pin Sendgrid dep. (#5031)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix flaky test - test_execution_unlimited_parallelism (#4988)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id58"> |
| <h3>Misc/Internal<a class="headerlink" href="#id58" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-4144] Add description of is_delete_operator_pod (#4943)</p></li> |
| <li><p>[AIRFLOW-3476][AIRFLOW-3477] Move Kube classes out of models.py (#4443)</p></li> |
| <li><p>[AIRFLOW-3464] Move SkipMixin out of models.py (#4386)</p></li> |
| <li><p>[AIRFLOW-3463] Move Log out of models.py (#4639)</p></li> |
| <li><p>[AIRFLOW-3458] Move connection tests (#4680)</p></li> |
| <li><p>[AIRFLOW-3461] Move TaskFail out of models.py (#4630)</p></li> |
| <li><p>[AIRFLOW-3462] Move TaskReschedule out of models.py (#4618)</p></li> |
| <li><p>[AIRFLOW-3474] Move SlaMiss out of models.py (#4608)</p></li> |
| <li><p>[AIRFLOW-3475] Move ImportError out of models.py (#4383)</p></li> |
| <li><p>[AIRFLOW-3459] Move DagPickle to separate file (#4374)</p></li> |
| <li><p>[AIRFLOW-3925] Don't pull docker-images on pretest (#4740)</p></li> |
| <li><p>[AIRFLOW-4154] Correct string formatting in jobs.py (#4972)</p></li> |
| <li><p>[AIRFLOW-3458] Deprecation path for moving models.Connection</p></li> |
| <li><p>[AIRFLOW-3458] Move models.Connection into separate file (#4335)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove old/non-test files that nose ignores (#4930)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id59"> |
| <h3>Doc-only changes<a class="headerlink" href="#id59" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-3996] Add view source link to included fragments</p></li> |
| <li><p>[AIRFLOW-3811] Automatic generation of API Reference in docs (#4788)</p></li> |
| <li><p>[AIRFLOW-3810] Remove duplicate autoclass directive (#4656)</p></li> |
| <li><p>[AIRFLOW-XXX] Mention that statsd must be installed to gather metrics (#5038)</p></li> |
| <li><p>[AIRFLOW-XXX] Add contents to cli (#4825)</p></li> |
| <li><p>[AIRFLOW-XXX] fix check docs failure on CI (#4998)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix syntax docs errors (#4789)</p></li> |
| <li><p>[AIRFLOW-XXX] Docs rendering improvement (#4684)</p></li> |
| <li><p>[AIRFLOW-XXX] Automatically link Jira/GH on doc's changelog page (#4587)</p></li> |
| <li><p>[AIRFLOW-XXX] Mention Oracle in the Extra Packages documentation (#4987)</p></li> |
| <li><p>[AIRFLOW-XXX] Drop deprecated sudo option; use default docker compose on Travis. (#4732)</p></li> |
| <li><p>[AIRFLOW-XXX] Update kubernetes.rst docs (#3875)</p></li> |
| <li><p>[AIRFLOW-XXX] Improvements to formatted content in documentation (#4835)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Daniel to committer list (#4961)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Xiaodong Deng to committers list</p></li> |
| <li><p>[AIRFLOW-XXX] Add history become ASF top level project (#4757)</p></li> |
| <li><p>[AIRFLOW-XXX] Move out the examples from integration.rst (#4672)</p></li> |
| <li><p>[AIRFLOW-XXX] Extract reverse proxy info to a separate file (#4657)</p></li> |
| <li><p>[AIRFLOW-XXX] Reduction of the number of warnings in the documentation (#4585)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix GCS Operator docstrings (#4054)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix Docstrings in Hooks, Sensors & Operators (#4137)</p></li> |
| <li><p>[AIRFLOW-XXX] Split guide for operators to multiple files (#4814)</p></li> |
| <li><p>[AIRFLOW-XXX] Split connection guide to multiple files (#4824)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove almost all warnings from building docs (#4588)</p></li> |
| <li><p>[AIRFLOW-XXX] Add backreference in docs between operator and integration (#4671)</p></li> |
| <li><p>[AIRFLOW-XXX] Improve linking to classes (#4655)</p></li> |
| <li><p>[AIRFLOW-XXX] Mock optional modules when building docs (#4586)</p></li> |
| <li><p>[AIRFLOW-XXX] Update plugin macros documentation (#4971)</p></li> |
| <li><p>[AIRFLOW-XXX] Add missing docstring for 'autodetect' in GCS to BQ Operator (#4979)</p></li> |
| <li><p>[AIRFLOW-XXX] Add missing GCP operators to Docs (#4260)</p></li> |
| <li><p>[AIRFLOW-XXX] Fixing the issue in Documentation (#3756)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Hint at user defined macros (#4885)</p></li> |
| <li><p>[AIRFLOW-XXX] Correct schedule_interval in Scheduler docs (#4157)</p></li> |
| <li><p>[AIRFLOW-XXX] Improve airflow-jira script to make RelManager's life easier (#4857)</p></li> |
| <li><p>[AIRFLOW-XXX] Add missing class references to docs (#4644)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo (#4564)</p></li> |
| <li><p>[AIRFLOW-XXX] Add a doc about fab security (#4595)</p></li> |
| <li><p>[AIRFLOW-XXX] Speed up DagBagTest cases (#3974)</p></li> |
| <li><p>[AIRFLOW-XXX] Reduction of the number of warnings in the documentation (#4585)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-2-2019-01-19"> |
| <h2>Airflow 1.10.2, 2019-01-19<a class="headerlink" href="#airflow-1-10-2-2019-01-19" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id60"> |
| <h3>New features<a class="headerlink" href="#id60" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-2658] Add GCP specific k8s pod operator (#3532)</p></li> |
| <li><p>[AIRFLOW-2440] Google Cloud SQL import/export operator (#4251)</p></li> |
| <li><p>[AIRFLOW-3212] Add AwsGlueCatalogPartitionSensor (#4112)</p></li> |
| <li><p>[AIRFLOW-2750] Add subcommands to delete and list users</p></li> |
| <li><p>[AIRFLOW-3480] Add GCP Spanner Database Operators (#4353)</p></li> |
| <li><p>[AIRFLOW-3560] Add DayOfWeek Sensor (#4363)</p></li> |
| <li><p>[AIRFLOW-3371] BigQueryHook's Ability to Create View (#4213)</p></li> |
| <li><p>[AIRFLOW-3332] Add method to allow inserting rows into BQ table (#4179)</p></li> |
| <li><p>[AIRFLOW-3055] add get_dataset and get_datasets_list to bigquery_hook (#3894)</p></li> |
| <li><p>[AIRFLOW-2887] Added BigQueryCreateEmptyDatasetOperator and create_empty_dataset to bigquery_hook (#3876)</p></li> |
| <li><p>[AIRFLOW-2758] Add a sensor for MongoDB</p></li> |
| <li><p>[AIRFLOW-2640] Add Cassandra table sensor</p></li> |
| <li><p>[AIRFLOW-3398] Google Cloud Spanner instance database query operator (#4314)</p></li> |
| <li><p>[AIRFLOW-3310] Google Cloud Spanner deploy / delete operators (#4286)</p></li> |
| <li><p>[AIRFLOW-3406] Implement an Azure CosmosDB operator (#4265)</p></li> |
| <li><p>[AIRFLOW-3434] Allows creating intermediate dirs in SFTPOperator (#4270)</p></li> |
| <li><p>[AIRFLOW-3345] Add Google Cloud Storage (GCS) operators for ACL (#4192)</p></li> |
| <li><p>[AIRFLOW-3266] Add AWS Athena Hook and Operator (#4111)</p></li> |
| <li><p>[AIRFLOW-3346] Add hook and operator for GCP transfer service (#4189)</p></li> |
| <li><p>[AIRFLOW-2983] Add prev_ds_nodash and next_ds_nodash macro (#3821)</p></li> |
| <li><p>[AIRFLOW-3403] Add AWS Athena Sensor (#4244)</p></li> |
| <li><p>[AIRFLOW-3323] Support HTTP basic authentication for Airflow Flower (#4166)</p></li> |
| <li><p>[AIRFLOW-3410] Add feature to allow Host Key Change for SSH Op (#4249)</p></li> |
| <li><p>[AIRFLOW-3275] Add Google Cloud SQL Query operator (#4170)</p></li> |
| <li><p>[AIRFLOW-2691] Manage JS dependencies via npm</p></li> |
| <li><p>[AIRFLOW-2795] Oracle to Oracle Transfer Operator (#3639)</p></li> |
| <li><p>[AIRFLOW-2596] Add Oracle to Azure Datalake Transfer Operator</p></li> |
| <li><p>[AIRFLOW-3220] Add Instance Group Manager Operators for GCE (#4167)</p></li> |
| <li><p>[AIRFLOW-2882] Add import and export for pool cli using JSON</p></li> |
| <li><p>[AIRFLOW-2965] CLI tool to show the next execution datetime (#3834)</p></li> |
| <li><p>[AIRFLOW-2874] Enables FAB's theme support (#3719)</p></li> |
| <li><p>[AIRFLOW-3336] Add new TriggerRule for 0 upstream failures (#4182)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id61"> |
| <h3>Improvements<a class="headerlink" href="#id61" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-3680] Consistency update in tests for All GCP-related operators (#4493)</p></li> |
| <li><p>[AIRFLOW-3675] Use googleapiclient for google apis (#4484)</p></li> |
| <li><p>[AIRFLOW-3205] Support multipart uploads to GCS (#4084)</p></li> |
| <li><p>[AIRFLOW-2826] Add GoogleCloudKMSHook (#3677)</p></li> |
| <li><p>[AIRFLOW-3676] Add required permission to CloudSQL export/import example (#4489)</p></li> |
| <li><p>[AIRFLOW-3679] Added Google Cloud Base Hook to documentation (#4487)</p></li> |
| <li><p>[AIRFLOW-3594] Unify different License Header</p></li> |
| <li><p>[AIRFLOW-3197] Remove invalid parameter KeepJobFlowAliveWhenNoSteps in example DAG (#4404)</p></li> |
| <li><p>[AIRFLOW-3504] Refine the functionality of "/health" endpoint (#4309)</p></li> |
| <li><p>[AIRFLOW-3103][AIRFLOW-3147] Update flask-appbuilder (#3937)</p></li> |
| <li><p>[AIRFLOW-3168] More resilient database use in CI (#4014)</p></li> |
| <li><p>[AIRFLOW-3076] Remove preloading of MySQL testdata (#3911)</p></li> |
| <li><p>[AIRFLOW-3035] Allow custom 'job_error_states' in dataproc ops (#3884)</p></li> |
| <li><p>[AIRFLOW-3246] Make hmsclient optional in airflow.hooks.hive_hooks (#4080)</p></li> |
| <li><p>[AIRFLOW-3059] Log how many rows are read from Postgres (#3905)</p></li> |
| <li><p>[AIRFLOW-2463] Make task instance context available for hive queries</p></li> |
| <li><p>[AIRFLOW-3190] Make flake8 compliant (#4035)</p></li> |
| <li><p>[AIRFLOW-1998] Implemented DatabricksRunNowOperator for jobs/run-now … (#3813)</p></li> |
| <li><p>[AIRFLOW-2267] Airflow DAG level access (#3197)</p></li> |
| <li><p>[AIRFLOW-2359] Add set failed for DagRun and task in tree view (#3255)</p></li> |
| <li><p>[AIRFLOW-3008] Move Kubernetes example DAGs to contrib</p></li> |
| <li><p>[AIRFLOW-3402] Support global k8s affinity and toleration configs (#4247)</p></li> |
| <li><p>[AIRFLOW-3610] Add region param for EMR jobflow creation (#4418)</p></li> |
| <li><p>[AIRFLOW-3531] Fix test for GCS to GCS Transfer Hook (#4452)</p></li> |
| <li><p>[AIRFLOW-3531] Add gcs to gcs transfer operator. (#4331)</p></li> |
| <li><p>[AIRFLOW-3034] Readme updates : Add Slack & Twitter, remove Gitter</p></li> |
| <li><p>[AIRFLOW-3028] Update Text & Images in Readme.md</p></li> |
| <li><p>[AIRFLOW-208] Add badge to show supported Python versions (#3839)</p></li> |
| <li><p>[AIRFLOW-2238] Update PR tool to push directly to GitHub</p></li> |
| <li><p>[AIRFLOW-2238] Flake8 fixes on dev/airflow-pr</p></li> |
| <li><p>[AIRFLOW-2238] Update PR tool to remove outdated info (#3978)</p></li> |
| <li><p>[AIRFLOW-3005] Replace 'Airbnb Airflow' with 'Apache Airflow' (#3845)</p></li> |
| <li><p>[AIRFLOW-3150] Make execution_date templated in TriggerDagRunOperator (#4359)</p></li> |
| <li><p>[AIRFLOW-1196][AIRFLOW-2399] Add templated field in TriggerDagRunOperator (#4228)</p></li> |
| <li><p>[AIRFLOW-3340] Placeholder support in connections form (#4185)</p></li> |
| <li><p>[AIRFLOW-3446] Add Google Cloud BigTable operators (#4354)</p></li> |
| <li><p>[AIRFLOW-1921] Add support for https and user auth (#2879)</p></li> |
| <li><p>[AIRFLOW-2770] Read <cite>dags_in_image</cite> config value as a boolean (#4319)</p></li> |
| <li><p>[AIRFLOW-3022] Add volume mount to KubernetesExecutorConfig (#3855)</p></li> |
| <li><p>[AIRFLOW-2917] Set AIRFLOW__CORE__SQL_ALCHEMY_CONN only when needed (#3766)</p></li> |
| <li><p>[AIRFLOW-2712] Pass annotations to KubernetesExecutorConfig</p></li> |
| <li><p>[AIRFLOW-461] Support autodetected schemas in BigQuery run_load (#3880)</p></li> |
| <li><p>[AIRFLOW-2997] Support cluster fields in bigquery (#3838)</p></li> |
| <li><p>[AIRFLOW-2916] Arg <cite>verify</cite> for AwsHook() & S3 sensors/operators (#3764)</p></li> |
| <li><p>[AIRFLOW-491] Add feature to pass extra api configs to BQ Hook (#3733)</p></li> |
| <li><p>[AIRFLOW-2889] Fix typos detected by github.com/client9/misspell (#3732)</p></li> |
| <li><p>[AIRFLOW-850] Add a PythonSensor (#4349)</p></li> |
| <li><p>[AIRFLOW-2747] Explicit re-schedule of sensors (#3596)</p></li> |
| <li><p>[AIRFLOW-3392] Add index on dag_id in sla_miss table (#4235)</p></li> |
| <li><p>[AIRFLOW-3001] Add index 'ti_dag_date' to taskinstance (#3885)</p></li> |
| <li><p>[AIRFLOW-2861] Add index on log table (#3709)</p></li> |
| <li><p>[AIRFLOW-3518] Performance fixes for topological_sort of Tasks (#4322)</p></li> |
| <li><p>[AIRFLOW-3521] Fetch more than 50 items in <cite>airflow-jira compare</cite> script (#4300)</p></li> |
| <li><p>[AIRFLOW-1919] Add option to query for DAG runs given a DAG ID</p></li> |
| <li><p>[AIRFLOW-3444] Explicitly set transfer operator description. (#4279)</p></li> |
| <li><p>[AIRFLOW-3411] Add OpenFaaS hook (#4267)</p></li> |
| <li><p>[AIRFLOW-2785] Add context manager entry points to mongoHook</p></li> |
| <li><p>[AIRFLOW-2524] Add SageMaker doc to AWS integration section (#4278)</p></li> |
| <li><p>[AIRFLOW-3479] Keeps records in Log Table when DAG is deleted (#4287)</p></li> |
| <li><p>[AIRFLOW-2948] Arg check & better doc - SSHOperator & SFTPOperator (#3793)</p></li> |
| <li><p>[AIRFLOW-2245] Add remote_host of SSH/SFTP operator as templated field (#3765)</p></li> |
| <li><p>[AIRFLOW-2670] Update SSH Operator's Hook to respect timeout (#3666)</p></li> |
| <li><p>[AIRFLOW-3380] Add metrics documentation (#4219)</p></li> |
| <li><p>[AIRFLOW-3361] Log the task_id in the PendingDeprecationWarning from BaseOperator (#4030)</p></li> |
| <li><p>[AIRFLOW-3213] Create ADLS to GCS operator (#4134)</p></li> |
| <li><p>[AIRFLOW-3395] added the REST API endpoints to the doc (#4236)</p></li> |
| <li><p>[AIRFLOW-3294] Update connections form and integration docs (#4129)</p></li> |
| <li><p>[AIRFLOW-3236] Create AzureDataLakeStorageListOperator (#4094)</p></li> |
| <li><p>[AIRFLOW-3062] Add Qubole in integration docs (#3946)</p></li> |
| <li><p>[AIRFLOW-3306] Disable flask-sqlalchemy modification tracking. (#4146)</p></li> |
| <li><p>[AIRFLOW-2867] Refactor Code to conform standards (#3714)</p></li> |
| <li><p>[AIRFLOW-2753] Add dataproc_job_id instance var holding actual DP jobId</p></li> |
| <li><p>[AIRFLOW-3132] Enable specifying auto_remove option for DockerOperator (#3977)</p></li> |
| <li><p>[AIRFLOW-2731] Raise psutil restriction to <6.0.0</p></li> |
| <li><p>[AIRFLOW-3384] Allow higher versions of Sqlalchemy and Jinja2 (#4227)</p></li> |
| <li><p>[Airflow-2760] Decouple DAG parsing loop from scheduler loop (#3873)</p></li> |
| <li><p>[AIRFLOW-3004] Add config disabling scheduler cron (#3899)</p></li> |
| <li><p>[AIRFLOW-3175] Fix docstring format in airflow/jobs.py (#4025)</p></li> |
| <li><p>[AIRFLOW-3589] Visualize reschedule state in all views (#4408)</p></li> |
| <li><p>[AIRFLOW-2698] Simplify Kerberos code (#3563)</p></li> |
| <li><p>[AIRFLOW-2499] Dockerise CI pipeline (#3393)</p></li> |
| <li><p>[AIRFLOW-3432] Add test for feature "Delete DAG in UI" (#4266)</p></li> |
| <li><p>[AIRFLOW-3301] Update DockerOperator CI test for PR #3977 (#4138)</p></li> |
| <li><p>[AIRFLOW-3478] Make sure that the session is closed</p></li> |
| <li><p>[AIRFLOW-3687] Add missing @apply_defaults decorators (#4498)</p></li> |
| <li><p>[AIRFLOW-3691] Update notice to 2019 (#4503)</p></li> |
| <li><p>[AIRFLOW-3689] Update pop-up message when deleting DAG in RBAC UI (#4505)</p></li> |
| <li><p>[AIRFLOW-2801] Skip test_mark_success_no_kill in PostgreSQL on CI (#3642)</p></li> |
| <li><p>[AIRFLOW-3693] Replace psycopg2-binary by psycopg2 (#4508)</p></li> |
| <li><p>[AIRFLOW-3700] Change the lowest allowed version of "requests" (#4517)</p></li> |
| <li><p>[AIRFLOW-3704] Support SSL Protection When Redis is Used as Broker for CeleryExecutor (#4521)</p></li> |
| <li><p>[AIRFLOW-3681] All GCP operators have now optional GCP Project ID (#4500)</p></li> |
| <li><p>[Airflow 2782] Upgrades Dagre D3 version to latest possible</p></li> |
| <li><p>[Airflow 2783] Implement eslint for JS code check (#3641)</p></li> |
| <li><p>[AIRFLOW-2805] Display multiple timezones on UI (#3687)</p></li> |
| <li><p>[AIRFLOW-3302] Small CSS fixes (#4140)</p></li> |
| <li><p>[Airflow-2766] Respect shared datetime across tabs</p></li> |
| <li><p>[AIRFLOW-2776] Compress tree view JSON</p></li> |
| <li><p>[AIRFLOW-2407] Use feature detection for reload() (#3298)</p></li> |
| <li><p>[AIRFLOW-3452] Removed an unused/dangerous display-none (#4295)</p></li> |
| <li><p>[AIRFLOW-3348] Update run statistics on dag refresh (#4197)</p></li> |
| <li><p>[AIRFLOW-3125] Monitor Task Instances creation rates (#3966)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id62"> |
| <h3>Bug fixes<a class="headerlink" href="#id62" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-3191] Fix not being able to specify execution_date when creating dagrun (#4037)</p></li> |
| <li><p>[AIRFLOW-3657] Fix zendesk integration (#4466)</p></li> |
| <li><p>[AIRFLOW-3605] Load plugins from entry_points (#4412)</p></li> |
| <li><p>[AIRFLOW-3646] Rename plugins_manager.py to test_xx to trigger tests (#4464)</p></li> |
| <li><p>[AIRFLOW-3655] Escape links generated in model views (#4463)</p></li> |
| <li><p>[AIRFLOW-3662] Add dependency for Enum (#4468)</p></li> |
| <li><p>[AIRFLOW-3630] Cleanup of GCP Cloud SQL Connection (#4451)</p></li> |
| <li><p>[AIRFLOW-1837] Respect task start_date when different from dag's (#4010)</p></li> |
| <li><p>[AIRFLOW-2829] Brush up the CI script for minikube</p></li> |
| <li><p>[AIRFLOW-3519] Fix example http operator (#4455)</p></li> |
| <li><p>[AIRFLOW-2811] Fix scheduler_ops_metrics.py to work (#3653)</p></li> |
| <li><p>[AIRFLOW-2751] add job properties update in hive to druid operator.</p></li> |
| <li><p>[AIRFLOW-2918] Remove unused imports</p></li> |
| <li><p>[AIRFLOW-2918] Fix Flake8 violations (#3931)</p></li> |
| <li><p>[AIRFLOW-2771] Add except type to broad S3Hook try catch clauses</p></li> |
| <li><p>[AIRFLOW-2918] Fix Flake8 violations (#3772)</p></li> |
| <li><p>[AIRFLOW-2099] Handle getsource() calls gracefully</p></li> |
| <li><p>[AIRFLOW-3397] Fix integrity error in rbac AirflowSecurityManager (#4305)</p></li> |
| <li><p>[AIRFLOW-3281] Fix Kubernetes operator with git-sync (#3770)</p></li> |
| <li><p>[AIRFLOW-2615] Limit DAGs parsing to once only</p></li> |
| <li><p>[AIRFLOW-2952] Fix Kubernetes CI (#3922)</p></li> |
| <li><p>[AIRFLOW-2933] Enable Codecov on Docker-CI Build (#3780)</p></li> |
| <li><p>[AIRFLOW-2082] Resolve a bug in adding password_auth to api as auth method (#4343)</p></li> |
| <li><p>[AIRFLOW-3612] Remove incubation/incubator mention (#4419)</p></li> |
| <li><p>[AIRFLOW-3581] Fix next_ds/prev_ds semantics for manual runs (#4385)</p></li> |
| <li><p>[AIRFLOW-3527] Update Cloud SQL Proxy to have shorter path for UNIX socket (#4350)</p></li> |
| <li><p>[AIRFLOW-3316] For gcs_to_bq: add missing init of schema_fields var (#4430)</p></li> |
| <li><p>[AIRFLOW-3583] Fix AirflowException import (#4389)</p></li> |
| <li><p>[AIRFLOW-3578] Fix Type Error for BigQueryOperator (#4384)</p></li> |
| <li><p>[AIRFLOW-2755] Added <cite>kubernetes.worker_dags_folder</cite> configuration (#3612)</p></li> |
| <li><p>[AIRFLOW-2655] Fix inconsistency of default config of kubernetes worker</p></li> |
| <li><p>[AIRFLOW-2645][AIRFLOW-2617] Add worker_container_image_pull_policy</p></li> |
| <li><p>[AIRFLOW-2661] fix config dags_volume_subpath and logs_volume_subpath</p></li> |
| <li><p>[AIRFLOW-3550] Standardize GKE hook (#4364)</p></li> |
| <li><p>[AIRFLOW-2863] Fix GKEClusterHook catching wrong exception (#3711)</p></li> |
| <li><p>[AIRFLOW-2939][AIRFLOW-3568] Fix TypeError in GCSToS3Op & S3ToGCSOp (#4371)</p></li> |
| <li><p>[AIRFLOW-3327] Add support for location in BigQueryHook (#4324)</p></li> |
| <li><p>[AIRFLOW-3438] Fix default values in BigQuery Hook & BigQueryOperator (…</p></li> |
| <li><p>[AIRFLOW-3355] Fix BigQueryCursor.execute to work with Python3 (#4198)</p></li> |
| <li><p>[AIRFLOW-3447] Add 2 options for ts_nodash Macro (#4323)</p></li> |
| <li><p>[AIRFLOW-1552] Airflow Filter_by_owner not working with password_auth (#4276)</p></li> |
| <li><p>[AIRFLOW-3484] Fix Over-logging in the k8s executor (#4296)</p></li> |
| <li><p>[AIRFLOW-3309] Add MongoDB connection (#4154)</p></li> |
| <li><p>[AIRFLOW-3414] Fix reload_module in DagFileProcessorAgent (#4253)</p></li> |
| <li><p>[AIRFLOW-1252] API accept JSON when invoking a trigger dag (#2334)</p></li> |
| <li><p>[AIRFLOW-3425] Fix setting default scope in hook (#4261)</p></li> |
| <li><p>[AIRFLOW-3416] Fixes Python 3 compatibility with CloudSqlQueryOperator (#4254)</p></li> |
| <li><p>[AIRFLOW-3263] Ignore exception when 'run' kills already killed job (#4108)</p></li> |
| <li><p>[AIRFLOW-3264] URL decoding when parsing URI for connection (#4109)</p></li> |
| <li><p>[AIRFLOW-3365][AIRFLOW-3366] Allow celery_broker_transport_options to be set with environment variables (#4211)</p></li> |
| <li><p>[AIRFLOW-2642] fix wrong value git-sync initcontainer env GIT_SYNC_ROOT (#3519)</p></li> |
| <li><p>[AIRFLOW-3353] Pin redis version (#4195)</p></li> |
| <li><p>[AIRFLOW-3251] KubernetesPodOperator now uses 'image_pull_secrets' argument when creating Pods (#4188)</p></li> |
| <li><p>[AIRFLOW-2705] Move class-level moto decorator to method-level</p></li> |
| <li><p>[AIRFLOW-3233] Fix deletion of DAGs in the UI (#4069)</p></li> |
| <li><p>[AIRFLOW-2908] Allow retries with KubernetesExecutor. (#3758)</p></li> |
| <li><p>[AIRFLOW-1561] Fix scheduler to pick up example DAGs without other DAGs (#2635)</p></li> |
| <li><p>[AIRFLOW-3352] Fix expose_config not honoured on RBAC UI (#4194)</p></li> |
| <li><p>[AIRFLOW-3592] Fix logs when task is in rescheduled state (#4492)</p></li> |
| <li><p>[AIRFLOW-3634] Fix GCP Spanner Test (#4440)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix PythonVirtualenvOperator tests (#3968)</p></li> |
| <li><p>[AIRFLOW-3239] Fix/refine tests for api/common/experimental/ (#4255)</p></li> |
| <li><p>[AIRFLOW-2951] Update dag_run table end_date when state change (#3798)</p></li> |
| <li><p>[AIRFLOW-2756] Fix bug in set DAG run state workflow (#3606)</p></li> |
| <li><p>[AIRFLOW-3690] Fix bug to set state of a task for manually-triggered DAGs (#4504)</p></li> |
| <li><p>[AIRFLOW-3319] KubernetsExecutor: Need in try_number in labels if getting them later (#4163)</p></li> |
| <li><p>[AIRFLOW-3724] Fix the broken refresh button on Graph View in RBAC UI</p></li> |
| <li><p>[AIRFLOW-3732] Fix issue when trying to edit connection in RBAC UI</p></li> |
| <li><p>[AIRFLOW-2866] Fix missing CSRF token head when using RBAC UI (#3804)</p></li> |
| <li><p>[AIRFLOW-3259] Fix internal server error when displaying charts (#4114)</p></li> |
| <li><p>[AIRFLOW-3271] Fix issue with persistence of RBAC Permissions modified via UI (#4118)</p></li> |
| <li><p>[AIRFLOW-3141] Handle duration View for missing dag (#3984)</p></li> |
| <li><p>[AIRFLOW-2766] Respect shared datetime across tabs</p></li> |
| <li><p>[AIRFLOW-1413] Fix FTPSensor failing on error message with unexpected (#2450)</p></li> |
| <li><p>[AIRFLOW-3378] KubernetesPodOperator does not delete on timeout failure (#4218)</p></li> |
| <li><p>[AIRFLOW-3245] Fix list processing in resolve_template_files (#4086)</p></li> |
| <li><p>[AIRFLOW-2703] Catch transient DB exceptions from scheduler's heartbeat it does not crash (#3650)</p></li> |
| <li><p>[AIRFLOW-1298] Clear UPSTREAM_FAILED using the clean cli (#3886)</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id63"> |
| <h3>Doc-only changes<a class="headerlink" href="#id63" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-XXX] GCP operators documentation clarifications (#4273)</p></li> |
| <li><p>[AIRFLOW-XXX] Docs: Fix paths to GCS transfer operator (#4479)</p></li> |
| <li><p>[AIRFLOW-XXX] Add missing GCP operators to Docs (#4260)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix Docstrings for Operators (#3820)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix inconsistent comment in example_python_operator.py (#4337)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix incorrect parameter in SFTPOperator example (#4344)</p></li> |
| <li><p>[AIRFLOW-XXX] Add missing remote logging field (#4333)</p></li> |
| <li><p>[AIRFLOW-XXX] Revise template variables documentation (#4172)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo in docstring of gcs_to_bq (#3833)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix display of SageMaker operators/hook docs (#4263)</p></li> |
| <li><p>[AIRFLOW-XXX] Better instructions for Airflow flower (#4214)</p></li> |
| <li><p>[AIRFLOW-XXX] Make pip install commands consistent (#3752)</p></li> |
| <li><p>[AIRFLOW-XXX] Add <cite>BigQueryGetDataOperator</cite> to Integration Docs (#4063)</p></li> |
| <li><p>[AIRFLOW-XXX] Don't spam test logs with "bad cron expression" messages (#3973)</p></li> |
| <li><p>[AIRFLOW-XXX] Update committer list based on latest TLP discussion (#4427)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix incorrect statement in contributing guide (#4104)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix Broken Link in CONTRIBUTING.md</p></li> |
| <li><p>[AIRFLOW-XXX] Update Contributing Guide - Git Hooks (#4120)</p></li> |
| <li><p>[AIRFLOW-3426] Correct Python Version Documentation Reference (#4259)</p></li> |
| <li><p>[AIRFLOW-2663] Add instructions to install SSH dependencies</p></li> |
| <li><p>[AIRFLOW-XXX] Clean up installation extra packages table (#3750)</p></li> |
| <li><p>[AIRFLOW-XXX] Remove redundant space in Kerberos (#3866)</p></li> |
| <li><p>[AIRFLOW-3086] Add extras group for google auth to setup.py (#3917)</p></li> |
| <li><p>[AIRFLOW-XXX] Add Kubernetes Dependency in Extra Packages Doc (#4281)</p></li> |
| <li><p>[AIRFLOW-3696] Add Version info to Airflow Documentation (#4512)</p></li> |
| <li><p>[AIRFLOW-XXX] Correct Typo in sensor's exception (#4545)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix a typo of config (#4544)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix BashOperator Docstring (#4052)</p></li> |
| <li><p>[AIRFLOW-3018] Fix Minor issues in Documentation</p></li> |
| <li><p>[AIRFLOW-XXX] Fix Minor issues with Azure Cosmos Operator (#4289)</p></li> |
| <li><p>[AIRFLOW-3382] Fix incorrect docstring in DatastoreHook (#4222)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix copy&paste mistake (#4212)</p></li> |
| <li><p>[AIRFLOW-3260] Correct misleading BigQuery error (#4098)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix Typo in SFTPOperator docstring (#4016)</p></li> |
| <li><p>[AIRFLOW-XXX] Fixing the issue in Documentation (#3998)</p></li> |
| <li><p>[AIRFLOW-XXX] Fix undocumented params in S3_hook</p></li> |
| <li><p>[AIRFLOW-XXX] Fix SlackWebhookOperator execute method comment (#3963)</p></li> |
| <li><p>[AIRFLOW-3070] Refine web UI authentication-related docs (#3863)</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-1-2018-11-13"> |
| <h2>Airflow 1.10.1, 2018-11-13<a class="headerlink" href="#airflow-1-10-1-2018-11-13" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="id64"> |
| <h3>New features<a class="headerlink" href="#id64" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-2524] Airflow integration with AWS Sagemaker</p></li> |
| <li><p>[AIRFLOW-2657] Add ability to delete DAG from web ui</p></li> |
| <li><p>[AIRFLOW-2780] Adds IMAP Hook to interact with a mail server</p></li> |
| <li><p>[AIRFLOW-2794] Add delete support for Azure blob</p></li> |
| <li><p>[AIRFLOW-2912] Add operators for Google Cloud Functions</p></li> |
| <li><p>[AIRFLOW-2974] Add Start/Restart/Terminate methods Databricks Hook</p></li> |
| <li><p>[AIRFLOW-2989] No Parameter to change bootDiskType for DataprocClusterCreateOperator</p></li> |
| <li><p>[AIRFLOW-3078] Basic operators for Google Compute Engine</p></li> |
| <li><p>[AIRFLOW-3147] Update Flask-AppBuilder version</p></li> |
| <li><p>[AIRFLOW-3231] Basic operators for Google Cloud SQL (deploy / patch / delete)</p></li> |
| <li><p>[AIRFLOW-3276] Google Cloud SQL database create / patch / delete operators</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id65"> |
| <h3>Improvements<a class="headerlink" href="#id65" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-393] Add progress callbacks for FTP downloads</p></li> |
| <li><p>[AIRFLOW-520] Show Airflow version on web page</p></li> |
| <li><p>[AIRFLOW-843] Exceptions now available in context during on_failure_callback</p></li> |
| <li><p>[AIRFLOW-2476] Update tabulate dependency to v0.8.2</p></li> |
| <li><p>[AIRFLOW-2592] Bump Bleach dependency</p></li> |
| <li><p>[AIRFLOW-2622] Add "confirm=False" option to SFTPOperator</p></li> |
| <li><p>[AIRFLOW-2662] support affinity & nodeSelector policies for kubernetes executor/operator</p></li> |
| <li><p>[AIRFLOW-2709] Improve error handling in Databricks hook</p></li> |
| <li><p>[AIRFLOW-2723] Update lxml dependency to >= 4.0.</p></li> |
| <li><p>[AIRFLOW-2763] No precheck mechanism in place during worker initialisation for the connection to metadata database</p></li> |
| <li><p>[AIRFLOW-2789] Add ability to create single node cluster to DataprocClusterCreateOperator</p></li> |
| <li><p>[AIRFLOW-2797] Add ability to create Google Dataproc cluster with custom image</p></li> |
| <li><p>[AIRFLOW-2854] kubernetes_pod_operator add more configuration items</p></li> |
| <li><p>[AIRFLOW-2855] Need to Check Validity of Cron Expression When Process DAG File/Zip File</p></li> |
| <li><p>[AIRFLOW-2904] Clean an unnecessary line in airflow/executors/celery_executor.py</p></li> |
| <li><p>[AIRFLOW-2921] A trivial incorrectness in CeleryExecutor()</p></li> |
| <li><p>[AIRFLOW-2922] Potential deal-lock bug in CeleryExecutor()</p></li> |
| <li><p>[AIRFLOW-2932] GoogleCloudStorageHook - allow compression of file</p></li> |
| <li><p>[AIRFLOW-2949] Syntax Highlight for Single Quote</p></li> |
| <li><p>[AIRFLOW-2951] dag_run end_date Null after a dag is finished</p></li> |
| <li><p>[AIRFLOW-2956] Kubernetes tolerations for pod operator</p></li> |
| <li><p>[AIRFLOW-2997] Support for clustered tables in Bigquery hooks/operators</p></li> |
| <li><p>[AIRFLOW-3006] Fix error when schedule_interval="None"</p></li> |
| <li><p>[AIRFLOW-3008] Move Kubernetes related example DAGs to contrib/example_dags</p></li> |
| <li><p>[AIRFLOW-3025] Allow to specify dns and dns-search parameters for DockerOperator</p></li> |
| <li><p>[AIRFLOW-3067] (www_rbac) Flask flash messages are not displayed properly (no background color)</p></li> |
| <li><p>[AIRFLOW-3069] Decode output of S3 file transform operator</p></li> |
| <li><p>[AIRFLOW-3072] Assign permission get_logs_with_metadata to viewer role</p></li> |
| <li><p>[AIRFLOW-3090] INFO logs are too verbose</p></li> |
| <li><p>[AIRFLOW-3103] Update flask-login</p></li> |
| <li><p>[AIRFLOW-3112] Align SFTP hook with SSH hook</p></li> |
| <li><p>[AIRFLOW-3119] Enable loglevel on celery worker and inherit from airflow.cfg</p></li> |
| <li><p>[AIRFLOW-3137] Make ProxyFix middleware optional</p></li> |
| <li><p>[AIRFLOW-3173] Add _cmd options for more password config options</p></li> |
| <li><p>[AIRFLOW-3177] Change scheduler_heartbeat metric from gauge to counter</p></li> |
| <li><p>[AIRFLOW-3193] Pin docker requirement version to v3</p></li> |
| <li><p>[AIRFLOW-3195] Druid Hook: Log ingestion spec and task id</p></li> |
| <li><p>[AIRFLOW-3197] EMR Hook is missing some parameters to valid on the AWS API</p></li> |
| <li><p>[AIRFLOW-3232] Make documentation for GCF Functions operator more readable</p></li> |
| <li><p>[AIRFLOW-3262] Can't get log containing Response when using SimpleHttpOperator</p></li> |
| <li><p>[AIRFLOW-3265] Add support for "unix_socket" in connection extra for Mysql Hook</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id66"> |
| <h3>Doc-only changes<a class="headerlink" href="#id66" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-1441] Tutorial Inconsistencies Between Example Pipeline Definition and Recap</p></li> |
| <li><p>[AIRFLOW-2682] Add how-to guide(s) for how to use basic operators like BashOperator and PythonOperator</p></li> |
| <li><p>[AIRFLOW-3104] .airflowignore feature is not mentioned at all in documentation</p></li> |
| <li><p>[AIRFLOW-3237] Refactor example DAGs</p></li> |
| <li><p>[AIRFLOW-3187] Update Airflow.gif file with a slower version</p></li> |
| <li><p>[AIRFLOW-3159] Update Airflow documentation on GCP Logging</p></li> |
| <li><p>[AIRFLOW-3030] Command Line docs incorrect subdir</p></li> |
| <li><p>[AIRFLOW-2990] Docstrings for Hooks/Operators are in incorrect format</p></li> |
| <li><p>[AIRFLOW-3127] Celery SSL Documentation is out-dated</p></li> |
| <li><p>[AIRFLOW-2779] Add license headers to doc files</p></li> |
| <li><p>[AIRFLOW-2779] Add project version to license</p></li> |
| </ul> |
| </div> |
| <div class="section" id="id67"> |
| <h3>Bug fixes<a class="headerlink" href="#id67" title="Permalink to this headline">¶</a></h3> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-839] docker_operator.py attempts to log status key without first checking existence</p></li> |
| <li><p>[AIRFLOW-1104] Concurrency check in scheduler should count queued tasks as well as running</p></li> |
| <li><p>[AIRFLOW-1163] Add support for x-forwarded-* headers to support access behind AWS ELB</p></li> |
| <li><p>[AIRFLOW-1195] Cleared tasks in SubDagOperator do not trigger Parent dag_runs</p></li> |
| <li><p>[AIRFLOW-1508] Skipped state not part of State.task_states</p></li> |
| <li><p>[AIRFLOW-1762] Use key_file in SSHHook.create_tunnel()</p></li> |
| <li><p>[AIRFLOW-1837] Differing start_dates on tasks not respected by scheduler.</p></li> |
| <li><p>[AIRFLOW-1874] Support standard SQL in Check, ValueCheck and IntervalCheck BigQuery operators</p></li> |
| <li><p>[AIRFLOW-1917] print() from Python operators end up with extra new line</p></li> |
| <li><p>[AIRFLOW-1970] Database cannot be initialized if an invalid fernet key is provided</p></li> |
| <li><p>[AIRFLOW-2145] Deadlock after clearing a running task</p></li> |
| <li><p>[AIRFLOW-2216] Cannot specify a profile for AWS Hook to load with s3 config file</p></li> |
| <li><p>[AIRFLOW-2574] initdb fails when mysql password contains percent sign</p></li> |
| <li><p>[AIRFLOW-2707] Error accessing log files from web UI</p></li> |
| <li><p>[AIRFLOW-2716] Replace new Python 3.7 keywords</p></li> |
| <li><p>[AIRFLOW-2744] RBAC app doesn't integrate plugins (blueprints etc)</p></li> |
| <li><p>[AIRFLOW-2772] BigQuery hook does not allow specifying both the partition field name and table name at the same time</p></li> |
| <li><p>[AIRFLOW-2778] Bad Import in collect_dag in DagBag</p></li> |
| <li><p>[AIRFLOW-2786] Variables view fails to render if a variable has an empty key</p></li> |
| <li><p>[AIRFLOW-2799] Filtering UI objects by datetime is broken</p></li> |
| <li><p>[AIRFLOW-2800] Remove airflow/ low-hanging linting errors</p></li> |
| <li><p>[AIRFLOW-2825] S3ToHiveTransfer operator may not may able to handle GZIP file with uppercase ext in S3</p></li> |
| <li><p>[AIRFLOW-2848] dag_id is missing in metadata table "job" for LocalTaskJob</p></li> |
| <li><p>[AIRFLOW-2860] DruidHook: time variable is not updated correctly when checking for timeout</p></li> |
| <li><p>[AIRFLOW-2865] Race condition between on_success_callback and LocalTaskJob's cleanup</p></li> |
| <li><p>[AIRFLOW-2893] Stuck dataflow job due to jobName mismatch.</p></li> |
| <li><p>[AIRFLOW-2895] Prevent scheduler from spamming heartbeats/logs</p></li> |
| <li><p>[AIRFLOW-2900] Code not visible for Packaged DAGs</p></li> |
| <li><p>[AIRFLOW-2905] Switch to regional dataflow job service.</p></li> |
| <li><p>[AIRFLOW-2907] Sendgrid - Attachments - ERROR - Object of type 'bytes' is not JSON serializable</p></li> |
| <li><p>[AIRFLOW-2938] Invalid 'extra' field in connection can raise an AttributeError when attempting to edit</p></li> |
| <li><p>[AIRFLOW-2979] Deprecated Celery Option not in Options list</p></li> |
| <li><p>[AIRFLOW-2981] TypeError in dataflow operators when using GCS jar or py_file</p></li> |
| <li><p>[AIRFLOW-2984] Cannot convert naive_datetime when task has a naive start_date/end_date</p></li> |
| <li><p>[AIRFLOW-2994] flatten_results in BigQueryOperator/BigQueryHook should default to None</p></li> |
| <li><p>[AIRFLOW-3002] ValueError in dataflow operators when using GCS jar or py_file</p></li> |
| <li><p>[AIRFLOW-3012] Email on sla miss is send only to first address on the list</p></li> |
| <li><p>[AIRFLOW-3046] ECS Operator mistakenly reports success when task is killed due to EC2 host termination</p></li> |
| <li><p>[AIRFLOW-3064] No output from <cite>airflow test</cite> due to default logging config</p></li> |
| <li><p>[AIRFLOW-3072] Only admin can view logs in RBAC UI</p></li> |
| <li><p>[AIRFLOW-3079] Improve initdb to support MSSQL Server</p></li> |
| <li><p>[AIRFLOW-3089] Google auth doesn't work under http</p></li> |
| <li><p>[AIRFLOW-3099] Errors raised when some blocs are missing in airflow.cfg</p></li> |
| <li><p>[AIRFLOW-3109] Default user permission should contain 'can_clear'</p></li> |
| <li><p>[AIRFLOW-3111] Confusing comments and instructions for log templates in UPDATING.md and default_airflow.cfg</p></li> |
| <li><p>[AIRFLOW-3124] Broken webserver debug mode (RBAC)</p></li> |
| <li><p>[AIRFLOW-3136] Scheduler Failing the Task retries run while processing Executor Events</p></li> |
| <li><p>[AIRFLOW-3138] Migration cc1e65623dc7 creates issues with postgres</p></li> |
| <li><p>[AIRFLOW-3161] Log Url link does not link to task instance logs in RBAC UI</p></li> |
| <li><p>[AIRFLOW-3162] HttpHook fails to parse URL when port is specified</p></li> |
| <li><p>[AIRFLOW-3183] Potential Bug in utils/dag_processing/DagFileProcessorManager.max_runs_reached()</p></li> |
| <li><p>[AIRFLOW-3203] Bugs in DockerOperator & Some operator test scripts were named incorrectly</p></li> |
| <li><p>[AIRFLOW-3238] Dags, removed from the filesystem, are not deactivated on initdb</p></li> |
| <li><p>[AIRFLOW-3268] Cannot pass SSL dictionary to mysql connection via URL</p></li> |
| <li><p>[AIRFLOW-3277] Invalid timezone transition handling for cron schedules</p></li> |
| <li><p>[AIRFLOW-3295] Require encryption in DaskExecutor when certificates are configured.</p></li> |
| <li><p>[AIRFLOW-3297] EmrStepSensor marks cancelled step as successful</p></li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" id="airflow-1-10-0-2018-08-03"> |
| <h2>Airflow 1.10.0, 2018-08-03<a class="headerlink" href="#airflow-1-10-0-2018-08-03" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-2870] Use abstract TaskInstance for migration</p></li> |
| <li><p>[AIRFLOW-2859] Implement own UtcDateTime (#3708)</p></li> |
| <li><p>[AIRFLOW-2140] Don't require kubernetes for the SparkSubmit hook</p></li> |
| <li><p>[AIRFLOW-2869] Remove smart quote from default config</p></li> |
| <li><p>[AIRFLOW-2857] Fix Read the Docs env</p></li> |
| <li><p>[AIRFLOW-2817] Force explicit choice on GPL dependency</p></li> |
| <li><p>[AIRFLOW-2716] Replace async and await py3.7 keywords</p></li> |
| <li><p>[AIRFLOW-2810] Fix typo in Xcom model timestamp</p></li> |
| <li><p>[AIRFLOW-2710] Clarify fernet key value in documentation</p></li> |
| <li><p>[AIRFLOW-2606] Fix DB schema and SQLAlchemy model</p></li> |
| <li><p>[AIRFLOW-2646] Fix setup.py not to install snakebite on Python3</p></li> |
| <li><p>[AIRFLOW-2604] Add index to task_fail</p></li> |
| <li><p>[AIRFLOW-2650] Mark SchedulerJob as succeed when hitting Ctrl-c</p></li> |
| <li><p>[AIRFLOW-2678] Fix db schema unit test to remove checking fab models</p></li> |
| <li><p>[AIRFLOW-2624] Fix webserver login as anonymous</p></li> |
| <li><p>[AIRFLOW-2654] Fix incorrect URL on refresh in Graph View of FAB UI</p></li> |
| <li><p>[AIRFLOW-2668] Handle missing optional cryptography dependency</p></li> |
| <li><p>[AIRFLOW-2681] Include last dag run of externally triggered DAGs in UI.</p></li> |
| <li><p>[AIRFLOW-1840] Support back-compat on old celery config</p></li> |
| <li><p>[AIRFLOW-2612][AIRFLOW-2534] Clean up Hive-related tests</p></li> |
| <li><p>[AIRFLOW-2608] Implements/Standardize custom exceptions for experimental APIs</p></li> |
| <li><p>[AIRFLOW-2607] Fix failing TestLocalClient</p></li> |
| <li><p>[AIRFLOW-2638] dbapi_hook: support REPLACE INTO</p></li> |
| <li><p>[AIRFLOW-2542][AIRFLOW-1790] Rename AWS Batch Operator queue to job_queue</p></li> |
| <li><p>[AIRFLOW-2567] Extract result from the kubernetes pod as Xcom</p></li> |
| <li><p>[AIRFLOW-XXX] Adding REA Group to readme</p></li> |
| <li><p>[AIRFLOW-2601] Allow user to specify k8s config</p></li> |
| <li><p>[AIRFLOW-2559] Azure Fileshare hook</p></li> |
| <li><p>[AIRFLOW-1786] Enforce correct behavior for soft-fail sensors</p></li> |
| <li><p>[AIRFLOW-2355] Airflow trigger tag parameters in subdag</p></li> |
| <li><p>[AIRFLOW-2613] Fix Airflow searching .zip bug</p></li> |
| <li><p>[AIRFLOW-2627] Add a sensor for Cassandra</p></li> |
| <li><p>[AIRFLOW-2634][AIRFLOW-2534] Remove dependency for impyla</p></li> |
| <li><p>[AIRFLOW-2611] Fix wrong dag volume mount path for kubernetes executor</p></li> |
| <li><p>[AIRFLOW-2562] Add Google Kubernetes Engine Operators</p></li> |
| <li><p>[AIRFLOW-2630] Fix classname in test_sql_sensor.py</p></li> |
| <li><p>[AIRFLOW-2534] Fix bug in HiveServer2Hook</p></li> |
| <li><p>[AIRFLOW-2586] Stop getting AIRFLOW_HOME value from config file in bash operator</p></li> |
| <li><p>[AIRFLOW-2605] Fix autocommit for MySqlHook</p></li> |
| <li><p>[AIRFLOW-2539][AIRFLOW-2359] Move remaining log config to configuration file</p></li> |
| <li><p>[AIRFLOW-1656] Tree view dags query changed</p></li> |
| <li><p>[AIRFLOW-2617] add imagePullPolicy config for kubernetes executor</p></li> |
| <li><p>[AIRFLOW-2429] Fix security/task/sensors/ti_deps folders flake8 error</p></li> |
| <li><p>[AIRFLOW-2550] Implements API endpoint to list DAG runs</p></li> |
| <li><p>[AIRFLOW-2512][AIRFLOW-2522] Use google-auth instead of oauth2client</p></li> |
| <li><p>[AIRFLOW-2429] Fix operators folder flake8 error</p></li> |
| <li><p>[AIRFLOW-2585] Fix several bugs in CassandraHook and CassandraToGCSOperator</p></li> |
| <li><p>[AIRFLOW-2597] Restore original dbapi.run() behavior</p></li> |
| <li><p>[AIRFLOW-2590] Fix commit in DbApiHook.run() for no-autocommit DB</p></li> |
| <li><p>[AIRFLOW-1115] fix github oauth api URL</p></li> |
| <li><p>[AIRFLOW-2587] Add TIMESTAMP type mapping to MySqlToHiveTransfer</p></li> |
| <li><p>[AIRFLOW-2591][AIRFLOW-2581] Set default value of autocommit to False in DbApiHook.run()</p></li> |
| <li><p>[AIRFLOW-59] Implement bulk_dump and bulk_load for the Postgres hook</p></li> |
| <li><p>[AIRFLOW-2533] Fix path to DAG's on kubernetes executor workers</p></li> |
| <li><p>[AIRFLOW-2581] RFLOW-2581] Fix DbApiHook autocommit</p></li> |
| <li><p>[AIRFLOW-2578] Add option to use proxies in JiraHook</p></li> |
| <li><p>[AIRFLOW-2575] Make gcs to gcs operator work with large files</p></li> |
| <li><p>[AIRFLOW-437] Send TI context in kill zombies</p></li> |
| <li><p>[AIRFLOW-2566] Change backfill to rerun failed tasks</p></li> |
| <li><p>[AIRFLOW-1021] Fix double login for new users with LDAP</p></li> |
| <li><p>[AIRFLOW-XXX] Typo fix</p></li> |
| <li><p>[AIRFLOW-2561] Fix typo in EmailOperator</p></li> |
| <li><p>[AIRFLOW-2573] Cast BigQuery TIMESTAMP field to float</p></li> |
| <li><p>[AIRFLOW-2560] Adding support for internalIpOnly to DataprocClusterCreateOperator</p></li> |
| <li><p>[AIRFLOW-2565] templatize cluster_label</p></li> |
| <li><p>[AIRFLOW-83] add mongo hook and operator</p></li> |
| <li><p>[AIRFLOW-2558] Clear task/dag is clearing all executions</p></li> |
| <li><p>[AIRFLOW-XXX] Fix doc typos</p></li> |
| <li><p>[AIRFLOW-2513] Change <cite>bql</cite> to <cite>sql</cite> for BigQuery Hooks & Ops</p></li> |
| <li><p>[AIRFLOW-2557] Fix pagination for s3</p></li> |
| <li><p>[AIRFLOW-2545] Eliminate DeprecationWarning</p></li> |
| <li><p>[AIRFLOW-2500] Fix MySqlToHiveTransfer to transfer unsigned type properly</p></li> |
| <li><p>[AIRFLOW-2462] Change PasswordUser setter to correct syntax</p></li> |
| <li><p>[AIRFLOW-2525] Fix a bug introduced by commit <code class="docutils literal notranslate"><span class="pre">dabf1b9</span></code></p></li> |
| <li><p>[AIRFLOW-2553] Add webserver.pid to .gitignore</p></li> |
| <li><p>[AIRFLOW-1863][AIRFLOW-2529] Add dag run selection widgets to gantt view</p></li> |
| <li><p>[AIRFLOW-2504] Log username correctly and add extra to search columns</p></li> |
| <li><p>[AIRFLOW-2551] Encode binary data with base64 standard rather than base64 url</p></li> |
| <li><p>[AIRFLOW-2537] Add reset-dagrun option to backfill command</p></li> |
| <li><p>[AIRFLOW-2526] dag_run.conf can override params</p></li> |
| <li><p>[AIRFLOW-2544][AIRFLOW-1967] Guard against next major release of Celery, Flower</p></li> |
| <li><p>[AIRFLOW-XXX] Add Yieldr to who is using airflow</p></li> |
| <li><p>[AIRFLOW-2547] Describe how to run tests using Docker</p></li> |
| <li><p>[AIRFLOW-2538] Update faq doc on how to reduce Airflow scheduler latency</p></li> |
| <li><p>[AIRFLOW-2529] Improve graph view performance and usability</p></li> |
| <li><p>[AIRFLOW-2517] backfill support passing key values through CLI</p></li> |
| <li><p>[AIRFLOW-2532] Support logs_volume_subpath for KubernetesExecutor</p></li> |
| <li><p>[AIRFLOW-2466] consider task_id in _change_state_for_tis_without_dagrun</p></li> |
| <li><p>[AIRFLOW-2519] Fix CeleryExecutor with SQLAlchemy</p></li> |
| <li><p>[AIRFLOW-2402] Fix RBAC task log</p></li> |
| <li><p>[AIRFLOW-XXX] Add M4U to user list</p></li> |
| <li><p>[AIRFLOW-2536] docs about how to deal with Airflow initdb failure</p></li> |
| <li><p>[AIRFLOW-2530] KubernetesOperator supports multiple clusters</p></li> |
| <li><p>[AIRFLOW-1499] Eliminate duplicate and unneeded code</p></li> |
| <li><p>[AIRFLOW-2521] backfill - make variable name and logging messages more accurate</p></li> |
| <li><p>[AIRFLOW-2429] Fix hook, macros folder flake8 error</p></li> |
| <li><p>[Airflow-XXX] add Prime to company list</p></li> |
| <li><p>[AIRFLOW-2525] Fix PostgresHook.copy_expert to work with "COPY FROM"</p></li> |
| <li><p>[AIRFLOW-2515] Add dependency on thrift_sasl to hive extra</p></li> |
| <li><p>[AIRFLOW-2523] Add how-to for managing GCP connections</p></li> |
| <li><p>[AIRFLOW-2510] Introduce new macros: prev_ds and next_ds</p></li> |
| <li><p>[AIRFLOW-1730] Unpickle value of XCom queried from DB</p></li> |
| <li><p>[AIRFLOW-2518] Fix broken ToC links in integration.rst</p></li> |
| <li><p>[AIRFLOW-1472] Fix SLA misses triggering on skipped tasks.</p></li> |
| <li><p>[AIRFLOW-2520] CLI - make backfill less verbose</p></li> |
| <li><p>[AIRFLOW-2107] add time_partitioning to run_query on BigQueryBaseCursor</p></li> |
| <li><p>[AIRFLOW-1057][AIRFLOW-1380][AIRFLOW-2362][2362] AIRFLOW Update DockerOperator to new API</p></li> |
| <li><p>[AIRFLOW-2415] Make Airflow DAG templating render numbers</p></li> |
| <li><p>[AIRFLOW-2473] Fix wrong skip condition for TransferTests</p></li> |
| <li><p>[AIRFLOW-2472] Implement MySqlHook.bulk_dump</p></li> |
| <li><p>[AIRFLOW-2419] Use default view for subdag operator</p></li> |
| <li><p>[AIRFLOW-2498] Fix Unexpected argument in SFTP Sensor</p></li> |
| <li><p>[AIRFLOW-2509] Separate config docs into how-to guides</p></li> |
| <li><p>[AIRFLOW-2429] Add BaseExecutor back</p></li> |
| <li><p>[AIRFLOW-2429] Fix dag, example_dags, executors flake8 error</p></li> |
| <li><p>[AIRFLOW-2502] Change Single triple quotes to double for docstrings</p></li> |
| <li><p>[AIRFLOW-2503] Fix broken links in CONTRIBUTING.md</p></li> |
| <li><p>[AIRFLOW-2501] Refer to devel instructions in docs contrib guide</p></li> |
| <li><p>[AIRFLOW-2429] Fix contrib folder's flake8 errors</p></li> |
| <li><p>[AIRFLOW-2471] Fix HiveCliHook.load_df to use unused parameters</p></li> |
| <li><p>[AIRFLOW-2495] Update celery to 4.1.1</p></li> |
| <li><p>[AIRFLOW-2429] Fix api, bin, config_templates folders flake8 error</p></li> |
| <li><p>[AIRFLOW-2493] Mark template_fields of all Operators in the API document as "templated"</p></li> |
| <li><p>[AIRFLOW-2489] Update FlaskAppBuilder to 1.11.1</p></li> |
| <li><p>[AIRFLOW-2448] Enhance HiveCliHook.load_df to work with datetime</p></li> |
| <li><p>[AIRFLOW-2487] Enhance druid ingestion hook</p></li> |
| <li><p>[AIRFLOW-2397] Support affinity policies for Kubernetes executor/operator</p></li> |
| <li><p>[AIRFLOW-2482] Add test for rewrite method in GCS Hook</p></li> |
| <li><p>[AIRFLOW-2481] Fix flaky Kubernetes test</p></li> |
| <li><p>[AIRFLOW-2479] Improve doc FAQ section</p></li> |
| <li><p>[AIRFLOW-2485] Fix Incorrect logging for Qubole Sensor</p></li> |
| <li><p>[AIRFLOW-2486] Remove unnecessary slash after port</p></li> |
| <li><p>[AIRFLOW-2429] Make Airflow flake8 compliant</p></li> |
| <li><p>[AIRFLOW-2491] Resolve flask version conflict</p></li> |
| <li><p>[AIRFLOW-2484] Remove duplicate key in MySQL to GCS Op</p></li> |
| <li><p>[AIRFLOW-2458] Add cassandra-to-gcs operator</p></li> |
| <li><p>[AIRFLOW-2477] Improve time units for task duration and landing times charts for RBAC UI</p></li> |
| <li><p>[AIRFLOW-2474] Only import snakebite if using py2</p></li> |
| <li><p>[AIRFLOW-48] Parse connection uri querystring</p></li> |
| <li><p>[AIRFLOW-2467][AIRFLOW-2] Update import direct warn message to use the module name</p></li> |
| <li><p>[AIRFLOW-XXX] Fix order of companies</p></li> |
| <li><p>[AIRFLOW-2452] Document field_dict must be OrderedDict</p></li> |
| <li><p>[AIRFLOW-2420] Azure Data Lake Hook</p></li> |
| <li><p>[AIRFLOW-2213] Add Qubole check operator</p></li> |
| <li><p>[AIRFLOW-2465] Fix wrong module names in the doc</p></li> |
| <li><p>[AIRFLOW-1929] Modifying TriggerDagRunOperator to accept execution_date</p></li> |
| <li><p>[AIRFLOW-2460] Users can now use volume mounts and volumes</p></li> |
| <li><p>[AIRFLOW-2110][AIRFLOW-2122] Enhance Http Hook</p></li> |
| <li><p>[AIRFLOW-XXX] Updated contributors list</p></li> |
| <li><p>[AIRFLOW-2435] Add launch_type to ECSOperator to allow FARGATE</p></li> |
| <li><p>[AIRFLOW-2451] Remove extra slash ('/') char when using wildcard in gcs_to_gcs operator</p></li> |
| <li><p>[AIRFLOW-2461] Add support for cluster scaling on dataproc operator</p></li> |
| <li><p>[AIRFLOW-2376] Fix no hive section error</p></li> |
| <li><p>[AIRFLOW-2425] Add lineage support</p></li> |
| <li><p>[AIRFLOW-2430] Extend query batching to additional slow queries</p></li> |
| <li><p>[AIRFLOW-2453] Add default nil value for kubernetes/git_subpath</p></li> |
| <li><p>[AIRFLOW-2396] Add support for resources in kubernetes operator</p></li> |
| <li><p>[AIRFLOW-2169] Encode binary data with base64 before importing to BigQuery</p></li> |
| <li><p>[AIRFLOW-XXX] Add spotahome in user list</p></li> |
| <li><p>[AIRFLOW-2457] Update FAB version requirement</p></li> |
| <li><p>[AIRFLOW-2454][Airflow 2454] Support imagePullPolicy for k8s</p></li> |
| <li><p>[AIRFLOW-2450] update supported k8s versions to 1.9 and 1.10</p></li> |
| <li><p>[AIRFLOW-2333] Add Segment Hook and TrackEventOperator</p></li> |
| <li><p>[AIRFLOW-2442][AIRFLOW-2] Airflow run command leaves database connections open</p></li> |
| <li><p>[AIRFLOW-2016] assign template_fields for Dataproc Workflow Template sub-classes, not base class</p></li> |
| <li><p>[AIRFLOW-2446] Add S3ToRedshiftTransfer into the "Integration" doc</p></li> |
| <li><p>[AIRFLOW-2449] Fix operators.py to run all test cases</p></li> |
| <li><p>[AIRFLOW-2424] Add dagrun status endpoint and increased k8s test coverage</p></li> |
| <li><p>[AIRFLOW-2441] Fix bugs in HiveCliHook.load_df</p></li> |
| <li><p>[AIRFLOW-2358][AIRFLOW-201804] Make the Kubernetes example optional</p></li> |
| <li><p>[AIRFLOW-2436] Remove cli_logger in initdb</p></li> |
| <li><p>[AIRFLOW-2444] Remove unused option(include_adhoc) in cli backfill command</p></li> |
| <li><p>[AIRFLOW-2447] Fix TestHiveMetastoreHook to run all cases</p></li> |
| <li><p>[AIRFLOW-2445] Allow templating in kubernetes operator</p></li> |
| <li><p>[AIRFLOW-2086][AIRFLOW-2393] Customize default dagrun number in tree view</p></li> |
| <li><p>[AIRFLOW-2437] Add PubNub to list of current Airflow users</p></li> |
| <li><p>[AIRFLOW-XXX] Add Quantopian to list of Airflow users</p></li> |
| <li><p>[AIRFLOW-1978] Add WinRM windows operator and hook</p></li> |
| <li><p>[AIRFLOW-2427] Add tests to named hive sensor</p></li> |
| <li><p>[AIRFLOW-2412] Fix HiveCliHook.load_file to address HIVE-10541</p></li> |
| <li><p>[AIRFLOW-2431] Add the navigation bar color parameter for RBAC UI</p></li> |
| <li><p>[AIRFLOW-2407] Resolve Python undefined names</p></li> |
| <li><p>[AIRFLOW-1952] Add the navigation bar color parameter</p></li> |
| <li><p>[AIRFLOW-2222] Implement GoogleCloudStorageHook.rewrite</p></li> |
| <li><p>[AIRFLOW-2426] Add Google Cloud Storage Hook tests</p></li> |
| <li><p>[AIRFLOW-2418] Bump Flask-WTF</p></li> |
| <li><p>[AIRFLOW-2417] Wait for pod is not running to end task</p></li> |
| <li><p>[AIRFLOW-1914] Add other charset support to email utils</p></li> |
| <li><p>[AIRFLOW-XXX] Update README.md with <a class="reference external" href="mailto:Craig%40Work">Craig<span>@</span>Work</a></p></li> |
| <li><p>[AIRFLOW-1899] Fix Kubernetes tests</p></li> |
| <li><p>[AIRFLOW-1812] Update logging example</p></li> |
| <li><p>[AIRFLOW-2313] Add TTL parameters for Dataproc</p></li> |
| <li><p>[AIRFLOW-2411] add dataproc_jars to templated_fields</p></li> |
| <li><p>[AIRFLOW-XXX] Add Reddit to Airflow users</p></li> |
| <li><p>[AIRFLOW-XXX] Fix wrong table header in scheduler.rst</p></li> |
| <li><p>[AIRFLOW-2409] Supply password as a parameter</p></li> |
| <li><p>[AIRFLOW-2410][AIRFLOW-75] Set the timezone in the RBAC Web UI</p></li> |
| <li><p>[AIRFLOW-2394] default cmds and arguments in kubernetes operator</p></li> |
| <li><p>[AIRFLOW-2406] Add Apache2 License Shield to Readme</p></li> |
| <li><p>[AIRFLOW-2404] Add additional documentation for unqueued task</p></li> |
| <li><p>[AIRFLOW-2400] Add Ability to set Environment Variables for K8s</p></li> |
| <li><p>[AIRFLOW-XXX] Add Twine Labs as an Airflow user</p></li> |
| <li><p>[AIRFLOW-1853] Show only the desired number of runs in tree view</p></li> |
| <li><p>[AIRFLOW-2401] Document the use of variables in Jinja template</p></li> |
| <li><p>[AIRFLOW-2403] Fix License Headers</p></li> |
| <li><p>[AIRFLOW-1313] Fix license header</p></li> |
| <li><p>[AIRFLOW-2398] Add BounceX to list of current Airflow users</p></li> |
| <li><p>[AIRFLOW-2363] Fix return type bug in TaskHandler</p></li> |
| <li><p>[AIRFLOW-2389] Create a pinot db api hook</p></li> |
| <li><p>[AIRFLOW-2390] Resolve FlaskWTFDeprecationWarning</p></li> |
| <li><p>[AIRFLOW-1933] Fix some typos</p></li> |
| <li><p>[AIRFLOW-1960] Add support for secrets in kubernetes operator</p></li> |
| <li><p>[AIRFLOW-1313] Add vertica_to_mysql operator</p></li> |
| <li><p>[AIRFLOW-1575] Add AWS Kinesis Firehose Hook for inserting batch records</p></li> |
| <li><p>[AIRFLOW-2266][AIRFLOW-2343] Remove google-cloud-dataflow dependency</p></li> |
| <li><p>[AIRFLOW-2370] Implement --use_random_password in create_user</p></li> |
| <li><p>[AIRFLOW-2348] Strip path prefix from the destination_object when source_object contains a wildcard[]</p></li> |
| <li><p>[AIRFLOW-2391] Fix to Flask 0.12.2</p></li> |
| <li><p>[AIRFLOW-2381] Fix the flaky ApiPasswordTests test</p></li> |
| <li><p>[AIRFLOW-2378] Add Groupon to list of current users</p></li> |
| <li><p>[AIRFLOW-2382] Fix wrong description for delimiter</p></li> |
| <li><p>[AIRFLOW-2380] Add support for environment variables in Spark submit operator.</p></li> |
| <li><p>[AIRFLOW-2377] Improve Sendgrid sender support</p></li> |
| <li><p>[AIRFLOW-2331] Support init action timeout on dataproc cluster create</p></li> |
| <li><p>[AIRFLOW-1835] Update docs: Variable file is json</p></li> |
| <li><p>[AIRFLOW-1781] Make search case-insensitive in LDAP group</p></li> |
| <li><p>[AIRFLOW-2042] Fix browser menu appearing over the autocomplete menu</p></li> |
| <li><p>[AIRFLOW-XXX] Remove wheelhouse files from travis not owned by travis</p></li> |
| <li><p>[AIRFLOW-2336] Use hmsclient in hive_hook</p></li> |
| <li><p>[AIRFLOW-2041] Correct Syntax in Python examples</p></li> |
| <li><p>[AIRFLOW-74] SubdagOperators can consume all celeryd worker processes</p></li> |
| <li><p>[AIRFLOW-2369] Fix gcs tests</p></li> |
| <li><p>[AIRFLOW-2365] Fix autocommit attribute check</p></li> |
| <li><p>[AIRFLOW-2068] MesosExecutor allows optional Docker image</p></li> |
| <li><p>[AIRFLOW-1652] Push DatabricksRunSubmitOperator metadata into XCOM</p></li> |
| <li><p>[AIRFLOW-2234] Enable insert_rows for PrestoHook</p></li> |
| <li><p>[AIRFLOW-2208][Airflow-22208] Link to same DagRun graph from TaskInstance view</p></li> |
| <li><p>[AIRFLOW-1153] Allow HiveOperators to take hiveconfs</p></li> |
| <li><p>[AIRFLOW-775] Fix autocommit settings with Jdbc hook</p></li> |
| <li><p>[AIRFLOW-2364] Warn when setting autocommit on a connection which does not support it</p></li> |
| <li><p>[AIRFLOW-2357] Add persistent volume for the logs</p></li> |
| <li><p>[AIRFLOW-766] Skip conn.commit() when in Auto-commit</p></li> |
| <li><p>[AIRFLOW-2351] Check for valid default_args start_date</p></li> |
| <li><p>[AIRFLOW-1433] Set default rbac to initdb</p></li> |
| <li><p>[AIRFLOW-2270] Handle removed tasks in backfill</p></li> |
| <li><p>[AIRFLOW-2344] Fix <cite>connections -l</cite> to work with pipe/redirect</p></li> |
| <li><p>[AIRFLOW-2300] Add S3 Select functionality to S3ToHiveTransfer</p></li> |
| <li><p>[AIRFLOW-1314] Cleanup the config</p></li> |
| <li><p>[AIRFLOW-1314] Polish some of the Kubernetes docs/config</p></li> |
| <li><p>[AIRFLOW-1314] Improve error handling</p></li> |
| <li><p>[AIRFLOW-1999] Add per-task GCP service account support</p></li> |
| <li><p>[AIRFLOW-1314] Rebasing against master</p></li> |
| <li><p>[AIRFLOW-1314] Small cleanup to address PR comments (#24)</p></li> |
| <li><p>[AIRFLOW-1314] Add executor_config and tests</p></li> |
| <li><p>[AIRFLOW-1314] Improve k8s support</p></li> |
| <li><p>[AIRFLOW-1314] Use VolumeClaim for transporting DAGs</p></li> |
| <li><p>[AIRFLOW-1314] Create integration testing environment</p></li> |
| <li><p>[AIRFLOW-1314] Git Mode to pull in DAGs for Kubernetes Executor</p></li> |
| <li><p>[AIRFLOW-1314] Add support for volume mounts & Secrets in Kubernetes Executor</p></li> |
| <li><p>[AIRFLOW=1314] Basic Kubernetes Mode</p></li> |
| <li><p>[AIRFLOW-2326][AIRFLOW-2222] remove contrib.gcs_copy_operator</p></li> |
| <li><p>[AIRFLOW-2328] Fix empty GCS blob in S3ToGoogleCloudStorageOperator</p></li> |
| <li><p>[AIRFLOW-2350] Fix grammar in UPDATING.md</p></li> |
| <li><p>[AIRFLOW-2302] Fix documentation</p></li> |
| <li><p>[AIRFLOW-2345] pip is not used in this setup.py</p></li> |
| <li><p>[AIRFLOW-2347] Add Banco de Formaturas to Readme</p></li> |
| <li><p>[AIRFLOW-2346] Add Investorise as official user of Airflow</p></li> |
| <li><p>[AIRFLOW-2330] Do not append destination prefix if not given</p></li> |
| <li><p>[AIRFLOW-2240][DASK] Added TLS/SSL support for the dask-distributed scheduler.</p></li> |
| <li><p>[AIRFLOW-2309] Fix duration calculation on TaskFail</p></li> |
| <li><p>[AIRFLOW-2335] fix issue with jdk8 download for ci</p></li> |
| <li><p>[AIRFLOW-2184] Add druid_checker_operator</p></li> |
| <li><p>[AIRFLOW-2299] Add S3 Select functionality to S3FileTransformOperator</p></li> |
| <li><p>[AIRFLOW-2254] Put header as first row in unload</p></li> |
| <li><p>[AIRFLOW-610] Respect _cmd option in config before defaults</p></li> |
| <li><p>[AIRFLOW-2287] Fix incorrect ASF headers</p></li> |
| <li><p>[AIRFLOW-XXX] Add Zego as an Apache Airflow user</p></li> |
| <li><p>[AIRFLOW-952] fix save empty extra field in UI</p></li> |
| <li><p>[AIRFLOW-1325] Add ElasticSearch log handler and reader</p></li> |
| <li><p>[AIRFLOW-2301] Sync files of an S3 key with a GCS path</p></li> |
| <li><p>[AIRFLOW-2293] Fix S3FileTransformOperator to work with boto3</p></li> |
| <li><p>[AIRFLOW-3212][AIRFLOW-2314] Remove only leading slash in GCS path</p></li> |
| <li><p>[AIRFLOW-1509][AIRFLOW-442] SFTP Sensor</p></li> |
| <li><p>[AIRFLOW-2291] Add optional params to ML Engine</p></li> |
| <li><p>[AIRFLOW-1774] Allow consistent templating of arguments in MLEngineBatchPredictionOperator</p></li> |
| <li><p>[AIRFLOW-2302] Add missing operators and hooks</p></li> |
| <li><p>[AIRFLOW-2312] Docs Typo Correction: Corresponding</p></li> |
| <li><p>[AIRFLOW-1623] Trigger on_kill method in operators</p></li> |
| <li><p>[AIRFLOW-2162] When impersonating another user, pass env variables to sudo</p></li> |
| <li><p>[AIRFLOW-2304] Update quickstart doc to mention scheduler part</p></li> |
| <li><p>[AIRFLOW-1633] docker_operator needs a way to set shm_size</p></li> |
| <li><p>[AIRFLOW-1340] Add S3 to Redshift transfer operator</p></li> |
| <li><p>[AIRFLOW-2303] Lists the keys inside an S3 bucket</p></li> |
| <li><p>[AIRFLOW-2209] restore flask_login imports</p></li> |
| <li><p>[AIRFLOW-2306] Add Bonnier Broadcasting to list of current users</p></li> |
| <li><p>[AIRFLOW-2305][AIRFLOW-2027] Fix CI failure caused by []</p></li> |
| <li><p>[AIRFLOW-2281] Add support for Sendgrid categories</p></li> |
| <li><p>[AIRFLOW-2027] Only trigger sleep in scheduler after all files have parsed</p></li> |
| <li><p>[AIRFLOW-2256] SparkOperator: Add Client Standalone mode and retry mechanism</p></li> |
| <li><p>[AIRFLOW-2284] GCS to S3 operator</p></li> |
| <li><p>[AIRFLOW-2287] Update license notices</p></li> |
| <li><p>[AIRFLOW-2296] Add Cinimex DataLab to Readme</p></li> |
| <li><p>[AIRFLOW-2298] Add Kalibrr to who uses Airflow</p></li> |
| <li><p>[AIRFLOW-2292] Fix docstring for S3Hook.get_wildcard_key</p></li> |
| <li><p>[AIRFLOW-XXX] Update PR template</p></li> |
| <li><p>[AIRFLOW-XXX] Remove outdated migrations.sql</p></li> |
| <li><p>[AIRFLOW-2287] Add license header to docs/Makefile</p></li> |
| <li><p>[AIRFLOW-2286] Add tokopedia to the readme</p></li> |
| <li><p>[AIRFLOW-2273] Add Discord webhook operator/hook</p></li> |
| <li><p>[AIRFLOW-2282] Fix grammar in UPDATING.md</p></li> |
| <li><p>[AIRFLOW-2200] Add snowflake operator with tests</p></li> |
| <li><p>[AIRFLOW-2178] Add handling on SLA miss errors</p></li> |
| <li><p>[AIRFLOW-2169] Fix type 'bytes' is not JSON serializable in python3</p></li> |
| <li><p>[AIRFLOW-2215] Pass environment to subprocess.Popen in base_task_runner</p></li> |
| <li><p>[AIRFLOW-2253] Add Airflow CLI instrumentation</p></li> |
| <li><p>[AIRFLOW-2274] Fix Dataflow tests</p></li> |
| <li><p>[AIRFLOW-2269] Add Custom Ink as an Airflow user</p></li> |
| <li><p>[AIRFLOW-2259] Dataflow Hook Index out of range</p></li> |
| <li><p>[AIRFLOW-2233] Update updating.md to include the info of hdfs_sensors renaming</p></li> |
| <li><p>[AIRFLOW-2217] Add Slack webhook operator</p></li> |
| <li><p>[AIRFLOW-1729] improve DagBag time</p></li> |
| <li><p>[AIRFLOW-2264] Improve create_user cli help message</p></li> |
| <li><p>[AIRFLOW-2260][AIRFLOW-2260] SSHOperator add command template .sh files</p></li> |
| <li><p>[AIRFLOW-2261] Check config/env for remote base log folder</p></li> |
| <li><p>[AIRFLOW-2258] Allow import of Parquet-format files into BigQuery</p></li> |
| <li><p>[AIRFLOW-1430] Include INSTALL instructions to avoid GPL</p></li> |
| <li><p>[AIRFLOW-1430] Solve GPL dependency</p></li> |
| <li><p>[AIRFLOW-2251] Add Thinknear as an Airflow user</p></li> |
| <li><p>[AIRFLOW-2244] bugfix: remove legacy LongText code from models.py</p></li> |
| <li><p>[AIRFLOW-2247] Fix RedshiftToS3Transfer not to fail with ValueError</p></li> |
| <li><p>[AIRFLOW-2249] Add side-loading support for Zendesk Hook</p></li> |
| <li><p>[AIRFLOW-XXX] Add Qplum to Airflow users</p></li> |
| <li><p>[AIRFLOW-2228] Enhancements in ValueCheckOperator</p></li> |
| <li><p>[AIRFLOW-1206] Typos</p></li> |
| <li><p>[AIRFLOW-2060] Update pendulum version to 1.4.4</p></li> |
| <li><p>[AIRFLOW-2248] Fix wrong param name in RedshiftToS3Transfer doc</p></li> |
| <li><p>[AIRFLOW-1433][AIRFLOW-85] New Airflow Webserver UI with RBAC support</p></li> |
| <li><p>[AIRFLOW-1235] Fix webserver's odd behaviour</p></li> |
| <li><p>[AIRFLOW-1460] Allow restoration of REMOVED TI's</p></li> |
| <li><p>[AIRFLOW-2235] Fix wrong docstrings in two operators</p></li> |
| <li><p>[AIRFLOW-XXX] Fix chronological order for companies using Airflow</p></li> |
| <li><p>[AIRFLOW-2124] Upload Python file to a bucket for Dataproc</p></li> |
| <li><p>[AIRFLOW-2212] Fix ungenerated sensor API reference</p></li> |
| <li><p>[AIRFLOW-2226] Rename google_cloud_storage_default to google_cloud_default</p></li> |
| <li><p>[AIRFLOW-2211] Rename hdfs_sensors.py to hdfs_sensor.py for consistency</p></li> |
| <li><p>[AIRFLOW-2225] Update document to include DruidDbApiHook</p></li> |
| <li><p>[Airflow-2202] Add filter support in HiveMetastoreHook().max_partition()</p></li> |
| <li><p>[AIRFLOW-2220] Remove duplicate numeric list entry in security.rst</p></li> |
| <li><p>[AIRFLOW-XXX] Update tutorial documentation</p></li> |
| <li><p>[AIRFLOW-2215] Update celery task to preserve environment variables and improve logging on exception</p></li> |
| <li><p>[AIRFLOW-2185] Use state instead of query param</p></li> |
| <li><p>[AIRFLOW-2183] Refactor DruidHook to enable sql</p></li> |
| <li><p>[AIRFLOW-2203] Defer cycle detection</p></li> |
| <li><p>[AIRFLOW-2203] Remove Useless Commands.</p></li> |
| <li><p>[AIRFLOW-2203] Cache signature in apply_defaults</p></li> |
| <li><p>[AIRFLOW-2203] Speed up Operator Resources</p></li> |
| <li><p>[AIRFLOW-2203] Cache static rules (trigger/weight)</p></li> |
| <li><p>[AIRFLOW-2203] Store task ids as sets not lists</p></li> |
| <li><p>[AIRFLOW-2205] Remove unsupported args from JdbcHook doc</p></li> |
| <li><p>[AIRFLOW-2207] Fix flaky test that uses app.cached_app()</p></li> |
| <li><p>[AIRFLOW-2206] Remove unsupported args from JdbcOperator doc</p></li> |
| <li><p>[AIRFLOW-2140] Add Kubernetes scheduler to SparkSubmitOperator</p></li> |
| <li><p>[AIRFLOW-XXX] Add Xero to list of users</p></li> |
| <li><p>[AIRFLOW-2204] Fix webserver debug mode</p></li> |
| <li><p>[AIRFLOW-102] Fix test_complex_template always succeeds</p></li> |
| <li><p>[AIRFLOW-442] Add SFTPHook</p></li> |
| <li><p>[AIRFLOW-2169] Add schema to MySqlToGoogleCloudStorageOperator</p></li> |
| <li><p>[AIRFLOW-2184][AIRFLOW-2138] Google Cloud Storage allow wildcards</p></li> |
| <li><p>[AIRFLOW-1588] Cast Variable value to string</p></li> |
| <li><p>[AIRFLOW-2199] Fix invalid reference to logger</p></li> |
| <li><p>[AIRFLOW-2191] Change scheduler heartbeat logs from info to debug</p></li> |
| <li><p>[AIRFLOW-2106] SalesForce hook sandbox option</p></li> |
| <li><p>[AIRFLOW-2197] Silence hostname_callable config error message</p></li> |
| <li><p>[AIRFLOW-2150] Use lighter call in HiveMetastoreHook().max_partition()</p></li> |
| <li><p>[AIRFLOW-2186] Change the way logging is carried out in few ops</p></li> |
| <li><p>[AIRFLOW-2181] Convert password_auth and test_password_endpoints from DOS to UNIX</p></li> |
| <li><p>[AIRFLOW-2187] Fix Broken Travis CI due to AIRFLOW-2123</p></li> |
| <li><p>[AIRFLOW-2175] Check that filepath is not None</p></li> |
| <li><p>[AIRFLOW-2173] Don't check task IDs for concurrency reached check</p></li> |
| <li><p>[AIRFLOW-2168] Remote logging for Azure Blob Storage</p></li> |
| <li><p>[AIRFLOW-XXX] Add DocuTAP to list of users</p></li> |
| <li><p>[AIRFLOW-2176] Change the way logging is carried out in BQ Get Data Operator</p></li> |
| <li><p>[AIRFLOW-2177] Add mock test for GCS Download op</p></li> |
| <li><p>[AIRFLOW-2123] Install CI dependencies from setup.py</p></li> |
| <li><p>[AIRFLOW-2129] Presto hook calls _parse_exception_message but defines _get_pretty_exception_message</p></li> |
| <li><p>[AIRFLOW-2174] Fix typos and wrongly rendered documents</p></li> |
| <li><p>[AIRFLOW-2171] Store delegated credentials</p></li> |
| <li><p>[AIRFLOW-2166] Restore BQ run_query dialect param</p></li> |
| <li><p>[AIRFLOW-2163] Add HBC Digital to users of Airflow</p></li> |
| <li><p>[AIRFLOW-2065] Fix race-conditions when creating loggers</p></li> |
| <li><p>[AIRFLOW-2147] Plugin manager: added 'sensors' attribute</p></li> |
| <li><p>[AIRFLOW-2059] taskinstance query is awful, un-indexed, and does not scale</p></li> |
| <li><p>[AIRFLOW-2159] Fix a few typos in salesforce_hook</p></li> |
| <li><p>[AIRFLOW-2132] Add step to initialize database</p></li> |
| <li><p>[AIRFLOW-2160] Fix bad rowid deserialization</p></li> |
| <li><p>[AIRFLOW-2161] Add Vevo to list of companies using Airflow</p></li> |
| <li><p>[AIRFLOW-2149] Add link to apache Beam documentation to create self executing Jar</p></li> |
| <li><p>[AIRFLOW-2151] Allow getting the session from AwsHook</p></li> |
| <li><p>[AIRFLOW-2097] tz referenced before assignment</p></li> |
| <li><p>[AIRFLOW-2152] Add Multiply to list of companies using Airflow</p></li> |
| <li><p>[AIRFLOW-1551] Add operator to trigger Jenkins job</p></li> |
| <li><p>[AIRFLOW-2034] Fix mixup between %s and {} when using str.format Convention is to use .format for string formatting outside logging, else use lazy format See comment in related issue <a class="reference external" href="https://github.com/apache/airflow/pull/2823/files">https://github.com/apache/airflow/pull/2823/files</a> Identified problematic case using following command line .git/COMMIT_EDITMSG:<cite>grep -r '%s'./* | grep '.format('</cite></p></li> |
| <li><p>[AIRFLOW-2102] Add custom_args to Sendgrid personalizations</p></li> |
| <li><p>[AIRFLOW-1035][AIRFLOW-1053] import unicode_literals to parse Unicode in HQL</p></li> |
| <li><p>[AIRFLOW-2127] Keep loggers during DB migrations</p></li> |
| <li><p>[AIRFLOW-2146] Resolve issues with BQ using DbApiHook methods</p></li> |
| <li><p>[AIRFLOW-2087] Scheduler Report shows incorrect Total task number</p></li> |
| <li><p>[AIRFLOW-2139] Remove unnecessary boilerplate to get DataFrame using pandas_gbq</p></li> |
| <li><p>[AIRFLOW-2125] Using binary package psycopg2-binary</p></li> |
| <li><p>[AIRFLOW-2142] Include message on mkdir failure</p></li> |
| <li><p>[AIRFLOW-1615] SSHHook: use port specified by Connection</p></li> |
| <li><p>[AIRFLOW-2122] Handle boolean values in sshHook</p></li> |
| <li><p>[AIRFLOW-XXX] Add Tile to the list of users</p></li> |
| <li><p>[AIRFLOW-2130] Add missing Operators to API Reference docs</p></li> |
| <li><p>[AIRFLOW-XXX] Add timeout units (seconds)</p></li> |
| <li><p>[AIRFLOW-2134] Add Alan to the list of companies that use Airflow</p></li> |
| <li><p>[AIRFLOW-2133] Remove references to GitHub issues in CONTRIBUTING</p></li> |
| <li><p>[AIRFLOW-2131] Remove confusing AirflowImport docs</p></li> |
| <li><p>[AIRFLOW-1852] Allow hostname to be overridable.</p></li> |
| <li><p>[AIRFLOW-2126] Add Bluecore to active users</p></li> |
| <li><p>[AIRFLOW-1618] Add feature to create GCS bucket</p></li> |
| <li><p>[AIRFLOW-2108] Fix log indentation in BashOperator</p></li> |
| <li><p>[AIRFLOW-2115] Fix doc links to PythonHosted</p></li> |
| <li><p>[AIRFLOW-XXX] Add contributor from Easy company</p></li> |
| <li><p>[AIRFLOW-1882] Add ignoreUnknownValues option to gcs_to_bq operator</p></li> |
| <li><p>[AIRFLOW-2089] Add on kill for SparkSubmit in Standalone Cluster</p></li> |
| <li><p>[AIRFLOW-2113] Address missing DagRun callbacks Given that the handle_callback method belongs to the DAG object, we are able to get the list of task directly with get_task and reduce the communication with the database, making Airflow more lightweight.</p></li> |
| <li><p>[AIRFLOW-2112] Fix svg width for Recent Tasks on UI.</p></li> |
| <li><p>[AIRFLOW-2116] Set CI Cloudant version to <2.0</p></li> |
| <li><p>[AIRFLOW-XXX] Add PMC to list of companies using Airflow</p></li> |
| <li><p>[AIRFLOW-2100] Fix Broken Documentation Links</p></li> |
| <li><p>[AIRFLOW-1404] Add 'flatten_results' & 'maximum_bytes_billed' to BQ Operator</p></li> |
| <li><p>[AIRFLOW-800] Initialize valid Google BigQuery Connection</p></li> |
| <li><p>[AIRFLOW-1319] Fix misleading SparkSubmitOperator and SparkSubmitHook docstring</p></li> |
| <li><p>[AIRFLOW-1983] Parse environment parameter as template</p></li> |
| <li><p>[AIRFLOW-2095] Add operator to create External BigQuery Table</p></li> |
| <li><p>[AIRFLOW-2085] Add SparkJdbc operator</p></li> |
| <li><p>[AIRFLOW-1002] Add ability to clean all dependencies of removed DAG</p></li> |
| <li><p>[AIRFLOW-2094] Jinjafied project_id, region & zone in DataProc{*} Operators</p></li> |
| <li><p>[AIRFLOW-2092] Fixed incorrect parameter in docstring for FTPHook</p></li> |
| <li><p>[AIRFLOW-XXX] Add SocialCops to Airflow users</p></li> |
| <li><p>[AIRFLOW-2088] Fix duplicate keys in MySQL to GCS Helper function</p></li> |
| <li><p>[AIRFLOW-2091] Fix incorrect docstring parameter in BigQuery Hook</p></li> |
| <li><p>[AIRFLOW-2090] Fix typo in DataStore Hook</p></li> |
| <li><p>[AIRFLOW-1157] Fix missing pools crashing the scheduler</p></li> |
| <li><p>[AIRFLOW-713] Jinjafy {EmrCreateJobFlow,EmrAddSteps}Operator attributes</p></li> |
| <li><p>[AIRFLOW-2083] Docs: Use "its" instead of "it's" where appropriate</p></li> |
| <li><p>[AIRFLOW-2066] Add operator to create empty BQ table</p></li> |
| <li><p>[AIRFLOW-XXX] add Karmic to list of companies</p></li> |
| <li><p>[AIRFLOW-2073] Make FileSensor fail when the file doesn't exist</p></li> |
| <li><p>[AIRFLOW-2078] Improve task_stats and dag_stats performance</p></li> |
| <li><p>[AIRFLOW-2080] Use a log-out icon instead of a power button</p></li> |
| <li><p>[AIRFLOW-2077] Fetch all pages of list_objects_v2 response</p></li> |
| <li><p>[AIRFLOW-XXX] Add TM to list of companies</p></li> |
| <li><p>[AIRFLOW-1985] Impersonation fixes for using <cite>run_as_user</cite></p></li> |
| <li><p>[AIRFLOW-2018][AIRFLOW-2] Make Sensors backward compatible</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo in concepts doc (dag_md)</p></li> |
| <li><p>[AIRFLOW-2069] Allow Bytes to be uploaded to S3</p></li> |
| <li><p>[AIRFLOW-2074] Fix log var name in GHE auth</p></li> |
| <li><p>[AIRFLOW-1927] Convert naive datetimes for TaskInstances</p></li> |
| <li><p>[AIRFLOW-1760] Password auth for experimental API</p></li> |
| <li><p>[AIRFLOW-2038] Add missing kubernetes dependency for dev</p></li> |
| <li><p>[AIRFLOW-2040] Escape special chars in task instance logs URL</p></li> |
| <li><p>[AIRFLOW-1968][AIRFLOW-1520] Add role_arn and aws_account_id/aws_iam_role support back to aws hook</p></li> |
| <li><p>[AIRFLOW-2048] Fix task instance failure string formatting</p></li> |
| <li><p>[AIRFLOW-2046] Fix kerberos error to work with Python 3.x</p></li> |
| <li><p>[AIRFLOW-2063] Add missing docs for GCP</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo in docs</p></li> |
| <li><p>[AIRFLOW-1793] Use docker_url instead of invalid base_url</p></li> |
| <li><p>[AIRFLOW-2055] Elaborate on slightly ambiguous documentation</p></li> |
| <li><p>[AIRFLOW-2039] BigQueryOperator supports priority property</p></li> |
| <li><p>[AIRFLOW-2053] Fix quote character bug in BQ hook</p></li> |
| <li><p>[AIRFLOW-2057] Add Overstock to list of companies</p></li> |
| <li><p>[AIRFLOW-XXX] Add Plaid to Airflow users</p></li> |
| <li><p>[AIRFLOW-2044] Add SparkSubmitOperator to documentation</p></li> |
| <li><p>[AIRFLOW-2037] Add methods to get Hash values of a GCS object</p></li> |
| <li><p>[AIRFLOW-2050] Fix Travis permission problem</p></li> |
| <li><p>[AIRFLOW-2043] Add Intercom to list of companies</p></li> |
| <li><p>[AIRFLOW-2023] Add debug logging around number of queued files</p></li> |
| <li><p>[AIRFLOW-XXX] Add Pernod-ricard as an Airflow user</p></li> |
| <li><p>[AIRFLOW-1453] Add 'steps' into template_fields in EmrAddSteps</p></li> |
| <li><p>[AIRFLOW-2015] Add flag for interactive runs</p></li> |
| <li><p>[AIRFLOW-1895] Fix primary key integrity for mysql</p></li> |
| <li><p>[AIRFLOW-2030] Fix KeyError:<cite>i</cite> in DbApiHook for insert</p></li> |
| <li><p>[AIRFLOW-1943] Add External BigQuery Table feature</p></li> |
| <li><p>[AIRFLOW-2033] Add Google Cloud Storage List Operator</p></li> |
| <li><p>[AIRFLOW-2006] Add local log catching to kubernetes operator</p></li> |
| <li><p>[AIRFLOW-2031] Add missing gcp_conn_id in the example in DataFlow docstrings</p></li> |
| <li><p>[AIRFLOW-2029] Fix AttributeError in BigQueryPandasConnector</p></li> |
| <li><p>[AIRFLOW-2028] Add JobTeaser to official users list</p></li> |
| <li><p>[AIRFLOW-2016] Add support for Dataproc Workflow Templates</p></li> |
| <li><p>[AIRFLOW-2025] Reduced Logging verbosity</p></li> |
| <li><p>[AIRFLOW-1267][AIRFLOW-1874] Add dialect parameter to BigQueryHook</p></li> |
| <li><p>[AIRFLOW-XXX] Fixed a typo</p></li> |
| <li><p>[AIRFLOW-XXX] Typo node to nodes</p></li> |
| <li><p>[AIRFLOW-2019] Update DataflowHook for updating Streaming type job</p></li> |
| <li><p>[AIRFLOW-2017][Airflow 2017] adding query output to PostgresOperator</p></li> |
| <li><p>[AIRFLOW-1889] Split sensors into separate files</p></li> |
| <li><p>[AIRFLOW-1950] Optionally pass xcom_pull task_ids</p></li> |
| <li><p>[AIRFLOW-1755] Allow mount below root</p></li> |
| <li><p>[AIRFLOW-511][Airflow 511] add success/failure callbacks on dag level</p></li> |
| <li><p>[AIRFLOW-192] Add weight_rule param to BaseOperator</p></li> |
| <li><p>[AIRFLOW-2008] Use callable for Python column defaults</p></li> |
| <li><p>[AIRFLOW-1984] Fix to AWS Batch operator</p></li> |
| <li><p>[AIRFLOW-2000] Support non-main dataflow job class</p></li> |
| <li><p>[AIRFLOW-2003] Use flask-caching instead of flask-cache</p></li> |
| <li><p>[AIRFLOW-2002] Do not swallow exception on logging import</p></li> |
| <li><p>[AIRFLOW-2004] Import flash from flask not flask.login</p></li> |
| <li><p>[AIRFLOW-1997] Fix GCP operator doc strings</p></li> |
| <li><p>[AIRFLOW-1996] Update DataflowHook wait_for_done for Streaming type job</p></li> |
| <li><p>[AIRFLOW-1995][Airflow 1995] add on_kill method to SqoopOperator</p></li> |
| <li><p>[AIRFLOW-1770] Allow HiveOperator to take in a file</p></li> |
| <li><p>[AIRFLOW-1994] Change background color of Scheduled state Task Instances</p></li> |
| <li><p>[AIRFLOW-1436][AIRFLOW-1475] EmrJobFlowSensor considers Cancelled step as Successful</p></li> |
| <li><p>[AIRFLOW-1517] Kubernetes operator PR fixes</p></li> |
| <li><p>[AIRFLOW-1517] Addressed PR comments</p></li> |
| <li><p>[AIRFLOW-1517] Started documentation of k8s operator</p></li> |
| <li><p>[AIRFLOW-1517] Restore authorship of resources</p></li> |
| <li><p>[AIRFLOW-1517] Remove authorship of resources</p></li> |
| <li><p>[AIRFLOW-1517] Add minikube for kubernetes integration tests</p></li> |
| <li><p>[AIRFLOW-1517] Restore authorship of resources</p></li> |
| <li><p>[AIRFLOW-1517] fixed license issues</p></li> |
| <li><p>[AIRFLOW-1517] Created more accurate failures for kube cluster issues</p></li> |
| <li><p>[AIRFLOW-1517] Remove authorship of resources</p></li> |
| <li><p>[AIRFLOW-1517] Add minikube for kubernetes integration tests</p></li> |
| <li><p>[AIRFLOW-1988] Change BG color of None state TIs</p></li> |
| <li><p>[AIRFLOW-790] Clean up TaskInstances without DagRuns</p></li> |
| <li><p>[AIRFLOW-1949] Fix var upload, str() produces "b'...'" which is not json</p></li> |
| <li><p>[AIRFLOW-1930] Convert func.now() to timezone.utcnow()</p></li> |
| <li><p>[AIRFLOW-1688] Support load.time_partitioning in bigquery_hook</p></li> |
| <li><p>[AIRFLOW-1975] Make TriggerDagRunOperator callback optional</p></li> |
| <li><p>[AIRFLOW-1480] Render template attributes for ExternalTaskSensor fields</p></li> |
| <li><p>[AIRFLOW-1958] Add kwargs to send_email</p></li> |
| <li><p>[AIRFLOW-1976] Fix for missing log/logger attribute FileProcessHandler</p></li> |
| <li><p>[AIRFLOW-1982] Fix Executor event log formatting</p></li> |
| <li><p>[AIRFLOW-1971] Propagate hive config on impersonation</p></li> |
| <li><p>[AIRFLOW-1969] Always use HTTPS URIs for Google OAuth2</p></li> |
| <li><p>[AIRFLOW-1954] Add DataFlowTemplateOperator</p></li> |
| <li><p>[AIRFLOW-1963] Add config for HiveOperator mapred_queue</p></li> |
| <li><p>[AIRFLOW-1946][AIRFLOW-1855] Create a BigQuery Get Data Operator</p></li> |
| <li><p>[AIRFLOW-1953] Add labels to dataflow operators</p></li> |
| <li><p>[AIRFLOW-1967] Update celery to 4.0.2</p></li> |
| <li><p>[AIRFLOW-1964] Add Upsight to list of Airflow users</p></li> |
| <li><p>[AIRFLOW-XXX] Changelog for 1.9.0</p></li> |
| <li><p>[AIRFLOW-1470] Implement BashSensor operator</p></li> |
| <li><p>[AIRFLOW-XXX] Pin sqlalchemy dependency</p></li> |
| <li><p>[AIRFLOW-1955] Do not reference unassigned variable</p></li> |
| <li><p>[AIRFLOW-1957] Add contributor to BalanceHero in Readme</p></li> |
| <li><p>[AIRFLOW-1517] Restore authorship of secrets and init container</p></li> |
| <li><p>[AIRFLOW-1517] Remove authorship of secrets and init container</p></li> |
| <li><p>[AIRFLOW-1935] Add BalanceHero to readme</p></li> |
| <li><p>[AIRFLOW-1939] add astronomer contributors</p></li> |
| <li><p>[AIRFLOW-1517] Kubernetes Operator</p></li> |
| <li><p>[AIRFLOW-1928] Fix @once with catchup=False</p></li> |
| <li><p>[AIRFLOW-1937] Speed up scheduling by committing in batch</p></li> |
| <li><p>[AIRFLOW-1821] Enhance default logging config by removing extra loggers</p></li> |
| <li><p>[AIRFLOW-1904] Correct DAG fileloc to the right filepath</p></li> |
| <li><p>[AIRFLOW-1909] Update docs with supported versions of MySQL server</p></li> |
| <li><p>[AIRFLOW-1915] Relax flask-wtf dependency specification</p></li> |
| <li><p>[AIRFLOW-1920] Update CONTRIBUTING.md to reflect enforced linting rules</p></li> |
| <li><p>[AIRFLOW-1942] Update Sphinx docs to remove deprecated import structure</p></li> |
| <li><p>[AIRFLOW-1846][AIRFLOW-1697] Hide Ad Hoc Query behind secure_mode config</p></li> |
| <li><p>[AIRFLOW-1948] Include details for on_kill failure</p></li> |
| <li><p>[AIRFLOW-1938] Clean up unused exception</p></li> |
| <li><p>[AIRFLOW-1932] Add GCP Pub/Sub Pull and Ack</p></li> |
| <li><p>[AIRFLOW-XXX] Purge coveralls</p></li> |
| <li><p>[AIRFLOW-XXX] Remove unused coveralls token</p></li> |
| <li><p>[AIRFLOW-1938] Remove tag version check in setup.py</p></li> |
| <li><p>[AIRFLOW-1916] Don't upload logs to remote from <cite>run --raw</cite></p></li> |
| <li><p>[AIRFLOW-XXX] Fix failing PubSub tests on Python3</p></li> |
| <li><p>[AIRFLOW-XXX] Upgrade to Python 3.5 and disable dask tests</p></li> |
| <li><p>[AIRFLOW-1913] Add new GCP PubSub operators</p></li> |
| <li><p>[AIRFLOW-1525] Fix minor LICENSE and NOTICE issues</p></li> |
| <li><p>[AIRFLOW-1687] fix fernet error without encryption</p></li> |
| <li><p>[AIRFLOW-1912] airflow.processor should not propagate logging</p></li> |
| <li><p>[AIRFLOW-1911] Rename celeryd_concurrency</p></li> |
| <li><p>[AIRFLOW-1885] Fix IndexError in ready_prefix_on_cmdline</p></li> |
| <li><p>[AIRFLOW-1854] Improve Spark Submit operator for standalone cluster mode</p></li> |
| <li><p>[AIRFLOW-1908] Fix celery broker options config load</p></li> |
| <li><p>[AIRFLOW-1907] Pass max_ingestion_time to Druid hook</p></li> |
| <li><p>[AIRFLOW-1909] Add away to list of users</p></li> |
| <li><p>[AIRFLOW-1893][AIRFLOW-1901] Propagate PYTHONPATH when using impersonation</p></li> |
| <li><p>[AIRFLOW-1892] Modify BQ hook to extract data filtered by column</p></li> |
| <li><p>[AIRFLOW-1829] Support for schema updates in query jobs</p></li> |
| <li><p>[AIRFLOW-1840] Make celery configuration congruent with Celery 4</p></li> |
| <li><p>[AIRFLOW-1878] Fix stderr/stdout redirection for tasks</p></li> |
| <li><p>[AIRFLOW-1897][AIRFLOW-1873] Task Logs for running instance not visible in WebUI</p></li> |
| <li><p>[AIRFLOW-1896] FIX bleach <> html5lib incompatibility</p></li> |
| <li><p>[AIRFLOW-1884][AIRFLOW-1059] Reset orphaned task state for external dagruns</p></li> |
| <li><p>[AIRFLOW-XXX] Fix typo in comment</p></li> |
| <li><p>[AIRFLOW-1869] Do not emit spurious warning on missing logs</p></li> |
| <li><p>[AIRFLOW-1888] Add AWS Redshift Cluster Sensor</p></li> |
| <li><p>[AIRFLOW-1887] Renamed endpoint url variable</p></li> |
| <li><p>[AIRFLOW-1873] Set TI.try_number to right value depending TI state</p></li> |
| <li><p>[AIRFLOW-1891] Fix non-ascii typo in default configuration template</p></li> |
| <li><p>[AIRFLOW-1879] Handle ti log entirely within ti</p></li> |
| <li><p>[AIRFLOW-1869] Write more error messages into gcs and file logs</p></li> |
| <li><p>[AIRFLOW-1876] Write subtask id to task log header</p></li> |
| <li><p>[AIRFLOW-1554] Fix wrong DagFileProcessor termination method call</p></li> |
| <li><p>[AIRFLOW-342] Do not use amqp, rpc as result backend</p></li> |
| <li><p>[AIRFLOW-966] Make celery broker_transport_options configurable</p></li> |
| <li><p>[AIRFLOW-1881] Make operator log in task log</p></li> |
| <li><p>[AIRFLOW-XXX] Added DataReply to the list of Airflow Users</p></li> |
| <li><p>[AIRFLOW-1883] Get File Size for objects in Google Cloud Storage</p></li> |
| <li><p>[AIRFLOW-1872] Set context for all handlers including parents</p></li> |
| <li><p>[AIRFLOW-1855][AIRFLOW-1866] Add GCS Copy Operator to copy multiple files</p></li> |
| <li><p>[AIRFLOW-1870] Enable flake8 tests</p></li> |
| <li><p>[AIRFLOW-1785] Enable Python 3 tests</p></li> |
| <li><p>[AIRFLOW-1850] Copy cmd before masking</p></li> |
| <li><p>[AIRFLOW-1665] Reconnect on database errors</p></li> |
| <li><p>[AIRFLOW-1559] Dispose SQLAlchemy engines on exit</p></li> |
| <li><p>[AIRFLOW-1559] Close file handles in subprocesses</p></li> |
| <li><p>[AIRFLOW-1559] Make database pooling optional</p></li> |
| <li><p>[AIRFLOW-1848][Airflow-1848] Fix DataFlowPythonOperator py_file extension doc comment</p></li> |
| <li><p>[AIRFLOW-1843] Add Google Cloud Storage Sensor with prefix</p></li> |
| <li><p>[AIRFLOW-1803] Time zone documentation</p></li> |
| <li><p>[AIRFLOW-1826] Update views to use timezone aware objects</p></li> |
| <li><p>[AIRFLOW-1827] Fix api endpoint date parsing</p></li> |
| <li><p>[AIRFLOW-1806] Use naive datetime when using cron</p></li> |
| <li><p>[AIRFLOW-1809] Update tests to use timezone aware objects</p></li> |
| <li><p>[AIRFLOW-1806] Use naive datetime for cron scheduling</p></li> |
| <li><p>[AIRFLOW-1807] Force use of time zone aware db fields</p></li> |
| <li><p>[AIRFLOW-1808] Convert all utcnow() to time zone aware</p></li> |
| <li><p>[AIRFLOW-1804] Add time zone configuration options</p></li> |
| <li><p>[AIRFLOW-1802] Convert database fields to timezone aware</p></li> |
| <li><p>[AIRFLOW-XXX] Add dask lock files to excludes</p></li> |
| <li><p>[AIRFLOW-1790] Add support for AWS Batch operator</p></li> |
| <li><p>[AIRFLOW-XXX] Update README.md</p></li> |
| <li><p>[AIRFLOW-1820] Remove timestamp from metric name</p></li> |
| <li><p>[AIRFLOW-1810] Remove unused mysql import in migrations.</p></li> |
| <li><p>[AIRFLOW-1838] Properly log collect_dags exception</p></li> |
| <li><p>[AIRFLOW-1842] Fixed Super class name for the gcs to gcs copy operator</p></li> |
| <li><p>[AIRFLOW-1845] Modal background now covers long or tall pages</p></li> |
| <li><p>[AIRFLOW-1229] Add link to Run Id, incl execution_date</p></li> |
| <li><p>[AIRFLOW-1842] Add gcs to gcs copy operator with renaming if required</p></li> |
| <li><p>[AIRFLOW-1841] change False to None in operator and hook</p></li> |
| <li><p>[AIRFLOW-1839] Fix more bugs in S3Hook boto -> boto3 migration</p></li> |
| <li><p>[AIRFLOW-1830] Support multiple domains in Google authentication backend</p></li> |
| <li><p>[AIRFLOW-1831] Add driver-classpath spark submit</p></li> |
| <li><p>[AIRFLOW-1795] Correctly call S3Hook after migration to boto3</p></li> |
| <li><p>[AIRFLOW-1811] Fix render Druid operator</p></li> |
| <li><p>[AIRFLOW-1819] Fix slack operator unittest bug</p></li> |
| <li><p>[AIRFLOW-1805] Allow Slack token to be passed through connection</p></li> |
| <li><p>[AIRFLOW-1816] Add region param to Dataproc operators</p></li> |
| <li><p>[AIRFLOW-868] Add postgres_to_gcs operator and unittests</p></li> |
| <li><p>[AIRFLOW-1613] make mysql_to_gcs_operator py3 compatible</p></li> |
| <li><p>[AIRFLOW-1817] use boto3 for s3 dependency</p></li> |
| <li><p>[AIRFLOW-1813] Bug SSH Operator empty buffer</p></li> |
| <li><p>[AIRFLOW-1801][AIRFLOW-288] Url encode execution dates</p></li> |
| <li><p>[AIRFLOW-1563] Catch OSError while symlinking the latest log directory</p></li> |
| <li><p>[AIRFLOW-1794] Remove uses of Exception.message for Python 3</p></li> |
| <li><p>[AIRFLOW-1799] Fix logging line which raises errors</p></li> |
| <li><p>[AIRFLOW-1102] Upgrade gunicorn >=19.4.0</p></li> |
| <li><p>[AIRFLOW-1756] Fix S3TaskHandler to work with Boto3-based S3Hook</p></li> |
| <li><p>[AIRFLOW-1797] S3Hook.load_string did not work on Python3</p></li> |
| <li><p>[AIRFLOW-646] Add docutils to setup_requires</p></li> |
| <li><p>[AIRFLOW-1792] Missing intervals DruidOperator</p></li> |
| <li><p>[AIRFLOW-1789][AIRFLOW-1712] Log SSHOperator stderr to log.warning</p></li> |
| <li><p>[AIRFLOW-1787] Fix task instance batch clear and set state bugs</p></li> |
| <li><p>[AIRFLOW-1780] Fix long output lines with unicode from hanging parent</p></li> |
| <li><p>[AIRFLOW-387] Close SQLAlchemy sessions properly</p></li> |
| <li><p>[AIRFLOW-1779] Add keepalive packets to ssh hook</p></li> |
| <li><p>[AIRFLOW-1669] Fix Docker and pin moto to 1.1.19</p></li> |
| <li><p>[AIRFLOW-71] Add support for private Docker images</p></li> |
| <li><p>[AIRFLOW-XXX] Give a clue what the 'ds' variable is</p></li> |
| <li><p>[AIRFLOW-XXX] Correct typos in the faq docs page</p></li> |
| <li><p>[AIRFLOW-1571] Add AWS Lambda Hook</p></li> |
| <li><p>[AIRFLOW-1675] Fix docstrings for API docs</p></li> |
| <li><p>[AIRFLOW-1712][AIRFLOW-756][AIRFLOW-751] Log SSHOperator output</p></li> |
| <li><p>[AIRFLOW-1776] Capture stdout and stderr for logging</p></li> |
| <li><p>[AIRFLOW-1765] Make experimental API securable without needing Kerberos.</p></li> |
| <li><p>[AIRFLOW-1764] The web interface should not use the experimental API</p></li> |
| <li><p>[AIRFLOW-1771] Rename heartbeat to avoid confusion</p></li> |
| <li><p>[AIRFLOW-1769] Add support for templates in VirtualenvOperator</p></li> |
| <li><p>[AIRFLOW-1763] Fix S3TaskHandler unit tests</p></li> |
| <li><p>[AIRFLOW-1315] Add Qubole File & Partition Sensors</p></li> |
| <li><p>[AIRFLOW-1018] Make processor use logging framework</p></li> |
| <li><p>[AIRFLOW-1695] Add RedshiftHook using boto3</p></li> |
| <li><p>[AIRFLOW-1706] Fix query error for MSSQL backend</p></li> |
| <li><p>[AIRFLOW-1711] Use ldap3 dict for group membership</p></li> |
| <li><p>[AIRFLOW-1723] Make sendgrid a plugin</p></li> |
| <li><p>[AIRFLOW-1757] Add missing options to SparkSubmitOperator</p></li> |
| <li><p>[AIRFLOW-1734][Airflow 1734] Sqoop hook/operator enhancements</p></li> |
| <li><p>[AIRFLOW-1761] Fix type in scheduler.rst</p></li> |
| <li><p>[AIRFLOW-1731] Set pythonpath for logging</p></li> |
| <li><p>[AIRFLOW-1641] Handle executor events in the scheduler</p></li> |
| <li><p>[AIRFLOW-1744] Make sure max_tries can be set</p></li> |
| <li><p>[AIRFLOW-1732] Improve dataflow hook logging</p></li> |
| <li><p>[AIRFLOW-1736] Add HotelQuickly to Who Uses Airflow</p></li> |
| <li><p>[AIRFLOW-1657] Handle failing qubole operator</p></li> |
| <li><p>[AIRFLOW-1677] Fix typo in example_qubole_operator</p></li> |
| <li><p>[AIRFLOW-926] Fix JDBC Hook</p></li> |
| <li><p>[AIRFLOW-1520] Boto3 S3Hook, S3Log</p></li> |
| <li><p>[AIRFLOW-1716] Fix multiple __init__ def in SimpleDag</p></li> |
| <li><p>[AIRFLOW-XXX] Fix DateTime in Tree View</p></li> |
| <li><p>[AIRFLOW-1719] Fix small typo</p></li> |
| <li><p>[AIRFLOW-1432] Charts label for Y axis not visible</p></li> |
| <li><p>[AIRFLOW-1743] Verify ldap filters correctly</p></li> |
| <li><p>[AIRFLOW-1745] Restore default signal disposition</p></li> |
| <li><p>[AIRFLOW-1741] Correctly hide second chart on task duration page</p></li> |
| <li><p>[AIRFLOW-1728] Add networkUri, subnet, tags to Dataproc operator</p></li> |
| <li><p>[AIRFLOW-1726] Add copy_expert psycopg2 method to PostgresHook</p></li> |
| <li><p>[AIRFLOW-1330] Add conn_type argument to CLI when adding connection</p></li> |
| <li><p>[AIRFLOW-1698] Remove SCHEDULER_RUNS env var in systemd</p></li> |
| <li><p>[AIRFLOW-1694] Stop using itertools.izip</p></li> |
| <li><p>[AIRFLOW-1692] Change test_views filename to support Windows</p></li> |
| <li><p>[AIRFLOW-1722] Fix typo in scheduler autorestart output filename</p></li> |
| <li><p>[AIRFLOW-1723] Support sendgrid in email backend</p></li> |
| <li><p>[AIRFLOW-1718] Set num_retries on Dataproc job request execution</p></li> |
| <li><p>[AIRFLOW-1727] Add unit tests for DataProcHook</p></li> |
| <li><p>[AIRFLOW-1631] Fix timing issue in unit test</p></li> |
| <li><p>[AIRFLOW-1631] Fix local executor unbound parallelism</p></li> |
| <li><p>[AIRFLOW-1724] Add Fundera to Who uses Airflow?</p></li> |
| <li><p>[AIRFLOW-1683] Cancel BigQuery job on timeout.</p></li> |
| <li><p>[AIRFLOW-1714] Fix misspelling: s/separate/separate/</p></li> |
| <li><p>[AIRFLOW-1681] Add batch clear in task instance view</p></li> |
| <li><p>[AIRFLOW-1696] Fix dataproc version label error</p></li> |
| <li><p>[AIRFLOW-1613] Handle binary field in MySqlToGoogleCloudStorageOperator</p></li> |
| <li><p>[AIRFLOW-1697] Mode to disable charts endpoint</p></li> |
| <li><p>[AIRFLOW-1691] Add better Google cloud logging documentation</p></li> |
| <li><p>[AIRFLOW-1690] Add detail to gcs error messages</p></li> |
| <li><p>[AIRFLOW-1682] Make S3TaskHandler write to S3 on close</p></li> |
| <li><p>[AIRFLOW-1634] Adds task_concurrency feature</p></li> |
| <li><p>[AIRFLOW-1676] Make GCSTaskHandler write to GCS on close</p></li> |
| <li><p>[AIRFLOW-1678] Fix erroneously repeated word in function docstrings</p></li> |
| <li><p>[AIRFLOW-1323] Made Dataproc operator parameter names consistent</p></li> |
| <li><p>[AIRFLOW-1590] fix unused module and variable</p></li> |
| <li><p>[AIRFLOW-1671] Add @apply_defaults back to gcs download operator</p></li> |
| <li><p>[AIRFLOW-988] Fix repeating SLA miss callbacks</p></li> |
| <li><p>[AIRFLOW-1611] Customize logging</p></li> |
| <li><p>[AIRFLOW-1668] Expose keepalives_idle for Postgres connections</p></li> |
| <li><p>[AIRFLOW-1658] Kill Druid task on timeout</p></li> |
| <li><p>[AIRFLOW-1669][AIRFLOW-1368] Fix Docker import</p></li> |
| <li><p>[AIRFLOW-891] Make webserver clock include date</p></li> |
| <li><p>[AIRFLOW-1560] Add AWS DynamoDB hook and operator for inserting batch items</p></li> |
| <li><p>[AIRFLOW-1654] Show tooltips for link icons in DAGs view</p></li> |
| <li><p>[AIRFLOW-1660] Change webpage width to full-width</p></li> |
| <li><p>[AIRFLOW-1664] write file as binary instead of str</p></li> |
| <li><p>[AIRFLOW-1659] Fix invalid obj attribute bug in file_task_handler.py</p></li> |
| <li><p>[AIRFLOW-1635] Allow creating GCP connection without requiring a JSON file</p></li> |
| <li><p>[AIRFLOW-1650] Fix custom celery config loading</p></li> |
| <li><p>[AIRFLOW-1647] Fix Spark-sql hook</p></li> |
| <li><p>[AIRFLOW-1587] Fix CeleryExecutor import error</p></li> |
| <li><p>[Airflow-1640][AIRFLOW-1640] Add qubole default connection</p></li> |
| <li><p>[AIRFLOW-1576] Added region param to Dataproc{*}Operators</p></li> |
| <li><p>[AIRFLOW-1643] Add healthjump to officially using list</p></li> |
| <li><p>[AIRFLOW-1626] Add Azri Solutions to Airflow users</p></li> |
| <li><p>[AIRFLOW-1636] Add AWS and EMR connection type</p></li> |
| <li><p>[AIRFLOW-1527] Refactor celery config</p></li> |
| <li><p>[AIRFLOW-1639] Fix Fernet error handling</p></li> |
| <li><p>[AIRFLOW-1637] Fix Travis CI build status link</p></li> |
| <li><p>[AIRFLOW-1628] Fix docstring of sqlsensor</p></li> |
| <li><p>[AIRFLOW-1331] add SparkSubmitOperator option</p></li> |
| <li><p>[AIRFLOW-1627] Only query pool in SubDAG init when necessary</p></li> |
| <li><p>[AIRFLOW-1629] Make extra a textarea in edit connections form</p></li> |
| <li><p>[AIRFLOW-1368] Automatically remove Docker container on exit</p></li> |
| <li><p>[AIRFLOW-289] Make Airflow timezone independent</p></li> |
| <li><p>[AIRFLOW-1356] Add <cite>--celery_hostname</cite> to <cite>airflow worker</cite></p></li> |
| <li><p>[AIRFLOW-1247] Fix ignore_all_dependencies argument ignored</p></li> |
| <li><p>[AIRFLOW-1621] Add tests for server side paging</p></li> |
| <li><p>[AIRFLOW-1591] Avoid attribute error when rendering logging filename</p></li> |
| <li><p>[AIRFLOW-1031] Replace hard-code to DagRun.ID_PREFIX</p></li> |
| <li><p>[AIRFLOW-1604] Rename logger to log</p></li> |
| <li><p>[AIRFLOW-1512] Add PythonVirtualenvOperator</p></li> |
| <li><p>[AIRFLOW-1617] Fix XSS vulnerability in Variable endpoint</p></li> |
| <li><p>[AIRFLOW-1497] Reset hidden fields when changing connection type</p></li> |
| <li><p>[AIRFLOW-1619] Add poll_sleep parameter to GCP dataflow operator</p></li> |
| <li><p>[AIRFLOW-XXX] Remove landscape.io config</p></li> |
| <li><p>[AIRFLOW-XXX] Remove non working service badges</p></li> |
| <li><p>[AIRFLOW-1177] Fix Variable.setdefault w/existing JSON</p></li> |
| <li><p>[AIRFLOW-1600] Fix exception handling in get_fernet</p></li> |
| <li><p>[AIRFLOW-1614] Replace inspect.stack() with sys._getframe()</p></li> |
| <li><p>[AIRFLOW-1519] Add server side paging in DAGs list</p></li> |
| <li><p>[AIRFLOW-1309] Allow hive_to_druid to take tblproperties</p></li> |
| <li><p>[AIRFLOW-1613] Make MySqlToGoogleCloudStorageOperator compatible with python3</p></li> |
| <li><p>[AIRFLOW-1603] add PAYMILL to companies list</p></li> |
| <li><p>[AIRFLOW-1609] Fix gitignore to ignore all venvs</p></li> |
| <li><p>[AIRFLOW-1601] Add configurable task cleanup time</p></li> |
| </ul> |
| </div> |
| <div class="section" id="airflow-1-9-0-2018-01-02"> |
| <h2>Airflow 1.9.0, 2018-01-02<a class="headerlink" href="#airflow-1-9-0-2018-01-02" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-1525] Fix minor LICENSE and NOTICE issues</p></li> |
| <li><p>[AIRFLOW-XXX] Bump version to 1.9.0</p></li> |
| <li><p>[AIRFLOW-1897][AIRFLOW-1873] Task Logs for running instance not visible in WebUI</p></li> |
| <li><p>[AIRFLOW-XXX] Make sure session is committed</p></li> |
| <li><p>[AIRFLOW-1896] FIX bleach <> html5lib incompatibility</p></li> |
| <li><p>[AIRFLOW-XXX] Fix log handler test</p></li> |
| <li><p>[AIRFLOW-1873] Set TI.try_number to right value depending TI state</p></li> |
| <li><p>[AIRFLOW-1554] Fix wrong DagFileProcessor termination method call</p></li> |
| <li><p>[AIRFLOW-1872] Set context for all handlers including parents</p></li> |
| <li><p>[AIRFLOW-XXX] Add dask lock files to excludes</p></li> |
| <li><p>[AIRFLOW-1839] Fix more bugs in S3Hook boto -> boto3 migration</p></li> |
| <li><p>[AIRFLOW-1795] Correctly call S3Hook after migration to boto3</p></li> |
| <li><p>[AIRFLOW-1813] Bug SSH Operator empty buffer</p></li> |
| <li><p>[AIRFLOW-1794] Remove uses of Exception.message for Python 3</p></li> |
| <li><p>[AIRFLOW-1799] Fix logging line which raises errors</p></li> |
| <li><p>[AIRFLOW-1102] Upgrade gunicorn >=19.4.0</p></li> |
| <li><p>[AIRFLOW-1756] Fix S3TaskHandler to work with Boto3-based S3Hook</p></li> |
| <li><p>[AIRFLOW-1797] S3Hook.load_string did not work on Python3</p></li> |
| <li><p>[AIRFLOW-1792] Missing intervals DruidOperator</p></li> |
| <li><p>[AIRFLOW-1789][AIRFLOW-1712] Log SSHOperator stderr to log.warning</p></li> |
| <li><p>[AIRFLOW-1669] Fix Docker and pin Moto to 1.1.19</p></li> |
| <li><p>[AIRFLOW-71] Add support for private Docker images</p></li> |
| <li><p>[AIRFLOW-1779] Add keepalive packets to ssh hook</p></li> |
| <li><p>[AIRFLOW-XXX] Give a clue what the 'ds' variable is</p></li> |
| <li><p>[AIRFLOW-XXX] Correct typos in the faq docs page</p></li> |
| <li><p>[AIRFLOW-1571] Add AWS Lambda Hook</p></li> |
| <li><p>[AIRFLOW-1675] Fix docstrings for API docs</p></li> |
| <li><p>[AIRFLOW-1712][AIRFLOW-756][AIRFLOW-751] Log SSHOperator output</p></li> |
| <li><p>[AIRFLOW-1776] Capture stdout and stderr for logging</p></li> |
| <li><p>[AIRFLOW-1765] Make experimental API securable without needing Kerberos.</p></li> |
| <li><p>[AIRFLOW-1764] The web interface should not use the experimental API</p></li> |
| <li><p>[AIRFLOW-1634] Adds task_concurrency feature</p></li> |
| <li><p>[AIRFLOW-1018] Make processor use logging framework</p></li> |
| <li><p>[AIRFLOW-1695] Add RedshiftHook using boto3</p></li> |
| <li><p>[AIRFLOW-1706] Fix query error for MSSQL backend</p></li> |
| <li><p>[AIRFLOW-1711] Use ldap3 dict for group membership</p></li> |
| <li><p>[AIRFLOW-1757] Add missing options to SparkSubmitOperator</p></li> |
| <li><p>[AIRFLOW-1734][Airflow 1734] Sqoop hook/operator enhancements</p></li> |
| <li><p>[AIRFLOW-1731] Set pythonpath for logging</p></li> |
| <li><p>[AIRFLOW-1641] Handle executor events in the scheduler</p></li> |
| <li><p>[AIRFLOW-1744] Make sure max_tries can be set</p></li> |
| <li><p>[AIRFLOW-1330] Add conn_type argument to CLI when adding connection</p></li> |
| <li><p>[AIRFLOW-926] Fix JDBC Hook</p></li> |
| <li><p>[AIRFLOW-1520] Boto3 S3Hook, S3Log</p></li> |
| <li><p>[AIRFLOW-XXX] Fix DateTime in Tree View</p></li> |
| <li><p>[AIRFLOW-1432] Charts label for Y axis not visible</p></li> |
| <li><p>[AIRFLOW-1743] Verify ldap filters correctly</p></li> |
| <li><p>[AIRFLOW-1745] Restore default signal disposition</p></li> |
| <li><p>[AIRFLOW-1741] Correctly hide second chart on task duration page</p></li> |
| <li><p>[AIRFLOW-1726] Add copy_expert psycopg2 method to PostgresHook</p></li> |
| <li><p>[AIRFLOW-1698] Remove SCHEDULER_RUNS env var in systemd</p></li> |
| <li><p>[AIRFLOW-1694] Stop using itertools.izip</p></li> |
| <li><p>[AIRFLOW-1692] Change test_views filename to support Windows</p></li> |
| <li><p>[AIRFLOW-1722] Fix typo in scheduler autorestart output filename</p></li> |
| <li><p>[AIRFLOW-1691] Add better Google Cloud logging documentation</p></li> |
| <li><p>[AIRFLOW-1690] Add detail to gcs error messages</p></li> |
| <li><p>[AIRFLOW-1682] Make S3TaskHandler write to S3 on close</p></li> |
| <li><p>[AIRFLOW-1676] Make GCSTaskHandler write to GCS on close</p></li> |
| <li><p>[AIRFLOW-1635] Allow creating GCP connection without requiring a JSON file</p></li> |
| <li><p>[AIRFLOW-1323] Made Dataproc operator parameter names consistent</p></li> |
| <li><p>[AIRFLOW-1590] fix unused module and variable</p></li> |
| <li><p>[AIRFLOW-988] Fix repeating SLA miss callbacks</p></li> |
| <li><p>[AIRFLOW-1611] Customize logging</p></li> |
| <li><p>[AIRFLOW-1668] Expose keepalives_idle for Postgres connections</p></li> |
| <li><p>[AIRFLOW-1658] Kill Druid task on timeout</p></li> |
| <li><p>[AIRFLOW-1669][AIRFLOW-1368] Fix Docker import</p></li> |
| <li><p>[AIRFLOW-1560] Add AWS DynamoDB hook and operator for inserting batch items</p></li> |
| <li><p>[AIRFLOW-1654] Show tooltips for link icons in DAGs view</p></li> |
| <li><p>[AIRFLOW-1660] Change webpage width to full-width</p></li> |
| <li><p>[AIRFLOW-1664] write file as binary instead of str</p></li> |
| <li><p>[AIRFLOW-1659] Fix invalid obj attribute bug in file_task_handler.py</p></li> |
| <li><p>[AIRFLOW-1650] Fix custom celery config loading</p></li> |
| <li><p>[AIRFLOW-1647] Fix Spark-sql hook</p></li> |
| <li><p>[AIRFLOW-1587] Fix CeleryExecutor import error</p></li> |
| <li><p>[AIRFLOW-1636] Add AWS and EMR connection type</p></li> |
| <li><p>[AIRFLOW-1527] Refactor celery config</p></li> |
| <li><p>[AIRFLOW-1639] Fix Fernet error handling</p></li> |
| <li><p>[AIRFLOW-1628] Fix docstring of sqlsensor</p></li> |
| <li><p>[AIRFLOW-1331] add SparkSubmitOperator option</p></li> |
| <li><p>[AIRFLOW-1627] Only query pool in SubDAG init when necessary</p></li> |
| <li><p>[AIRFLOW-1629] Make extra a textarea in edit connections form</p></li> |
| <li><p>[AIRFLOW-1621] Add tests for server side paging</p></li> |
| <li><p>[AIRFLOW-1519] Add server side paging in DAGs list</p></li> |
| <li><p>[AIRFLOW-289] Make Airflow timezone independent</p></li> |
| <li><p>[AIRFLOW-1356] Add <cite>--celery_hostname</cite> to <cite>airflow worker</cite></p></li> |
| <li><p>[AIRFLOW-1591] Avoid attribute error when rendering logging filename</p></li> |
| <li><p>[AIRFLOW-1031] Replace hard-code to DagRun.ID_PREFIX</p></li> |
| <li><p>[AIRFLOW-1604] Rename logger to log</p></li> |
| <li><p>[AIRFLOW-1512] Add PythonVirtualenvOperator</p></li> |
| <li><p>[AIRFLOW-1617] Fix XSS vulnerability in Variable endpoint</p></li> |
| <li><p>[AIRFLOW-1497] Reset hidden fields when changing connection type</p></li> |
| <li><p>[AIRFLOW-1177] Fix Variable.setdefault w/existing JSON</p></li> |
| <li><p>[AIRFLOW-1600] Fix exception handling in get_fernet</p></li> |
| <li><p>[AIRFLOW-1614] Replace inspect.stack() with sys._getframe()</p></li> |
| <li><p>[AIRFLOW-1613] Make MySqlToGoogleCloudStorageOperator compatible with python3</p></li> |
| <li><p>[AIRFLOW-1609] Fix gitignore to ignore all venvs</p></li> |
| <li><p>[AIRFLOW-1601] Add configurable task cleanup time</p></li> |
| <li><p>[AIRFLOW-XXX] Bumping airflow 1.9.0alpha0 version</p></li> |
| <li><p>[AIRFLOW-1608] Handle pending job state in GCP Dataflow hook</p></li> |
| <li><p>[AIRFLOW-1606] Use non static DAG.sync_to_db</p></li> |
| <li><p>[AIRFLOW-1606][Airflow-1606][AIRFLOW-1605][AIRFLOW-160] DAG.sync_to_db is now a normal method</p></li> |
| <li><p>[AIRFLOW-1602] LoggingMixin in DAG class</p></li> |
| <li><p>[AIRFLOW-1593] expose load_string in WasbHook</p></li> |
| <li><p>[AIRFLOW-1597] Add GameWisp as Airflow user</p></li> |
| <li><p>[AIRFLOW-1594] Don't install test packages into Python root.[]</p></li> |
| <li><p>[AIRFLOW-1582] Improve logging within Airflow</p></li> |
| <li><p>[AIRFLOW-1476] add INSTALL instruction for source releases</p></li> |
| <li><p>[AIRFLOW-XXX] Save username and password in airflow-pr</p></li> |
| <li><p>[AIRFLOW-1522] Increase text size for var field in variables for MySQL</p></li> |
| <li><p>[AIRFLOW-950] Missing AWS integrations on documentation::integrations</p></li> |
| <li><p>[AIRFLOW-XXX] 1.8.2 release notes</p></li> |
| <li><p>[AIRFLOW-1573] Remove <cite>thrift < 0.10.0</cite> requirement</p></li> |
| <li><p>[AIRFLOW-1584] Remove insecure /headers endpoint</p></li> |
| <li><p>[AIRFLOW-1586] Add mapping for date type to mysql_to_gcs operator</p></li> |
| <li><p>[AIRFLOW-1579] Adds support for jagged rows in Bigquery hook for BQ load jobs</p></li> |
| <li><p>[AIRFLOW-1577] Add token support to DatabricksHook</p></li> |
| <li><p>[AIRFLOW-1580] Error in string formatting</p></li> |
| <li><p>[AIRFLOW-1567] Updated docs for Google ML Engine operators/hooks</p></li> |
| <li><p>[AIRFLOW-1574] add 'to' attribute to templated vars of email operator</p></li> |
| <li><p>[AIRFLOW-1572] add carbonite to company list</p></li> |
| <li><p>[AIRFLOW-1568] Fix typo in BigQueryHook</p></li> |
| <li><p>[AIRFLOW-1493][AIRFLOW-XXXX][WIP] fixed dumb thing</p></li> |
| <li><p>[AIRFLOW-1567][Airflow-1567] Renamed cloudml hook and operator to mlengine</p></li> |
| <li><p>[AIRFLOW-1568] Add datastore export/import operators</p></li> |
| <li><p>[AIRFLOW-1564] Use Jinja2 to render logging filename</p></li> |
| <li><p>[AIRFLOW-1562] Spark-sql logging contains deadlock</p></li> |
| <li><p>[AIRFLOW-1556][Airflow 1556] Add support for SQL parameters in BigQueryBaseCursor</p></li> |
| <li><p>[AIRFLOW-108] Add CreditCards.com to companies list</p></li> |
| <li><p>[AIRFLOW-1541] Add channel to template fields of slack_operator</p></li> |
| <li><p>[AIRFLOW-1535] Add service account/scopes in dataproc</p></li> |
| <li><p>[AIRFLOW-1384] Add to README.md CaDC/ARGO</p></li> |
| <li><p>[AIRFLOW-1546] add Zymergen 80to org list in README</p></li> |
| <li><p>[AIRFLOW-1545] Add Nextdoor to companies list</p></li> |
| <li><p>[AIRFLOW-1544] Add DataFox to companies list</p></li> |
| <li><p>[AIRFLOW-1529] Add logic supporting quoted newlines in Google BigQuery load jobs</p></li> |
| <li><p>[AIRFLOW-1521] Fix template rendering for BigqueryTableDeleteOperator</p></li> |
| <li><p>[AIRFLOW-1324] Generalize Druid operator and hook</p></li> |
| <li><p>[AIRFLOW-1516] Fix error handling getting fernet</p></li> |
| <li><p>[AIRFLOW-1420][AIRFLOW-1473] Fix deadlock check</p></li> |
| <li><p>[AIRFLOW-1495] Fix migration on index on job_id</p></li> |
| <li><p>[AIRFLOW-1483] Making page size consistent in list</p></li> |
| <li><p>[AIRFLOW-1495] Add TaskInstance index on job_id</p></li> |
| <li><p>[AIRFLOW-855] Replace PickleType with LargeBinary in XCom</p></li> |
| <li><p>[AIRFLOW-1505] Document when Jinja substitution occurs</p></li> |
| <li><p>[AIRFLOW-1504] Log dataproc cluster name</p></li> |
| <li><p>[AIRFLOW-1239] Fix unicode error for logs in base_task_runner</p></li> |
| <li><p>[AIRFLOW-1280] Fix Gantt chart height</p></li> |
| <li><p>[AIRFLOW-1507] Template parameters in file_to_gcs operator</p></li> |
| <li><p>[AIRFLOW-1452] workaround lock on method</p></li> |
| <li><p>[AIRFLOW-1385] Make Airflow task logging configurable</p></li> |
| <li><p>[AIRFLOW-940] Handle error on variable decrypt</p></li> |
| <li><p>[AIRFLOW-1492] Add gauge for task successes/failures</p></li> |
| <li><p>[AIRFLOW-1443] Update Airflow configuration documentation</p></li> |
| <li><p>[AIRFLOW-1486] Unexpected S3 writing log error</p></li> |
| <li><p>[AIRFLOW-1487] Added links to all companies officially using Airflow</p></li> |
| <li><p>[AIRFLOW-1489] Fix typo in BigQueryCheckOperator</p></li> |
| <li><p>[AIRFLOW-1349] Fix backfill to respect limits</p></li> |
| <li><p>[AIRFLOW-1478] Chart owner column should be sortable</p></li> |
| <li><p>[AIRFLOW-1397][AIRFLOW-1] No Last Run column data displayed in airflow UI 1.8.1</p></li> |
| <li><p>[AIRFLOW-1474] Add dag_id regex feature for <cite>airflow clear</cite> command</p></li> |
| <li><p>[AIRFLOW-1445] Changing HivePartitionSensor UI color to lighter shade</p></li> |
| <li><p>[AIRFLOW-1359] Use default_args in Cloud ML eval</p></li> |
| <li><p>[AIRFLOW-1389] Support createDisposition in BigQueryOperator</p></li> |
| <li><p>[AIRFLOW-1349] Refactor BackfillJob _execute</p></li> |
| <li><p>[AIRFLOW-1459] Fixed broken integration .rst formatting</p></li> |
| <li><p>[AIRFLOW-1448] Revert "Fix cli reading logfile in memory"</p></li> |
| <li><p>[AIRFLOW-1398] Allow ExternalTaskSensor to wait on multiple runs of a task</p></li> |
| <li><p>[AIRFLOW-1399] Fix cli reading logfile in memory</p></li> |
| <li><p>[AIRFLOW-1442] Remove extra space from ignore_all_deps generated command</p></li> |
| <li><p>[AIRFLOW-1438] Change batch size per query in scheduler</p></li> |
| <li><p>[AIRFLOW-1439] Add max billing tier for the BQ Hook and Operator</p></li> |
| <li><p>[AIRFLOW-1437] Modify BigQueryTableDeleteOperator</p></li> |
| <li><p>[Airflow 1332] Split logs based on try number</p></li> |
| <li><p>[AIRFLOW-1385] Create abstraction for Airflow task logging</p></li> |
| <li><p>[AIRFLOW-756][AIRFLOW-751] Replace ssh hook, operator & sftp operator with paramiko based</p></li> |
| <li><p>[AIRFLOW-1393][[AIRFLOW-1393] Enable Py3 tests in contrib/spark_submit_hook[</p></li> |
| <li><p>[AIRFLOW-1345] Dont expire TIs on each scheduler loop</p></li> |
| <li><p>[AIRFLOW-1059] Reset orphaned tasks in batch for scheduler</p></li> |
| <li><p>[AIRFLOW-1255] Fix SparkSubmitHook output deadlock</p></li> |
| <li><p>[AIRFLOW-1359] Add Google CloudML utils for model evaluation</p></li> |
| <li><p>[AIRFLOW-1247] Fix ignore all dependencies argument ignored</p></li> |
| <li><p>[AIRFLOW-1401] Standardize cloud ml operator arguments</p></li> |
| <li><p>[AIRFLOW-1394] Add quote_character param to GCS hook and operator</p></li> |
| <li><p>[AIRFLOW-1402] Cleanup SafeConfigParser DeprecationWarning</p></li> |
| <li><p>[AIRFLOW-1326][[AIRFLOW-1326][AIRFLOW-1184] Don't split argument array -- it's already an array.[</p></li> |
| <li><p>[AIRFLOW-1384] Add ARGO/CaDC as a Airflow user</p></li> |
| <li><p>[AIRFLOW-1357] Fix scheduler zip file support</p></li> |
| <li><p>[AIRFLOW-1382] Add working dir option to DockerOperator</p></li> |
| <li><p>[AIRFLOW-1388] Add Cloud ML Engine operators to integration doc</p></li> |
| <li><p>[AIRFLOW-1387] Add unicode string prefix</p></li> |
| <li><p>[AIRFLOW-1366] Add max_tries to task instance</p></li> |
| <li><p>[AIRFLOW-1300] Enable table creation with TBLPROPERTIES</p></li> |
| <li><p>[AIRFLOW-1271] Add Google CloudML Training Operator</p></li> |
| <li><p>[AIRFLOW-300] Add Google Pubsub hook and operator</p></li> |
| <li><p>[AIRFLOW-1343] Fix dataproc label format</p></li> |
| <li><p>[AIRFLOW-1367] Pass Content-ID To reference inline images in an email, we need to be able to add <img src="cid:{}"/> to the HTML. However currently the Content-ID (cid) is not passed, so we need to add it</p></li> |
| <li><p>[AIRFLOW-1265] Fix celery executor parsing CELERY_SSL_ACTIVE</p></li> |
| <li><p>[AIRFLOW-1272] Google Cloud ML Batch Prediction Operator</p></li> |
| <li><p>[AIRFLOW-1352][AIRFLOW-1335] Revert MemoryHandler change ()[]</p></li> |
| <li><p>[AIRFLOW-1350] Add query_uri param to Hive/SparkSQL DataProc operator</p></li> |
| <li><p>[AIRFLOW-1334] Check if tasks are backfill on scheduler in a join</p></li> |
| <li><p>[AIRFLOW-1343] Add Airflow default label to the dataproc operator</p></li> |
| <li><p>[AIRFLOW-1273] Add Google Cloud ML version and model operators</p></li> |
| <li><p>[AIRFLOW-1273]AIRFLOW-1273] Add Google Cloud ML version and model operators</p></li> |
| <li><p>[AIRFLOW-1321] Fix hidden field key to ignore case</p></li> |
| <li><p>[AIRFLOW-1337] Make log_format key names lowercase</p></li> |
| <li><p>[AIRFLOW-1338][AIRFLOW-782] Add GCP dataflow hook runner change to UPDATING.md</p></li> |
| <li><p>[AIRFLOW-801] Remove outdated docstring on BaseOperator</p></li> |
| <li><p>[AIRFLOW-1344] Fix text encoding bug when reading logs for Python 3.5</p></li> |
| <li><p>[AIRFLOW-1338] Fix incompatible GCP dataflow hook</p></li> |
| <li><p>[AIRFLOW-1333] Enable copy function for Google Cloud Storage Hook</p></li> |
| <li><p>[AIRFLOW-1337] Allow log format customization via airflow.cfg</p></li> |
| <li><p>[AIRFLOW-1320] Update LetsBonus users in README</p></li> |
| <li><p>[AIRFLOW-1335] Use MemoryHandler for buffered logging</p></li> |
| <li><p>[AIRFLOW-1339] Add Drivy to the list of users</p></li> |
| <li><p>[AIRFLOW-1275] Put 'airflow pool' into API</p></li> |
| <li><p>[AIRFLOW-1296] Propagate SKIPPED to all downstream tasks</p></li> |
| <li><p>[AIRFLOW-1317] Fix minor issues in API reference</p></li> |
| <li><p>[AIRFLOW-1308] Disable nanny usage for Dask</p></li> |
| <li><p>[AIRFLOW-1172] Support nth weekday of the month cron expression</p></li> |
| <li><p>[AIRFLOW-936] Add clear/mark success for DAG in the UI</p></li> |
| <li><p>[AIRFLOW-1294] Backfills can loose tasks to execute</p></li> |
| <li><p>[AIRFLOW-1299] Support imageVersion in Google Dataproc cluster</p></li> |
| <li><p>[AIRFLOW-1291] Update NOTICE and LICENSE files to match ASF requirements</p></li> |
| <li><p>[AIRFLOW-1301] Add New Relic to list of companies</p></li> |
| <li><p>[AIRFLOW-1289] Removes restriction on number of scheduler threads</p></li> |
| <li><p>[AIRFLOW-1024] Ignore celery executor errors (#49)</p></li> |
| <li><p>[AIRFLOW-1265] Fix exception while loading celery configurations</p></li> |
| <li><p>[AIRFLOW-1290] set docs author to 'Apache Airflow'</p></li> |
| <li><p>[AIRFLOW-1242] Allowing project_id to have a colon in it.</p></li> |
| <li><p>[AIRFLOW-1282] Fix known event column sorting</p></li> |
| <li><p>[AIRFLOW-1166] Speed up _change_state_for_tis_without_dagrun</p></li> |
| <li><p>[AIRFLOW-1208] Speed-up cli tests</p></li> |
| <li><p>[AIRFLOW-1192] Some enhancements to qubole_operator</p></li> |
| <li><p>[AIRFLOW-1281] Sort variables by key field by default</p></li> |
| <li><p>[AIRFLOW-1277] Forbid KE creation with empty fields</p></li> |
| <li><p>[AIRFLOW-1276] Forbid event creation with end_data earlier than start_date</p></li> |
| <li><p>[AIRFLOW-1263] Dynamic height for charts</p></li> |
| <li><p>[AIRFLOW-1266] Increase width of gantt y axis</p></li> |
| <li><p>[AIRFLOW-1244] Forbid creation of a pool with empty name</p></li> |
| <li><p>[AIRFLOW-1274][HTTPSENSOR] Rename parameter params to data</p></li> |
| <li><p>[AIRFLOW-654] Add SSL Config Option for CeleryExecutor w/ RabbitMQ - Add BROKER_USE_SSL config to give option to send AMQP messages over SSL - Can be set using usual Airflow options (e.g. airflow.cfg, env vars, etc.)</p></li> |
| <li><p>[AIRFLOW-1256] Add United Airlines to readme</p></li> |
| <li><p>[AIRFLOW-1251] Add eRevalue to Airflow users</p></li> |
| <li><p>[AIRFLOW-908] Print hostname at the start of cli run</p></li> |
| <li><p>[AIRFLOW-1237] Fix IN-predicate sqlalchemy warning</p></li> |
| <li><p>[AIRFLOW-1243] DAGs table has no default entries to show</p></li> |
| <li><p>[AIRFLOW-1245] Fix random failure in test_trigger_dag_for_date</p></li> |
| <li><p>[AIRFLOW-1248] Fix wrong conf name for worker timeout</p></li> |
| <li><p>[AIRFLOW-1197] : SparkSubmitHook on_kill error</p></li> |
| <li><p>[AIRFLOW-1191] : SparkSubmitHook custom cmd</p></li> |
| <li><p>[AIRFLOW-1234] Cover utils.operator_helpers with UTs</p></li> |
| <li><p>[AIRFLOW-1217] Enable Sqoop logging</p></li> |
| <li><p>[AIRFLOW-645] Support HTTPS connections in HttpHook</p></li> |
| <li><p>[AIRFLOW-1231] Use flask_wtf.CSRFProtect</p></li> |
| <li><p>[AIRFLOW-1232] Remove deprecated readfp warning</p></li> |
| <li><p>[AIRFLOW-1233] Cover utils.json with unit tests</p></li> |
| <li><p>[AIRFLOW-1227] Remove empty column on the Logs view</p></li> |
| <li><p>[AIRFLOW-1226] Remove empty column on the Jobs view</p></li> |
| <li><p>[AIRFLOW-1221] Fix templating bug with DatabricksSubmitRunOperator</p></li> |
| <li><p>[AIRFLOW-1210] Enable DbApiHook unit tests</p></li> |
| <li><p>[AIRFLOW-1199] Fix create modal</p></li> |
| <li><p>[AIRFLOW-1200] Forbid creation of a variable with an empty key</p></li> |
| <li><p>[AIRFLOW-1207] Enable utils.helpers unit tests</p></li> |
| <li><p>[AIRFLOW-1213] Add hcatalog parameters to sqoop</p></li> |
| <li><p>[AIRFLOW-1201] Update deprecated 'nose-parameterized'</p></li> |
| <li><p>[AIRFLOW-1186] Sort dag.get_task_instances by execution_date</p></li> |
| <li><p>[AIRFLOW-1203] Pin Google API client version to fix OAuth issue</p></li> |
| <li><p>[AIRFLOW-1145] Fix closest_date_partition function with before set to True If we're looking for the closest date before, we should take the latest date in the list of date before.</p></li> |
| <li><p>[AIRFLOW-1180] Fix flask-wtf version for test_csrf_rejection</p></li> |
| <li><p>[AIRFLOW-993] Update date inference logic</p></li> |
| <li><p>[AIRFLOW-1170] DbApiHook insert_rows inserts parameters separately</p></li> |
| <li><p>[AIRFLOW-1041] Do not shadow xcom_push method[]</p></li> |
| <li><p>[AIRFLOW-860][AIRFLOW-935] Fix plugin executor import cycle and executor selection</p></li> |
| <li><p>[AIRFLOW-1189] Fix get a DataFrame using BigQueryHook failing</p></li> |
| <li><p>[AIRFLOW-1184] SparkSubmitHook does not split args</p></li> |
| <li><p>[AIRFLOW-1182] SparkSubmitOperator template field</p></li> |
| <li><p>[AIRFLOW-823] Allow specifying execution date in task_info API</p></li> |
| <li><p>[AIRFLOW-1175] Add Pronto Tools to Airflow user list</p></li> |
| <li><p>[AIRFLOW-1150] Fix scripts execution in sparksql hook[]</p></li> |
| <li><p>[AIRFLOW-1141] remove crawl_for_tasks</p></li> |
| <li><p>[AIRFLOW-1193] Add Checkr to company using Airflow</p></li> |
| <li><p>[AIRFLOW-1168] Add closing() to all connections and cursors</p></li> |
| <li><p>[AIRFLOW-1188] Add max_bad_records param to GoogleCloudStorageToBigQueryOperator</p></li> |
| <li><p>[AIRFLOW-1187][AIRFLOW-1185] Fix PyPi package names in documents</p></li> |
| <li><p>[AIRFLOW-1185] Fix PyPi URL in templates</p></li> |
| <li><p>[AIRFLOW-XXX] Updating CHANGELOG, README, and UPDATING after 1.8.1 release</p></li> |
| <li><p>[AIRFLOW-1181] Add delete and list functionality to gcs_hook</p></li> |
| <li><p>[AIRFLOW-1179] Fix Pandas 0.2x breaking Google BigQuery change</p></li> |
| <li><p>[AIRFLOW-1167] Support microseconds in FTPHook modification time</p></li> |
| <li><p>[AIRFLOW-1173] Add Robinhood to who uses Airflow</p></li> |
| <li><p>[AIRFLOW-945][AIRFLOW-941] Remove psycopg2 connection workaround</p></li> |
| <li><p>[AIRFLOW-1140] DatabricksSubmitRunOperator should template the "json" field.</p></li> |
| <li><p>[AIRFLOW-1160] Update Spark parameters for Mesos</p></li> |
| <li><p>[AIRFLOW 1149][AIRFLOW-1149] Allow for custom filters in Jinja2 templates</p></li> |
| <li><p>[AIRFLOW-1036] Randomize exponential backoff</p></li> |
| <li><p>[AIRFLOW-1155] Add Tails.com to community</p></li> |
| <li><p>[AIRFLOW-1142] Do not reset orphaned state for backfills</p></li> |
| <li><p>[AIRFLOW-492] Make sure stat updates cannot fail a task</p></li> |
| <li><p>[AIRFLOW-1119] Fix unload query so headers are on first row[]</p></li> |
| <li><p>[AIRFLOW-1089] Add Spark application arguments</p></li> |
| <li><p>[AIRFLOW-1125] Document encrypted connections</p></li> |
| <li><p>[AIRFLOW-1122] Increase stroke width in UI</p></li> |
| <li><p>[AIRFLOW-1138] Add missing licenses to files in scripts directory</p></li> |
| <li><p>[AIRFLOW-11-38][AIRFLOW-1136] Capture invalid arguments for Sqoop</p></li> |
| <li><p>[AIRFLOW-1127] Move license notices to LICENSE</p></li> |
| <li><p>[AIRFLOW-1118] Add evo.company to Airflow users</p></li> |
| <li><p>[AIRFLOW-1121][AIRFLOW-1004] Fix <cite>airflow webserver --pid</cite> to write out pid file</p></li> |
| <li><p>[AIRFLOW-1124] Do not set all tasks to scheduled in backfill</p></li> |
| <li><p>[AIRFLOW-1120] Update version view to include Apache prefix</p></li> |
| <li><p>[AIRFLOW-1091] Add script that can compare Jira target against merges</p></li> |
| <li><p>[AIRFLOW-1107] Add support for ftps non-default port</p></li> |
| <li><p>[AIRFLOW-1000] Rebrand distribution to Apache Airflow</p></li> |
| <li><p>[AIRFLOW-1094] Run unit tests under contrib in Travis</p></li> |
| <li><p>[AIRFLOW-1112] Log which pool when pool is full in scheduler</p></li> |
| <li><p>[AIRFLOW-1106] Add Groupalia/Letsbonus to the ReadMe</p></li> |
| <li><p>[AIRFLOW-1109] Use kill signal to kill processes and log results</p></li> |
| <li><p>[AIRFLOW-1074] Don't count queued tasks for concurrency limits</p></li> |
| <li><p>[AIRFLOW-1095] Make ldap_auth memberOf come from configuration</p></li> |
| <li><p>[AIRFLOW-1090] Add HBO</p></li> |
| <li><p>[AIRFLOW-1035] Use binary exponential backoff</p></li> |
| <li><p>[AIRFLOW-1081] Improve performance of duration chart</p></li> |
| <li><p>[AIRFLOW-1078] Fix latest_runs endpoint for old flask versions</p></li> |
| <li><p>[AIRFLOW-1085] Enhance the SparkSubmitOperator</p></li> |
| <li><p>[AIRFLOW-1050] Do not count up_for_retry as not ready</p></li> |
| <li><p>[AIRFLOW-1028] Databricks Operator for Airflow</p></li> |
| <li><p>[AIRFLOW-1075] Security docs cleanup</p></li> |
| <li><p>[AIRFLOW-1033][AIFRLOW-1033] Fix ti_deps for no schedule dags</p></li> |
| <li><p>[AIRFLOW-1016] Allow HTTP HEAD request method on HTTPSensor</p></li> |
| <li><p>[AIRFLOW-970] Load latest_runs on homepage async</p></li> |
| <li><p>[AIRFLOW-111] Include queued tasks in scheduler concurrency check</p></li> |
| <li><p>[AIRFLOW-1001] Fix landing times if there is no following schedule</p></li> |
| <li><p>[AIRFLOW-1065] Add functionality for Azure Blob Storage over wasb://</p></li> |
| <li><p>[AIRFLOW-947] Improve exceptions for unavailable Presto cluster</p></li> |
| <li><p>[AIRFLOW-1067] use example.com in examples</p></li> |
| <li><p>[AIRFLOW-1064] Change default sort to job_id for TaskInstanceModelView</p></li> |
| <li><p>[AIRFLOW-1030][AIRFLOW-1] Fix hook import for HttpSensor</p></li> |
| <li><p>[AIRFLOW-1051] Add a test for resetdb to CliTests</p></li> |
| <li><p>[AIRFLOW-1004][AIRFLOW-276] Fix <cite>airflow webserver -D</cite> to run in background</p></li> |
| <li><p>[AIRFLOW-1062] Fix DagRun#find to return correct result</p></li> |
| <li><p>[AIRFLOW-1011] Fix bug in BackfillJob._execute() for SubDAGs</p></li> |
| <li><p>[AIRFLOW-1038] Specify celery serialization options explicitly</p></li> |
| <li><p>[AIRFLOW-1054] Fix broken import in test_dag</p></li> |
| <li><p>[AIRFLOW-1007] Use Jinja sandbox for chart_data endpoint</p></li> |
| <li><p>[AIRFLOW-719] Fix race condition in ShortCircuit, Branch and LatestOnly</p></li> |
| <li><p>[AIRFLOW-1043] Fix doc strings of operators</p></li> |
| <li><p>[AIRFLOW-840] Make ticket renewer python3 compatible</p></li> |
| <li><p>[AIRFLOW-985] Extend the sqoop operator and hook</p></li> |
| <li><p>[AIRFLOW-1034] Make it possible to connect to S3 in sigv4 regions</p></li> |
| <li><p>[AIRFLOW-1045] Make log level configurable via airflow.cfg</p></li> |
| <li><p>[AIRFLOW-1047] Sanitize strings passed to Markup</p></li> |
| <li><p>[AIRFLOW-1040] Fix some small typos in comments and docstrings</p></li> |
| <li><p>[AIRFLOW-1017] get_task_instance should not throw exception when no TI</p></li> |
| <li><p>[AIRFLOW-1006] Add config_templates to MANIFEST</p></li> |
| <li><p>[AIRFLOW-999] Add support for Redis database</p></li> |
| <li><p>[AIRFLOW-1009] Remove SQLOperator from Concepts page</p></li> |
| <li><p>[AIRFLOW-1006] Move config templates to separate files</p></li> |
| <li><p>[AIRFLOW-1005] Improve Airflow startup time</p></li> |
| <li><p>[AIRFLOW-1010] Add convenience script for signing releases</p></li> |
| <li><p>[AIRFLOW-995] Remove reference to actual Airflow issue</p></li> |
| <li><p>[AIRFLOW-681] homepage doc link should pointing to apache repo not airbnb repo</p></li> |
| <li><p>[AIRFLOW-705][AIRFLOW-706] Fix run_command bugs</p></li> |
| <li><p>[AIRFLOW-990] Fix Py27 unicode logging in DockerOperator</p></li> |
| <li><p>[AIRFLOW-963] Fix non-rendered code examples</p></li> |
| <li><p>[AIRFLOW-969] Catch bad python_callable argument</p></li> |
| <li><p>[AIRFLOW-984] Enable subclassing of SubDagOperator</p></li> |
| <li><p>[AIRFLOW-997] Update setup.cfg to point to Apache</p></li> |
| <li><p>[AIRFLOW-994] Add MiNODES to the official Airflow user list</p></li> |
| <li><p>[AIRFLOW-995][AIRFLOW-1] Update GitHub PR Template</p></li> |
| <li><p>[AIRFLOW-989] Do not mark dag run successful if unfinished tasks</p></li> |
| <li><p>[AIRFLOW-903] New configuration setting for the default dag view</p></li> |
| <li><p>[AIRFLOW-979] Add GovTech GDS</p></li> |
| <li><p>[AIRFLOW-933] Replace eval with literal_eval to prevent RCE</p></li> |
| <li><p>[AIRFLOW-974] Fix mkdirs race condition</p></li> |
| <li><p>[AIRFLOW-917] Fix formatting of error message</p></li> |
| <li><p>[AIRFLOW-770] Refactor BaseHook so env vars are always read</p></li> |
| <li><p>[AIRFLOW-900] Double trigger should not kill original task instance</p></li> |
| <li><p>[AIRFLOW-900] Fixes bugs in LocalTaskJob for double run protection</p></li> |
| <li><p>[AIRFLOW-932][AIRFLOW-932][AIRFLOW-921][AIRFLOW-910] Do not mark tasks removed when backfilling</p></li> |
| <li><p>[AIRFLOW-961] run onkill when SIGTERMed</p></li> |
| <li><p>[AIRFLOW-910] Use parallel task execution for backfills</p></li> |
| <li><p>[AIRFLOW-967] Wrap strings in native for py2 ldap compatibility</p></li> |
| <li><p>[AIRFLOW-958] Improve tooltip readability</p></li> |
| <li><p>AIRFLOW-959 Cleanup and reorganize .gitignore</p></li> |
| <li><p>AIRFLOW-960 Add .editorconfig file</p></li> |
| <li><p>[AIRFLOW-931] Do not set QUEUED in TaskInstances</p></li> |
| <li><p>[AIRFLOW-956] Get docs working on readthedocs.org</p></li> |
| <li><p>[AIRFLOW-954] Fix configparser ImportError</p></li> |
| <li><p>[AIRFLOW-941] Use defined parameters for psycopg2</p></li> |
| <li><p>[AIRFLOW-943] Update Digital First Media in users list</p></li> |
| <li><p>[AIRFLOW-942] Add mytaxi to Airflow users</p></li> |
| <li><p>[AIRFLOW-939] add .swp to gitignore</p></li> |
| <li><p>[AIRFLOW-719] Prevent DAGs from ending prematurely</p></li> |
| <li><p>[AIRFLOW-938] Use test for True in task_stats queries</p></li> |
| <li><p>[AIRFLOW-937] Improve performance of task_stats</p></li> |
| <li><p>[AIRFLOW-933] use ast.literal_eval rather eval because ast.literal_eval does not execute input.</p></li> |
| <li><p>[AIRFLOW-925] Revert airflow.hooks change that cherry-pick picked</p></li> |
| <li><p>[AIRFLOW-919] Running tasks with no start date should not break a DAGs UI</p></li> |
| <li><p>[AIRFLOW-802][AIRFLOW-1] Add spark-submit operator/hook</p></li> |
| <li><p>[AIRFLOW-725] Use keyring to store credentials for JIRA</p></li> |
| <li><p>[AIRFLOW-916] Remove deprecated readfp function</p></li> |
| <li><p>[AIRFLOW-911] Add coloring and timing to tests</p></li> |
| <li><p>[AIRFLOW-906] Update Code icon from lightning bolt to file</p></li> |
| <li><p>[AIRFLOW-897] Prevent dagruns from failing with unfinished tasks</p></li> |
| <li><p>[AIRFLOW-896] Remove unicode to 8-bit conversion in BigQueryOperator</p></li> |
| <li><p>[AIRFLOW-899] Tasks in SCHEDULED state should be white in the UI instead of black</p></li> |
| <li><p>[AIRFLOW-895] Address Apache release incompliancies</p></li> |
| <li><p>[AIRFLOW-893][AIRFLOW-510] Fix crashing webservers when a dagrun has no start date</p></li> |
| <li><p>[AIRFLOW-880] Make webserver serve logs in a sane way for remote logs</p></li> |
| <li><p>[AIRFLOW-889] Fix minor error in the docstrings for BaseOperator</p></li> |
| <li><p>[AIRFLOW-809][AIRFLOW-1] Use __eq__ ColumnOperator When Testing Booleans</p></li> |
| <li><p>[AIRFLOW-875] Add template to HttpSensor params</p></li> |
| <li><p>[AIRFLOW-866] Add FTPSensor</p></li> |
| <li><p>[AIRFLOW-881] Check if SubDagOperator is in DAG context manager</p></li> |
| <li><p>[AIRFLOW-885] Add change.org to the users list</p></li> |
| <li><p>[AIRFLOW-836] Use POST and CSRF for state changing endpoints</p></li> |
| <li><p>[AIRFLOW-862] Fix Unit Tests for DaskExecutor</p></li> |
| <li><p>[AIRFLOW-887] Support future v0.16</p></li> |
| <li><p>[AIRFLOW-886] Pass result to post_execute() hook</p></li> |
| <li><p>[AIRFLOW-871] change logging.warn() into warning()</p></li> |
| <li><p>[AIRFLOW-882] Remove unnecessary dag>>op assignment in docs</p></li> |
| <li><p>[AIRFLOW-861] Make pickle_info endpoint be login_required</p></li> |
| <li><p>[AIRFLOW-869] Refactor mark success functionality</p></li> |
| <li><p>[AIRFLOW-877] Remove .sql template extension from GCS download operator</p></li> |
| <li><p>[AIRFLOW-826] Add Zendesk hook</p></li> |
| <li><p>[AIRFLOW-842] Do not query the DB with an empty IN clause</p></li> |
| <li><p>[AIRFLOW-834] Change raise StopIteration into return</p></li> |
| <li><p>[AIRFLOW-832] Let debug server run without SSL</p></li> |
| <li><p>[AIRFLOW-862] Add DaskExecutor</p></li> |
| <li><p>[AIRFLOW-858] Configurable database name for DB operators</p></li> |
| <li><p>[AIRFLOW-863] Example DAGs should have recent start dates</p></li> |
| <li><p>[AIRFLOW-853] Use utf8 encoding for stdout line decode</p></li> |
| <li><p>[AIRFLOW-857] Use library assert statements instead of conditionals</p></li> |
| <li><p>[AIRFLOW-856] Make sure execution date is set for local client</p></li> |
| <li><p>[AIRFLOW-854] Add OKI as Airflow user</p></li> |
| <li><p>[AIRFLOW-830][AIRFLOW-829][AIRFLOW-88] Reduce Travis log verbosity</p></li> |
| <li><p>[AIRFLOW-814] Fix Presto*CheckOperator.__init__</p></li> |
| <li><p>[AIRFLOW-793] Enable compressed loading in S3ToHiveTransfer</p></li> |
| <li><p>[AIRFLOW-844] Fix cgroups directory creation</p></li> |
| <li><p>[AIRFLOW-831] Restore import to fix broken tests</p></li> |
| <li><p>[AIRFLOW-794] Access DAGS_FOLDER and SQL_ALCHEMY_CONN exclusively from settings</p></li> |
| <li><p>[AIRFLOW-694] Fix config behaviour for empty envvar</p></li> |
| <li><p>[AIRFLOW-365] Set dag.fileloc explicitly and use for Code view</p></li> |
| <li><p>[AIRFLOW-781] Allow DataFlowOperators to accept jobs stored in GCS</p></li> |
| </ul> |
| </div> |
| <div class="section" id="airflow-1-8-2-2017-09-04"> |
| <h2>Airflow 1.8.2, 2017-09-04<a class="headerlink" href="#airflow-1-8-2-2017-09-04" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-809][AIRFLOW-1] Use __eq__ ColumnOperator When Testing Booleans</p></li> |
| <li><p>[AIRFLOW-1296] Propagate SKIPPED to all downstream tasks</p></li> |
| <li><p>Re-enable caching for hadoop components</p></li> |
| <li><p>Pin Hive and Hadoop to a specific version and create writable warehouse dir</p></li> |
| <li><p>[AIRFLOW-1308] Disable nanny usage for Dask</p></li> |
| <li><p>Updating CHANGELOG for 1.8.2rc1</p></li> |
| <li><p>[AIRFLOW-1294] Backfills can loose tasks to execute</p></li> |
| <li><p>[AIRFLOW-1291] Update NOTICE and LICENSE files to match ASF requirements</p></li> |
| <li><p>[AIRFLOW-XXX] Set version to 1.8.2rc1</p></li> |
| <li><p>[AIRFLOW-1160] Update Spark parameters for Mesos</p></li> |
| <li><p>[AIRFLOW 1149][AIRFLOW-1149] Allow for custom filters in Jinja2 templates</p></li> |
| <li><p>[AIRFLOW-1119] Fix unload query so headers are on first row[]</p></li> |
| <li><p>[AIRFLOW-1089] Add Spark application arguments</p></li> |
| <li><p>[AIRFLOW-1078] Fix latest_runs endpoint for old flask versions</p></li> |
| <li><p>[AIRFLOW-1074] Don't count queued tasks for concurrency limits</p></li> |
| <li><p>[AIRFLOW-1064] Change default sort to job_id for TaskInstanceModelView</p></li> |
| <li><p>[AIRFLOW-1038] Specify celery serialization options explicitly</p></li> |
| <li><p>[AIRFLOW-1036] Randomize exponential backoff</p></li> |
| <li><p>[AIRFLOW-993] Update date inference logic</p></li> |
| <li><p>[AIRFLOW-1167] Support microseconds in FTPHook modification time</p></li> |
| <li><p>[AIRFLOW-1179] Fix pandas 0.2x breaking Google BigQuery change</p></li> |
| <li><p>[AIRFLOW-1263] Dynamic height for charts</p></li> |
| <li><p>[AIRFLOW-1266] Increase width of gantt y axis</p></li> |
| <li><p>[AIRFLOW-1290] set docs author to 'Apache Airflow'</p></li> |
| <li><p>[AIRFLOW-1282] Fix known event column sorting</p></li> |
| <li><p>[AIRFLOW-1166] Speed up _change_state_for_tis_without_dagrun</p></li> |
| <li><p>[AIRFLOW-1192] Some enhancements to qubole_operator</p></li> |
| <li><p>[AIRFLOW-1281] Sort variables by key field by default</p></li> |
| <li><p>[AIRFLOW-1244] Forbid creation of a pool with empty name</p></li> |
| <li><p>[AIRFLOW-1243] DAGs table has no default entries to show</p></li> |
| <li><p>[AIRFLOW-1227] Remove empty column on the Logs view</p></li> |
| <li><p>[AIRFLOW-1226] Remove empty column on the Jobs view</p></li> |
| <li><p>[AIRFLOW-1199] Fix create modal</p></li> |
| <li><p>[AIRFLOW-1200] Forbid creation of a variable with an empty key</p></li> |
| <li><p>[AIRFLOW-1186] Sort dag.get_task_instances by execution_date</p></li> |
| <li><p>[AIRFLOW-1145] Fix closest_date_partition function with before set to True If we're looking for the closest date before, we should take the latest date in the list of date before.</p></li> |
| <li><p>[AIRFLOW-1180] Fix flask-wtf version for test_csrf_rejection</p></li> |
| <li><p>[AIRFLOW-1170] DbApiHook insert_rows inserts parameters separately</p></li> |
| <li><p>[AIRFLOW-1150] Fix scripts execution in sparksql hook[]</p></li> |
| <li><p>[AIRFLOW-1168] Add closing() to all connections and cursors</p></li> |
| <li><p>[AIRFLOW-XXX] Updating CHANGELOG, README, and UPDATING after 1.8.1 release</p></li> |
| </ul> |
| </div> |
| <div class="section" id="airflow-1-8-1-2017-05-09"> |
| <h2>Airflow 1.8.1, 2017-05-09<a class="headerlink" href="#airflow-1-8-1-2017-05-09" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-1142] SubDAG Tasks Not Executed Even Though All Dependencies Met</p></li> |
| <li><p>[AIRFLOW-1138] Add licenses to files in scripts directory</p></li> |
| <li><p>[AIRFLOW-1127] Move license notices to LICENSE instead of NOTICE</p></li> |
| <li><p>[AIRFLOW-1124] Do not set all task instances to scheduled on backfill</p></li> |
| <li><p>[AIRFLOW-1120] Update version view to include Apache prefix</p></li> |
| <li><p>[AIRFLOW-1062] DagRun#find returns wrong result if external_trigger=False is specified</p></li> |
| <li><p>[AIRFLOW-1054] Fix broken import on test_dag</p></li> |
| <li><p>[AIRFLOW-1050] Retries ignored - regression</p></li> |
| <li><p>[AIRFLOW-1033] TypeError: can't compare datetime.datetime to None</p></li> |
| <li><p>[AIRFLOW-1017] get_task_instance should return None instead of throw an exception for non-existent TIs</p></li> |
| <li><p>[AIRFLOW-1011] Fix bug in BackfillJob._execute() for SubDAGs</p></li> |
| <li><p>[AIRFLOW-1004] <cite>airflow webserver -D</cite> runs in foreground</p></li> |
| <li><p>[AIRFLOW-1001] Landing Time shows "unsupported operand type(s) for -: 'datetime.datetime' and <cite>NoneType</cite>" on example_subdag_operator</p></li> |
| <li><p>[AIRFLOW-1000] Rebrand to Apache Airflow instead of Airflow</p></li> |
| <li><p>[AIRFLOW-989] Clear Task Regression</p></li> |
| <li><p>[AIRFLOW-974] airflow.util.file mkdir has a race condition</p></li> |
| <li><p>[AIRFLOW-906] Update Code icon from lightning bolt to file</p></li> |
| <li><p>[AIRFLOW-858] Configurable database name for DB operators</p></li> |
| <li><p>[AIRFLOW-853] ssh_execute_operator.py stdout decode default to ASCII</p></li> |
| <li><p>[AIRFLOW-832] Fix debug server</p></li> |
| <li><p>[AIRFLOW-817] Trigger dag fails when using CLI + API</p></li> |
| <li><p>[AIRFLOW-816] Make sure to pull nvd3 from local resources</p></li> |
| <li><p>[AIRFLOW-815] Add previous/next execution dates to available default variables.</p></li> |
| <li><p>[AIRFLOW-813] Fix unterminated unit tests in tests.job (tests/job.py)</p></li> |
| <li><p>[AIRFLOW-812] Scheduler job terminates when there is no dag file</p></li> |
| <li><p>[AIRFLOW-806] UI should properly ignore DAG doc when it is None</p></li> |
| <li><p>[AIRFLOW-794] Consistent access to DAGS_FOLDER and SQL_ALCHEMY_CONN</p></li> |
| <li><p>[AIRFLOW-785] ImportError if cgroupspy is not installed</p></li> |
| <li><p>[AIRFLOW-784] Cannot install with <code class="docutils literal notranslate"><span class="pre">funcsigs</span></code> > 1.0.0</p></li> |
| <li><p>[AIRFLOW-780] The UI no longer shows broken DAGs</p></li> |
| <li><p>[AIRFLOW-777] dag_is_running is initialized to True instead of False</p></li> |
| <li><p>[AIRFLOW-719] Skipped operations make DAG finish prematurely</p></li> |
| <li><p>[AIRFLOW-694] Empty env vars do not overwrite non-empty config values</p></li> |
| <li><p>[AIRFLOW-492] Insert into dag_stats table results into failed task while task itself succeeded</p></li> |
| <li><p>[AIRFLOW-139] Executing VACUUM with PostgresOperator</p></li> |
| <li><p>[AIRFLOW-111] DAG concurrency is not honored</p></li> |
| <li><p>[AIRFLOW-88] Improve clarity Travis CI reports</p></li> |
| </ul> |
| </div> |
| <div class="section" id="airflow-1-8-0-2017-03-12"> |
| <h2>Airflow 1.8.0, 2017-03-12<a class="headerlink" href="#airflow-1-8-0-2017-03-12" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-900] Double trigger should not kill original task instance</p></li> |
| <li><p>[AIRFLOW-900] Fixes bugs in LocalTaskJob for double run protection</p></li> |
| <li><p>[AIRFLOW-932] Do not mark tasks removed when backfilling</p></li> |
| <li><p>[AIRFLOW-961] run onkill when SIGTERMed</p></li> |
| <li><p>[AIRFLOW-910] Use parallel task execution for backfills</p></li> |
| <li><p>[AIRFLOW-967] Wrap strings in native for py2 ldap compatibility</p></li> |
| <li><p>[AIRFLOW-941] Use defined parameters for psycopg2</p></li> |
| <li><p>[AIRFLOW-719] Prevent DAGs from ending prematurely</p></li> |
| <li><p>[AIRFLOW-938] Use test for True in task_stats queries</p></li> |
| <li><p>[AIRFLOW-937] Improve performance of task_stats</p></li> |
| <li><p>[AIRFLOW-933] use ast.literal_eval rather eval because ast.literal_eval does not execute input.</p></li> |
| <li><p>[AIRFLOW-925] Revert airflow.hooks change that cherry-pick picked</p></li> |
| <li><p>[AIRFLOW-919] Running tasks with no start date should not break a DAGs UI</p></li> |
| <li><p>[AIRFLOW-802] Add spark-submit operator/hook</p></li> |
| <li><p>[AIRFLOW-897] Prevent dagruns from failing with unfinished tasks</p></li> |
| <li><p>[AIRFLOW-861] make pickle_info endpoint be login_required</p></li> |
| <li><p>[AIRFLOW-853] use utf8 encoding for stdout line decode</p></li> |
| <li><p>[AIRFLOW-856] Make sure execution date is set for local client</p></li> |
| <li><p>[AIRFLOW-830][AIRFLOW-829][AIRFLOW-88] Reduce Travis log verbosity</p></li> |
| <li><p>[AIRFLOW-831] Restore import to fix broken tests</p></li> |
| <li><p>[AIRFLOW-794] Access DAGS_FOLDER and SQL_ALCHEMY_CONN exclusively from settings</p></li> |
| <li><p>[AIRFLOW-694] Fix config behaviour for empty envvar</p></li> |
| <li><p>[AIRFLOW-365] Set dag.fileloc explicitly and use for Code view</p></li> |
| <li><p>[AIRFLOW-931] Do not set QUEUED in TaskInstances</p></li> |
| <li><p>[AIRFLOW-899] Tasks in SCHEDULED state should be white in the UI instead of black</p></li> |
| <li><p>[AIRFLOW-895] Address Apache release incompliancies</p></li> |
| <li><p>[AIRFLOW-893][AIRFLOW-510] Fix crashing webservers when a dagrun has no start date</p></li> |
| <li><p>[AIRFLOW-793] Enable compressed loading in S3ToHiveTransfer</p></li> |
| <li><p>[AIRFLOW-863] Example DAGs should have recent start dates</p></li> |
| <li><p>[AIRFLOW-869] Refactor mark success functionality</p></li> |
| <li><p>[AIRFLOW-856] Make sure execution date is set for local client</p></li> |
| <li><p>[AIRFLOW-814] Fix Presto*CheckOperator.__init__</p></li> |
| <li><p>[AIRFLOW-844] Fix cgroups directory creation</p></li> |
| <li><p>[AIRFLOW-816] Use static nvd3 and d3</p></li> |
| <li><p>[AIRFLOW-821] Fix py3 compatibility</p></li> |
| <li><p>[AIRFLOW-817] Check for None value of execution_date in endpoint</p></li> |
| <li><p>[AIRFLOW-822] Close db before exception</p></li> |
| <li><p>[AIRFLOW-815] Add prev/next execution dates to template variables</p></li> |
| <li><p>[AIRFLOW-813] Fix unterminated unit tests in SchedulerJobTest</p></li> |
| <li><p>[AIRFLOW-813] Fix unterminated scheduler unit tests</p></li> |
| <li><p>[AIRFLOW-806] UI should properly ignore DAG doc when it is None</p></li> |
| <li><p>[AIRFLOW-812] Fix the scheduler termination bug.</p></li> |
| <li><p>[AIRFLOW-780] Fix dag import errors no longer working</p></li> |
| <li><p>[AIRFLOW-783] Fix py3 incompatibility in BaseTaskRunner</p></li> |
| <li><p>[AIRFLOW-810] Correct down_revision dag_id/state index creation</p></li> |
| <li><p>[AIRFLOW-807] Improve scheduler performance for large DAGs</p></li> |
| <li><p>[AIRFLOW-798] Check return_code before forcing termination</p></li> |
| <li><p>[AIRFLOW-139] Let psycopg2 handle autocommit for PostgresHook</p></li> |
| <li><p>[AIRFLOW-776] Add missing cgroups devel dependency</p></li> |
| <li><p>[AIRFLOW-777] Fix expression to check if a DagRun is in running state</p></li> |
| <li><p>[AIRFLOW-785] Don't import CgroupTaskRunner at global scope</p></li> |
| <li><p>[AIRFLOW-784] Pin <code class="docutils literal notranslate"><span class="pre">funcsigs</span></code> to 1.0.0</p></li> |
| <li><p>[AIRFLOW-624] Fix setup.py to not import airflow.version as version</p></li> |
| <li><p>[AIRFLOW-779] Task should fail with specific message when deleted</p></li> |
| <li><p>[AIRFLOW-778] Fix completely broken MetastorePartitionSensor</p></li> |
| <li><p>[AIRFLOW-739] Set pickle_info log to debug</p></li> |
| <li><p>[AIRFLOW-771] Make S3 logs append instead of clobber</p></li> |
| <li><p>[AIRFLOW-773] Fix flaky datetime addition in api test</p></li> |
| <li><p>[AIRFLOW-219][AIRFLOW-398] Cgroups + impersonation</p></li> |
| <li><p>[AIRFLOW-683] Add Jira hook, operator and sensor</p></li> |
| <li><p>[AIRFLOW-762] Add Google DataProc delete operator</p></li> |
| <li><p>[AIRFLOW-760] Update systemd config</p></li> |
| <li><p>[AIRFLOW-759] Use previous dag_run to verify depend_on_past</p></li> |
| <li><p>[AIRFLOW-757] Set child_process_log_directory default more sensible</p></li> |
| <li><p>[AIRFLOW-692] Open XCom page to super-admins only</p></li> |
| <li><p>[AIRFLOW-737] Fix HDFS Sensor directory.</p></li> |
| <li><p>[AIRFLOW-747] Fix retry_delay not honoured</p></li> |
| <li><p>[AIRFLOW-558] Add Support for dag.catchup=(True|False) Option</p></li> |
| <li><p>[AIRFLOW-489] Allow specifying execution date in trigger_dag API</p></li> |
| <li><p>[AIRFLOW-738] Commit deleted xcom items before insert</p></li> |
| <li><p>[AIRFLOW-729] Add Google Cloud Dataproc cluster creation operator</p></li> |
| <li><p>[AIRFLOW-728] Add Google BigQuery table sensor</p></li> |
| <li><p>[AIRFLOW-741] Log to debug instead of info for app.py</p></li> |
| <li><p>[AIRFLOW-731] Fix period bug for NamedHivePartitionSensor</p></li> |
| <li><p>[AIRFLOW-740] Pin jinja2 to < 2.9.0</p></li> |
| <li><p>[AIRFLOW-663] Improve time units for task performance charts</p></li> |
| <li><p>[AIRFLOW-665] Fix email attachments</p></li> |
| <li><p>[AIRFLOW-734] Fix SMTP auth regression when not using user/pass</p></li> |
| <li><p>[AIRFLOW-702] Fix LDAP Regex Bug</p></li> |
| <li><p>[AIRFLOW-717] Add Cloud Storage updated sensor</p></li> |
| <li><p>[AIRFLOW-695] Retries do not execute because dagrun is in FAILED state</p></li> |
| <li><p>[AIRFLOW-673] Add operational metrics test for SchedulerJob</p></li> |
| <li><p>[AIRFLOW-727] try_number is not increased</p></li> |
| <li><p>[AIRFLOW-715] A more efficient HDFS Sensor:</p></li> |
| <li><p>[AIRFLOW-716] Allow AVRO BigQuery load-job without schema</p></li> |
| <li><p>[AIRFLOW-718] Allow the query URI for DataProc Pig</p></li> |
| <li><p>Log needs to be part of try/catch block</p></li> |
| <li><p>[AIRFLOW-721] Descendant process can disappear before termination</p></li> |
| <li><p>[AIRFLOW-403] Bash operator's kill method leaves underlying processes running</p></li> |
| <li><p>[AIRFLOW-657] Add AutoCommit Parameter for MSSQL</p></li> |
| <li><p>[AIRFLOW-641] Improve pull request instructions</p></li> |
| <li><p>[AIRFLOW-685] Add test for MySqlHook.bulk_load()</p></li> |
| <li><p>[AIRFLOW-686] Match auth backend config section</p></li> |
| <li><p>[AIRFLOW-691] Add SSH KeepAlive option to SSH_hook</p></li> |
| <li><p>[AIRFLOW-709] Use same engine for migrations and reflection</p></li> |
| <li><p>[AIRFLOW-700] Update to reference to web authentication documentation</p></li> |
| <li><p>[AIRFLOW-649] Support non-sched DAGs in LatestOnlyOp</p></li> |
| <li><p>[AIRFLOW-712] Fix AIRFLOW-667 to use proper HTTP error properties</p></li> |
| <li><p>[AIRFLOW-710] Add OneFineStay as official user</p></li> |
| <li><p>[AIRFLOW-703][AIRFLOW-1] Stop Xcom being cleared too early</p></li> |
| <li><p>[AIRFLOW-679] Stop concurrent task instances from running</p></li> |
| <li><p>[AIRFLOW-704][AIRFLOW-1] Fix invalid syntax in BQ hook</p></li> |
| <li><p>[AIRFLOW-667] Handle BigQuery 503 error</p></li> |
| <li><p>[AIRFLOW-680] Disable connection pool for commands</p></li> |
| <li><p>[AIRFLOW-678] Prevent scheduler from double triggering TIs</p></li> |
| <li><p>[AIRFLOW-677] Kill task if it fails to heartbeat</p></li> |
| <li><p>[AIRFLOW-674] Ability to add descriptions for DAGs</p></li> |
| <li><p>[AIRFLOW-682] Bump MAX_PERIODS to make mark_success work for large DAGs</p></li> |
| <li><p>Use jdk selector to set required jdk</p></li> |
| <li><p>[AIRFLOW-647] Restore dag.get_active_runs</p></li> |
| <li><p>[AIRFLOW-662] Change seasons to months in project description</p></li> |
| <li><p>[AIRFLOW-656] Add dag/task/date index to xcom table</p></li> |
| <li><p>[AIRFLOW-658] Improve schema_update_options in GCP</p></li> |
| <li><p>[AIRFLOW-41] Fix pool oversubscription</p></li> |
| <li><p>[AIRFLOW-489] Add API Framework</p></li> |
| <li><p>[AIRFLOW-653] Add some missing endpoint tests</p></li> |
| <li><p>[AIRFLOW-652] Remove obsolete endpoint</p></li> |
| <li><p>[AIRFLOW-345] Add contrib ECSOperator</p></li> |
| <li><p>[AIRFLOW-650] Adding Celect to user list</p></li> |
| <li><p>[AIRFLOW-510] Filter Paused Dags, show Last Run & Trigger Dag</p></li> |
| <li><p>[AIRFLOW-643] Improve date handling for sf_hook</p></li> |
| <li><p>[AIRFLOW-638] Add schema_update_options to GCP ops</p></li> |
| <li><p>[AIRFLOW-640] Install and enable nose-ignore-docstring</p></li> |
| <li><p>[AIRFLOW-639]AIRFLOW-639] Alphasort package names</p></li> |
| <li><p>[AIRFLOW-375] Fix pylint errors</p></li> |
| <li><p>[AIRFLOW-347] Show empty DAG runs in tree view</p></li> |
| <li><p>[AIRFLOW-628] Adding SalesforceHook to contrib/hooks</p></li> |
| <li><p>[AIRFLOW-514] hive hook loads data from pandas DataFrame into hive and infers types</p></li> |
| <li><p>[AIRFLOW-565] Fixes DockerOperator on Python3.x</p></li> |
| <li><p>[AIRFLOW-635] Encryption option for S3 hook</p></li> |
| <li><p>[AIRFLOW-137] Fix max_active_runs on clearing tasks</p></li> |
| <li><p>[AIRFLOW-343] Fix schema plumbing in HiveServer2Hook</p></li> |
| <li><p>[AIRFLOW-130] Fix ssh operator macosx</p></li> |
| <li><p>[AIRFLOW-633] Show TI attributes in TI view</p></li> |
| <li><p>[AIRFLOW-626][AIRFLOW-1] HTML Content does not show up when sending email with attachment</p></li> |
| <li><p>[AIRFLOW-533] Set autocommit via set_autocommit</p></li> |
| <li><p>[AIRFLOW-629] stop pinning lxml</p></li> |
| <li><p>[AIRFLOW-464] Add setdefault method to Variable</p></li> |
| <li><p>[AIRFLOW-626][AIRFLOW-1] HTML Content does not show up when sending email with attachment</p></li> |
| <li><p>[AIRFLOW-591] Add datadog hook & sensor</p></li> |
| <li><p>[AIRFLOW-561] Add RedshiftToS3Transfer operator</p></li> |
| <li><p>[AIRFLOW-570] Pass root to date form on gantt</p></li> |
| <li><p>[AIRFLOW-504] Store fractional seconds in MySQL tables</p></li> |
| <li><p>[AIRFLOW-623] LDAP attributes not always a list</p></li> |
| <li><p>[AIRFLOW-611] source_format in BigQueryBaseCursor</p></li> |
| <li><p>[AIRFLOW-619] Fix exception in Gantt chart</p></li> |
| <li><p>[AIRFLOW-618] Cast DateTimes to avoid sqlite errors</p></li> |
| <li><p>[AIRFLOW-422] Add JSON endpoint for task info</p></li> |
| <li><p>[AIRFLOW-616][AIRFLOW-617] Minor fixes to PR tool UX</p></li> |
| <li><p>[AIRFLOW-179] Fix DbApiHook with non-ASCII chars</p></li> |
| <li><p>[AIRFLOW-566] Add timeout while fetching logs</p></li> |
| <li><p>[AIRFLOW-615] Set graph glyphicon first</p></li> |
| <li><p>[AIRFLOW-609] Add application_name to PostgresHook</p></li> |
| <li><p>[AIRFLOW-604] Revert .first() to .one()</p></li> |
| <li><p>[AIRFLOW-370] Create AirflowConfigException in exceptions.py</p></li> |
| <li><p>[AIRFLOW-582] Fixes TI.get_dagrun filter (removes start_date)</p></li> |
| <li><p>[AIRFLOW-568] Fix double task_stats count if a DagRun is active</p></li> |
| <li><p>[AIRFLOW-585] Fix race condition in backfill execution loop</p></li> |
| <li><p>[AIRFLOW-580] Prevent landscape warning on .format</p></li> |
| <li><p>[AIRFLOW-597] Check if content is None, not false-equivalent</p></li> |
| <li><p>[AIRFLOW-586] test_dag_v1 fails from 0 to 3 a.m.</p></li> |
| <li><p>[AIRFLOW-453] Add XCom Admin Page</p></li> |
| <li><p>[AIRFLOW-588] Add Google Cloud Storage Object sensor[]</p></li> |
| <li><p>[AIRFLOW-592] example_xcom import Error</p></li> |
| <li><p>[AIRFLOW-587] Fix incorrect scope for Google Auth[]</p></li> |
| <li><p>[AIRFLOW-589] Add templatable job_name[]</p></li> |
| <li><p>[AIRFLOW-227] Show running config in config view</p></li> |
| <li><p>[AIRFLOW-319]AIRFLOW-319] xcom push response in HTTP Operator</p></li> |
| <li><p>[AIRFLOW-385] Add symlink to latest scheduler log directory</p></li> |
| <li><p>[AIRFLOW-583] Fix decode error in gcs_to_bq</p></li> |
| <li><p>[AIRFLOW-96] s3_conn_id using environment variable</p></li> |
| <li><p>[AIRFLOW-575] Clarify tutorial and FAQ about <cite>schedule_interval</cite> always inheriting from DAG object</p></li> |
| <li><p>[AIRFLOW-577] Output BigQuery job for improved debugging</p></li> |
| <li><p>[AIRFLOW-560] Get URI & SQLA engine from Connection</p></li> |
| <li><p>[AIRFLOW-518] Require DataProfilingMixin for Variables CRUD</p></li> |
| <li><p>[AIRFLOW-553] Fix load path for filters.js</p></li> |
| <li><p>[AIRFLOW-554] Add Jinja support to Spark-sql</p></li> |
| <li><p>[AIRFLOW-550] Make ssl config check empty string safe</p></li> |
| <li><p>[AIRFLOW-500] Use id for github allowed teams</p></li> |
| <li><p>[AIRFLOW-556] Add UI PR guidelines</p></li> |
| <li><p>[AIRFLOW-358][AIRFLOW-430] Add <cite>connections</cite> cli</p></li> |
| <li><p>[AIRFLOW-548] Load DAGs immediately & continually</p></li> |
| <li><p>[AIRFLOW-539] Updated BQ hook and BQ operator to support Standard SQL.</p></li> |
| <li><p>[AIRFLOW-378] Add string casting to params of spark-sql operator</p></li> |
| <li><p>[AIRFLOW-544] Add Pause/Resume toggle button</p></li> |
| <li><p>[AIRFLOW-333][AIRFLOW-258] Fix non-module plugin components</p></li> |
| <li><p>[AIRFLOW-542] Add tooltip to DAGs links icons</p></li> |
| <li><p>[AIRFLOW-530] Update docs to reflect connection environment var has to be in uppercase</p></li> |
| <li><p>[AIRFLOW-525] Update template_fields in Qubole Op</p></li> |
| <li><p>[AIRFLOW-480] Support binary file download from GCS</p></li> |
| <li><p>[AIRFLOW-198] Implement latest_only_operator</p></li> |
| <li><p>[AIRFLOW-91] Add SSL config option for the webserver</p></li> |
| <li><p>[AIRFLOW-191] Fix connection leak with PostgreSQL backend</p></li> |
| <li><p>[AIRFLOW-512] Fix 'bellow' typo in docs & comments</p></li> |
| <li><p>[AIRFLOW-509][AIRFLOW-1] Create operator to delete tables in BigQuery</p></li> |
| <li><p>[AIRFLOW-498] Remove hard-coded gcp project id</p></li> |
| <li><p>[AIRFLOW-505] Support unicode characters in authors' names</p></li> |
| <li><p>[AIRFLOW-494] Add per-operator success/failure metrics</p></li> |
| <li><p>[AIRFLOW-488] Fix test_simple fail</p></li> |
| <li><p>[AIRFLOW-468] Update panda requirement to 0.17.1</p></li> |
| <li><p>[AIRFLOW-159] Add cloud integration section + GCP documentation</p></li> |
| <li><p>[AIRFLOW-477][AIRFLOW-478] Restructure security section for clarity</p></li> |
| <li><p>[AIRFLOW-467] Allow defining of project_id in BigQueryHook</p></li> |
| <li><p>[AIRFLOW-483] Change print to logging statement</p></li> |
| <li><p>[AIRFLOW-475] make the segment granularity in Druid hook configurable</p></li> |
| </ul> |
| </div> |
| <div class="section" id="airflow-1-7-2"> |
| <h2>Airflow 1.7.2<a class="headerlink" href="#airflow-1-7-2" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>[AIRFLOW-463] Link Airflow icon to landing page</p></li> |
| <li><p>[AIRFLOW-149] Task Dependency Engine + Why Isn't My Task Running View</p></li> |
| <li><p>[AIRFLOW-361] Add default failure handler for the Qubole Operator</p></li> |
| <li><p>[AIRFLOW-353] Fix dag run status update failure</p></li> |
| <li><p>[AIRFLOW-447] Store source URIs in Python 3 compatible list</p></li> |
| <li><p>[AIRFLOW-443] Make module names unique when importing</p></li> |
| <li><p>[AIRFLOW-444] Add Google authentication backend</p></li> |
| <li><p>[AIRFLOW-446][AIRFLOW-445] Adds missing dataproc submit options</p></li> |
| <li><p>[AIRFLOW-431] Add CLI for CRUD operations on pools</p></li> |
| <li><p>[AIRFLOW-329] Update Dag Overview Page with Better Status Columns</p></li> |
| <li><p>[AIRFLOW-360] Fix style warnings in models.py</p></li> |
| <li><p>[AIRFLOW-425] Add white fill for null state tasks in tree view.</p></li> |
| <li><p>[AIRFLOW-69] Use dag runs in backfill jobs</p></li> |
| <li><p>[AIRFLOW-415] Make dag_id not found error clearer</p></li> |
| <li><p>[AIRFLOW-416] Use ordinals in README's company list</p></li> |
| <li><p>[AIRFLOW-369] Allow setting default DAG orientation</p></li> |
| <li><p>[AIRFLOW-410] Add 2 Q/A to the FAQ in the docs</p></li> |
| <li><p>[AIRFLOW-407] Add different colors for some sensors</p></li> |
| <li><p>[AIRFLOW-414] Improve error message for missing FERNET_KEY</p></li> |
| <li><p>[AIRFLOW-406] Sphinx/rst fixes</p></li> |
| <li><p>[AIRFLOW-412] Fix lxml dependency</p></li> |
| <li><p>[AIRFLOW-413] Fix unset path bug when backfilling via pickle</p></li> |
| <li><p>[AIRFLOW-78] Airflow clear leaves dag_runs</p></li> |
| <li><p>[AIRFLOW-402] Remove NamedHivePartitionSensor static check, add docs</p></li> |
| <li><p>[AIRFLOW-394] Add an option to the Task Duration graph to show cumulative times</p></li> |
| <li><p>[AIRFLOW-404] Retry download if unpacking fails for hive</p></li> |
| <li><p>[AIRFLOW-276] Gunicorn rolling restart</p></li> |
| <li><p>[AIRFLOW-399] Remove dags/testdruid.py</p></li> |
| <li><p>[AIRFLOW-400] models.py/DAG.set_dag_runs_state() does not correctly set state</p></li> |
| <li><p>[AIRFLOW-395] Fix colon/equal signs typo for resources in default config</p></li> |
| <li><p>[AIRFLOW-397] Documentation: Fix typo in the word "instantiating"</p></li> |
| <li><p>[AIRFLOW-395] Remove trailing commas from resources in config</p></li> |
| <li><p>[AIRFLOW-388] Add a new chart for Task_Tries for each DAG</p></li> |
| <li><p>[AIRFLOW-322] Fix typo in FAQ section</p></li> |
| <li><p>[AIRFLOW-375] Pylint fixes</p></li> |
| <li><p>limit scope to user email only AIRFLOW-386</p></li> |
| <li><p>[AIRFLOW-383] Cleanup example qubole operator dag</p></li> |
| <li><p>[AIRFLOW-160] Parse DAG files through child processes</p></li> |
| <li><p>[AIRFLOW-381] Manual UI Dag Run creation: require dag_id field</p></li> |
| <li><p>[AIRFLOW-373] Enhance CLI variables functionality</p></li> |
| <li><p>[AIRFLOW-379] Enhance Variables page functionality: import/export variables</p></li> |
| <li><p>[AIRFLOW-331] modify the LDAP authentication config lines in 'Security' sample codes</p></li> |
| <li><p>[AIRFLOW-356][AIRFLOW-355][AIRFLOW-354] Replace nobr, enable DAG only exists locally message, change edit DAG icon</p></li> |
| <li><p>[AIRFLOW-362] Import __future__ division</p></li> |
| <li><p>[AIRFLOW-359] Pin flask-login to 0.2.11</p></li> |
| <li><p>[AIRFLOW-261] Add bcc and cc fields to EmailOperator</p></li> |
| <li><p>[AIRFLOW-348] Fix code style warnings</p></li> |
| <li><p>[AIRFLOW-349] Add metric for number of zombies killed</p></li> |
| <li><p>[AIRFLOW-340] Remove unused dependency on Babel</p></li> |
| <li><p>[AIRFLOW-339]: Ability to pass a flower conf file</p></li> |
| <li><p>[AIRFLOW-341][operators] Add resource requirement attributes to operators</p></li> |
| <li><p>[AIRFLOW-335] Fix simple style errors/warnings</p></li> |
| <li><p>[AIRFLOW-337] Add __repr__ to VariableAccessor and VariableJsonAccessor</p></li> |
| <li><p>[AIRFLOW-334] Fix using undefined variable</p></li> |
| <li><p>[AIRFLOW-315] Fix blank lines code style warnings</p></li> |
| <li><p>[AIRFLOW-306] Add Spark-sql Hook and Operator</p></li> |
| <li><p>[AIRFLOW-327] Add rename method to the FTPHook</p></li> |
| <li><p>[AIRFLOW-321] Fix a wrong code example about tests/dags</p></li> |
| <li><p>[AIRFLOW-316] Always check DB state for Backfill Job execution</p></li> |
| <li><p>[AIRFLOW-264] Adding workload management for Hive</p></li> |
| <li><p>[AIRFLOW-297] support exponential backoff option for retry delay</p></li> |
| <li><p>[AIRFLOW-31][AIRFLOW-200] Add note to updating.md</p></li> |
| <li><p>[AIRFLOW-307] There is no __neq__ Python magic method.</p></li> |
| <li><p>[AIRFLOW-309] Add requirements of develop dependencies to docs</p></li> |
| <li><p>[AIRFLOW-307] Rename __neq__ to __ne__ Python magic method.</p></li> |
| <li><p>[AIRFLOW-313] Fix code style for sqoop_hook.py</p></li> |
| <li><p>[AIRFLOW-311] Fix wrong path in CONTRIBUTING.md</p></li> |
| <li><p>[AIRFLOW-24] DataFlow Java Operator</p></li> |
| <li><p>[AIRFLOW-308] Add link to refresh DAG within DAG view header</p></li> |
| <li><p>[AIRFLOW-314] Fix BigQuery cursor run_table_upsert method</p></li> |
| <li><p>[AIRFLOW-298] fix incubator disclaimer in docs</p></li> |
| <li><p>[AIRFLOW-284] HiveServer2Hook fix for cursor scope for get_results</p></li> |
| <li><p>[AIRFLOW-260] More graceful exit when issues can't be closed</p></li> |
| <li><p>[AIRFLOW-260] Handle case when no version is found</p></li> |
| <li><p>[AIRFLOW-228] Handle empty version list in PR tool</p></li> |
| <li><p>[AIRFLOW-302] Improve default squash commit message</p></li> |
| <li><p>[AIRFLOW-187] Improve prompt styling</p></li> |
| <li><p>[AIRFLOW-187] Fix typo in argument name</p></li> |
| <li><p>[AIRFLOW-187] Move "Close XXX" message to end of squash commit</p></li> |
| <li><p>[AIRFLOW-247] Add EMR hook, operators and sensors. Add AWS base hook</p></li> |
| <li><p>[AIRFLOW-301] Fix broken unit test</p></li> |
| <li><p>[AIRFLOW-100] Add execution_date_fn to ExternalTaskSensor</p></li> |
| <li><p>[AIRFLOW-282] Remove PR Tool logic that depends on version formatting</p></li> |
| <li><p>[AIRFLOW-291] Add index for state in TI table</p></li> |
| <li><p>[AIRFLOW-269] Add some unit tests for PostgreSQL</p></li> |
| <li><p>[AIRFLOW-296] template_ext is being treated as a string rather than a tuple in qubole operator</p></li> |
| <li><p>[AIRFLOW-286] Improve FTPHook to implement context manager interface</p></li> |
| <li><p>[AIRFLOW-243] Create NamedHivePartitionSensor</p></li> |
| <li><p>[AIRFLOW-246] Improve dag_stats endpoint query</p></li> |
| <li><p>[AIRFLOW-189] Highlighting of Parent/Child nodes in Graphs</p></li> |
| <li><p>[ARFLOW-255] Check dagrun timeout when comparing active runs</p></li> |
| <li><p>[AIRFLOW-281] Add port to mssql_hook</p></li> |
| <li><p>[AIRFLOW-285] Use Airflow 2.0 style imports for all remaining hooks/operators</p></li> |
| <li><p>[AIRFLOW-40] Add LDAP group filtering feature.</p></li> |
| <li><p>[AIRFLOW-277] Multiple deletions does not work in Task Instances view if using SQLite backend</p></li> |
| <li><p>[AIRFLOW-200] Make hook/operator imports lazy, and print proper exceptions</p></li> |
| <li><p>[AIRFLOW-283] Make store_to_xcom_key a templated field in GoogleCloudStorageDownloadOperator</p></li> |
| <li><p>[AIRFLOW-278] Support utf-8 encoding for SQL</p></li> |
| <li><p>[AIRFLOW-280] clean up tmp druid table no matter if an ingestion job succeeds or not</p></li> |
| <li><p>[AIRFLOW-274] Add XCom functionality to GoogleCloudStorageDownloadOperator</p></li> |
| <li><p>[AIRFLOW-273] Create an svg version of the Airflow logo.</p></li> |
| <li><p>[AIRFLOW-275] Update contributing guidelines</p></li> |
| <li><p>[AIRFLOW-244] Modify hive operator to inject analysis data</p></li> |
| <li><p>[AIRFLOW-162] Allow variable to be accessible into templates</p></li> |
| <li><p>[AIRFLOW-248] Add Apache license header to all files</p></li> |
| <li><p>[AIRFLOW-263] Remove temp backtick file</p></li> |
| <li><p>[AIRFLOW-252] Raise Sqlite exceptions when deleting tasks instance in WebUI</p></li> |
| <li><p>[AIRFLOW-180] Fix timeout behavior for sensors</p></li> |
| <li><p>[AIRFLOW-262] Simplify commands in MANIFEST.in</p></li> |
| <li><p>[AIRFLOW-31] Add zope dependency</p></li> |
| <li><p>[AIRFLOW-6] Remove dependency on Highcharts</p></li> |
| <li><p>[AIRFLOW-234] make task that are not <cite>running</cite> self-terminate</p></li> |
| <li><p>[AIRFLOW-256] Fix test_scheduler_reschedule heartrate</p></li> |
| <li><p>Add Python 3 compatibility fix</p></li> |
| <li><p>[AIRFLOW-31] Use standard imports for hooks/operators</p></li> |
| <li><p>[AIRFLOW-173] Initial implementation of FileSensor</p></li> |
| <li><p>[AIRFLOW-224] Collect orphaned tasks and reschedule them</p></li> |
| <li><p>[AIRFLOW-239] Fix tests indentation</p></li> |
| <li><p>[AIRFLOW-225] Better units for task duration graph</p></li> |
| <li><p>[AIRFLOW-241] Add testing done section to PR template</p></li> |
| <li><p>[AIRFLOW-222] Show duration of task instances in ui</p></li> |
| <li><p>[AIRFLOW-231] Do not eval user input in PrestoHook</p></li> |
| <li><p>[AIRFLOW-216] Add Sqoop Hook and Operator</p></li> |
| <li><p>[AIRFLOW-171] Add upgrade notes on email and S3 to 1.7.1.2</p></li> |
| <li><p>[AIRFLOW-238] Make compatible with flask-admin 1.4.1</p></li> |
| <li><p>[AIRFLOW-230][HiveServer2Hook] adding multi statements support</p></li> |
| <li><p>[AIRFLOW-142] setup_env.sh doesn't download hive tarball if hdp is specified as distro</p></li> |
| <li><p>[AIRFLOW-223] Make parametable the IP on which Flower binds to</p></li> |
| <li><p>[AIRFLOW-218] Added option to enable webserver gunicorn access/err logs</p></li> |
| <li><p>[AIRFLOW-213] Add "Closes #X" phrase to commit messages</p></li> |
| <li><p>[AIRFLOW-68] Align start_date with the schedule_interval</p></li> |
| <li><p>[AIRFLOW-9] Improving docs to meet Apache's standards</p></li> |
| <li><p>[AIRFLOW-131] Make XCom.clear more selective</p></li> |
| <li><p>[AIRFLOW-214] Fix occasion of detached taskinstance</p></li> |
| <li><p>[AIRFLOW-206] Add commit to close PR</p></li> |
| <li><p>[AIRFLOW-206] Always load local log files if they exist</p></li> |
| <li><p>[AIRFLOW-211] Fix JIRA "resolve" vs "close" behavior</p></li> |
| <li><p>[AIRFLOW-64] Add note about relative DAGS_FOLDER</p></li> |
| <li><p>[AIRFLOW-114] Sort plugins dropdown</p></li> |
| <li><p>[AIRFLOW-209] Add scheduler tests and improve lineage handling</p></li> |
| <li><p>[AIRFLOW-207] Improve JIRA auth workflow</p></li> |
| <li><p>[AIRFLOW-187] Improve PR tool UX</p></li> |
| <li><p>[AIRFLOW-155] Documentation of Qubole Operator</p></li> |
| <li><p>Optimize and refactor process_dag</p></li> |
| <li><p>[AIRFLOW-185] Handle empty versions list</p></li> |
| <li><p>[AIRFLOW-201] Fix for HiveMetastoreHook + kerberos</p></li> |
| <li><p>[AIRFLOW-202]: Fixes stray print line</p></li> |
| <li><p>[AIRFLOW-196] Fix bug that exception is not handled in HttpSensor</p></li> |
| <li><p>[AIRFLOW-195] : Add toggle support to subdag clearing in the CLI</p></li> |
| <li><p>[AIRFLOW-23] Support for Google Cloud DataProc</p></li> |
| <li><p>[AIRFLOW-25] Configuration for Celery always required</p></li> |
| <li><p>[AIRFLOW-190] Add codecov and remove download count</p></li> |
| <li><p>[AIRFLOW-168] Correct evaluation of @once schedule</p></li> |
| <li><p>[AIRFLOW-183] Fetch log from remote when worker returns 4xx/5xx response</p></li> |
| <li><p>[AIRFLOW-181] Fix failing unpacking of hadoop by redownloading</p></li> |
| <li><p>[AIRFLOW-176] remove unused formatting key</p></li> |
| <li><p>[AIRFLOW-167]: Add dag_state option in cli</p></li> |
| <li><p>[AIRFLOW-178] Fix bug so that zip file is detected in DAG folder</p></li> |
| <li><p>[AIRFLOW-176] Improve PR Tool JIRA workflow</p></li> |
| <li><p>AIRFLOW-45: Support Hidden Airflow Variables</p></li> |
| <li><p>[AIRFLOW-175] Run git-reset before checkout in PR tool</p></li> |
| <li><p>[AIRFLOW-157] Make PR tool Py3-compat; add JIRA command</p></li> |
| <li><p>[AIRFLOW-170] Add missing @apply_defaults</p></li> |
| </ul> |
| </div> |
| <div class="section" id="airflow-1-7-1-2016-05-19"> |
| <h2>Airflow 1.7.1, 2016-05-19<a class="headerlink" href="#airflow-1-7-1-2016-05-19" title="Permalink to this headline">¶</a></h2> |
| <ul class="simple"> |
| <li><p>Fix : Don't treat premature tasks as could_not_run tasks</p></li> |
| <li><p>AIRFLOW-92 Avoid unneeded upstream_failed session closes apache/airflow#1485</p></li> |
| <li><p>Add logic to lock DB and avoid race condition</p></li> |
| <li><p>Handle queued tasks from multiple jobs/executors</p></li> |
| <li><p>AIRFLOW-52 Warn about overwriting tasks in a DAG</p></li> |
| <li><p>Fix corner case with joining processes/queues (#1473)</p></li> |
| <li><p>[AIRFLOW-52] Fix bottlenecks when working with many tasks</p></li> |
| <li><p>Add columns to toggle extra detail in the connection list view.</p></li> |
| <li><p>Log the number of errors when importing DAGs</p></li> |
| <li><p>Log dagbag metrics duplicate messages in queue into Statsd (#1406)</p></li> |
| <li><p>Clean up issue template (#1419)</p></li> |
| <li><p>correct missed arg.foreground to arg.daemon in cli</p></li> |
| <li><p>Reinstate imports for github enterprise auth</p></li> |
| <li><p>Use os.execvp instead of subprocess.Popen for the webserver</p></li> |
| <li><p>Revert from using "--foreground" to "--daemon"</p></li> |
| <li><p>Implement a Cloudant hook</p></li> |
| <li><p>Add missing args to <cite>airflow clear</cite></p></li> |
| <li><p>Fixed a bug in the scheduler: num_runs used where runs intended</p></li> |
| <li><p>Add multiprocessing support to the scheduler</p></li> |
| <li><p>Partial fix to make sure next_run_date cannot be None</p></li> |
| <li><p>Support list/get/set variables in the CLI</p></li> |
| <li><p>Properly handle BigQuery booleans in BigQuery hook.</p></li> |
| <li><p>Added the ability to view XCom variables in webserver</p></li> |
| <li><p>Change DAG.tasks from a list to a dict</p></li> |
| <li><p>Add support for zipped dags</p></li> |
| <li><p>Stop creating hook on instantiating of S3 operator</p></li> |
| <li><p>User subquery in views to find running DAGs</p></li> |
| <li><p>Prevent DAGs from being reloaded on every scheduler iteration</p></li> |
| <li><p>Add a missing word to docs</p></li> |
| <li><p>Document the parameters of <cite>DbApiHook</cite></p></li> |
| <li><p>added oracle operator with existing oracle hook</p></li> |
| <li><p>Add PyOpenSSL to Google Cloud gcp_api.</p></li> |
| <li><p>Remove executor error unit test</p></li> |
| <li><p>Add DAG inference, deferral, and context manager</p></li> |
| <li><p>Don't return error when writing files to Google cloud storage.</p></li> |
| <li><p>Fix GCS logging for gcp_api.</p></li> |
| <li><p>Ensure attr is in scope for error message</p></li> |
| <li><p>Fixing misnamed PULL_REQUEST_TEMPLATE</p></li> |
| <li><p>Extract non_pooled_task_slot_count into a configuration param</p></li> |
| <li><p>Update plugins.rst for clarity on the example (#1309)</p></li> |
| <li><p>Fix s3 logging issue</p></li> |
| <li><p>Add twitter feed example dag</p></li> |
| <li><p>GitHub ISSUE_TEMPLATE & PR_TEMPLATE cleanup</p></li> |
| <li><p>Reduce logger verbosity</p></li> |
| <li><p>Adding a PR Template</p></li> |
| <li><p>Add Lucid to list of users</p></li> |
| <li><p>Fix usage of asciiart</p></li> |
| <li><p>Use session instead of outdated main_session for are_dependencies_met</p></li> |
| <li><p>Fix celery flower port allocation</p></li> |
| <li><p>Fix for missing edit actions due to flask-admin upgrade</p></li> |
| <li><p>Fix typo in comment in prioritize_queued method</p></li> |
| <li><p>Add HipchatOperator</p></li> |
| <li><p>Include all example dags in backfill unit test</p></li> |
| <li><p>Make sure skipped jobs are actually skipped</p></li> |
| <li><p>Fixing a broken example dag, example_skip_dag.py</p></li> |
| <li><p>Add consistent and thorough signal handling and logging</p></li> |
| <li><p>Allow Operators to specify SKIPPED status internally</p></li> |
| <li><p>Update docstring for executor trap unit test</p></li> |
| <li><p>Doc: explain the usage of Jinja templating for templated params</p></li> |
| <li><p>Don't schedule runs before the DAG's start_date</p></li> |
| <li><p>Fix infinite retries with pools, with test</p></li> |
| <li><p>Fix handling of deadlocked jobs</p></li> |
| <li><p>Show only Airflow's deprecation warnings</p></li> |
| <li><p>Set DAG_FOLDER for unit tests</p></li> |
| <li><p>Missing comma in setup.py</p></li> |
| <li><p>Deprecate args and kwargs in BaseOperator</p></li> |
| <li><p>Raise deep scheduler exceptions to force a process restart.</p></li> |
| <li><p>Change inconsistent example DAG owners</p></li> |
| <li><p>Fix module path of send_email_smtp in configuration</p></li> |
| <li><p>added Gentner Lab to list of users</p></li> |
| <li><p>Increase timeout time for unit test</p></li> |
| <li><p>Fix reading strings from conf</p></li> |
| <li><p>CHORE - Remove Trailing Spaces</p></li> |
| <li><p>Fix SSHExecuteOperator crash when using a custom ssh port</p></li> |
| <li><p>Add note about Airflow components to template</p></li> |
| <li><p>Rewrite BackfillJob logic for clarity</p></li> |
| <li><p>Add unit tests</p></li> |
| <li><p>Fix miscellaneous bugs and clean up code</p></li> |
| <li><p>Fix logic for determining DagRun states</p></li> |
| <li><p>Make SchedulerJob not run EVERY queued task</p></li> |
| <li><p>Improve BackfillJob handling of queued/deadlocked tasks</p></li> |
| <li><p>Introduce ignore_depends_on_past parameters</p></li> |
| <li><p>Use Popen with CeleryExecutor</p></li> |
| <li><p>Rename user table to users to avoid conflict with postgres</p></li> |
| <li><p>Beware of negative pool slots.</p></li> |
| <li><p>Add support for calling_format from boto to S3_Hook</p></li> |
| <li><p>Add PyPI meta data and sync version number</p></li> |
| <li><p>Set dags_are_paused_at_creation's default value to True</p></li> |
| <li><p>Resurface S3Log class eaten by rebase/push -f</p></li> |
| <li><p>Add missing session.commit() at end of initdb</p></li> |
| <li><p>Validate that subdag tasks have pool slots available, and test</p></li> |
| <li><p>Use urlparse for remote GCS logs, and add unit tests</p></li> |
| <li><p>Make webserver worker timeout configurable</p></li> |
| <li><p>Fixed scheduling for @once interval</p></li> |
| <li><p>Use psycopg2's API for serializing postgres cell values</p></li> |
| <li><p>Make the provide_session decorator more robust</p></li> |
| <li><p>update link to Lyft's website</p></li> |
| <li><p>use num_shards instead of partitions to be consistent with batch ingestion</p></li> |
| <li><p>Add documentation links to README</p></li> |
| <li><p>Update docs with separate configuration section</p></li> |
| <li><p>Fix airflow.utils deprecation warning code being Python 3 incompatible</p></li> |
| <li><p>Extract dbapi cell serialization into its own method</p></li> |
| <li><p>Set Postgres autocommit as supported only if server version is < 7.4</p></li> |
| <li><p>Use refactored utils module in unit test imports</p></li> |
| <li><p>Add changelog for 1.7.0</p></li> |
| <li><p>Use LocalExecutor on Travis if possible</p></li> |
| <li><p>remove unused logging,errno, MiniHiveCluster imports</p></li> |
| <li><p>remove extra import of logging lib</p></li> |
| <li><p>Fix required gcloud version</p></li> |
| <li><p>Refactoring utils into smaller submodules</p></li> |
| <li><p>Properly measure number of task retry attempts</p></li> |
| <li><p>Add function to get configuration as dict, plus unit tests</p></li> |
| <li><p>Merge branch 'master' into hivemeta_sasl</p></li> |
| <li><p>Add wiki link to README.md</p></li> |
| <li><p>[hotfix] make email.Utils > email.utils for py3</p></li> |
| <li><p>Add the missing "Date" header to the warning e-mails</p></li> |
| <li><p>Add the missing "Date" header to the warning e-mails</p></li> |
| <li><p>Check name of SubDag class instead of class itself</p></li> |
| <li><p>[hotfix] removing repo_token from .coveralls.yml</p></li> |
| <li><p>Set the service_name in coverals.yml</p></li> |
| <li><p>Fixes #1223</p></li> |
| <li><p>Update Airflow docs for remote logging</p></li> |
| <li><p>Add unit tests for trapping Executor errors</p></li> |
| <li><p>Make sure Executors properly trap errors</p></li> |
| <li><p>Fix HttpOpSensorTest to use fake request session</p></li> |
| <li><p>Linting</p></li> |
| <li><p>Add an example on pool usage in the documentation</p></li> |
| <li><p>Add two methods to bigquery hook's base cursor: run_table_upsert, which adds a table or updates an existing table; and run_grant_dataset_view_access, which grants view access to a given dataset for a given table.</p></li> |
| <li><p>Tasks references upstream and downstream tasks using strings instead of references</p></li> |
| <li><p>Fix typos in models.py</p></li> |
| <li><p>Fix broken links in documentation</p></li> |
| <li><p>[hotfix] fixing the Scheduler CLI to make dag_id optional</p></li> |
| <li><p>Update link to Common Pitfalls wiki page in README</p></li> |
| <li><p>Allow disabling periodic committing when inserting rows with DbApiHook</p></li> |
| <li><p>added Glassdoor to "who uses airflow"</p></li> |
| <li><p>Fix typo preventing from launching webserver</p></li> |
| <li><p>Documentation badge</p></li> |
| <li><p>Fixing ISSUE_TEMPLATE name to include .md suffix</p></li> |
| <li><p>Adding an ISSUE_TEMPLATE to ensure that issues are adequately defined</p></li> |
| <li><p>Linting & debugging</p></li> |
| <li><p>Refactoring the CLI to be data-driven</p></li> |
| <li><p>Updating the Bug Reporting protocol in the Contributing.md file</p></li> |
| <li><p>Fixing the docs</p></li> |
| <li><p>Clean up references to old session</p></li> |
| <li><p>remove session reference</p></li> |
| <li><p>resolve conflict</p></li> |
| <li><p>clear xcom data when task instance starts</p></li> |
| <li><p>replace main_session with @provide_session</p></li> |
| <li><p>Add extras to installation.rst</p></li> |
| <li><p>Changes to Contributing to reflect more closely the current state of development.</p></li> |
| <li><p>Modifying README to link to the wiki committer list</p></li> |
| <li><p>docs: fixes a spelling mistake in default config</p></li> |
| <li><p>Set killMode to 'control-group' for webservice.service</p></li> |
| <li><p>Set KillMode to 'control-group' for worker.service</p></li> |
| <li><p>Linting</p></li> |
| <li><p>Fix WebHdfsSensor</p></li> |
| <li><p>Adding more licenses to pass checks</p></li> |
| <li><p>fixing landscape's config</p></li> |
| <li><p>[hotfix] typo that made it in master</p></li> |
| <li><p>[hotfix] fixing landscape requirement detection</p></li> |
| <li><p>Make testing on hive conditional</p></li> |
| <li><p>Merge remote-tracking branch 'upstream/master' into minicluster</p></li> |
| <li><p>Update README.md</p></li> |
| <li><p>Throwing in a few license to pass the build</p></li> |
| <li><p>Adding a reqs.txt for landscape.io</p></li> |
| <li><p>Pointing to a reqs file</p></li> |
| <li><p>Some linting</p></li> |
| <li><p>Adding a .landscape.yml file</p></li> |
| <li><p>badge for PyPI version</p></li> |
| <li><p>Add license and ignore for sql and csv</p></li> |
| <li><p>Use correct connection id</p></li> |
| <li><p>Use correct table name</p></li> |
| <li><p>Provide data for ci tests</p></li> |
| <li><p>New badge for showing staleness of reqs</p></li> |
| <li><p>Removing requirements.txt as it is uni-dimensional</p></li> |
| <li><p>Make it work on py3</p></li> |
| <li><p>Remove decode for logging</p></li> |
| <li><p>Also keep py2 compatible</p></li> |
| <li><p>More py3 fixes</p></li> |
| <li><p>Convert to bytes for py3 compat</p></li> |
| <li><p>Make sure to be py3 compatible</p></li> |
| <li><p>Use unicodecsv to make it py3 compatible</p></li> |
| <li><p>Replace tab with spaces Remove unused import</p></li> |
| <li><p>Merge remote-tracking branch 'upstream/master'</p></li> |
| <li><p>Support decimal types in MySQL to GCS</p></li> |
| <li><p>Make sure to write binary as string can be unicode</p></li> |
| <li><p>Ignore metastore</p></li> |
| <li><p>More impyla fixes</p></li> |
| <li><p>Test HivemetaStore if Python 2</p></li> |
| <li><p>Allow users to set hdfs_namenode_principal in HDFSHook config</p></li> |
| <li><p>Add tests for Hiveserver2 and fix some issues from impyla</p></li> |
| <li><p>Merge branch 'impyla' into minicluster</p></li> |
| <li><p>This patch allows for testing of hive operators and hooks. Sasl is used (NoSasl in connection string is not possible). Tests have been adjusted.</p></li> |
| <li><p>Treat SKIPPED and SUCCESS the same way when evaluating depends_on_past=True</p></li> |
| <li><p>fix bigquery hook</p></li> |
| <li><p>Version cap for gcp_api</p></li> |
| <li><p>Fix typo when returning VerticaHook</p></li> |
| <li><p>Adding fernet key to use it as part of stdout commands</p></li> |
| <li><p>Adding support for ssl parameters. (picking up from jthomas123)</p></li> |
| <li><p>More detail in error message.</p></li> |
| <li><p>Make sure paths don't conflict bc of trailing /</p></li> |
| <li><p>Change gcs_hook to self.hook</p></li> |
| <li><p>Refactor remote log read/write and add GCS support</p></li> |
| <li><p>Only use multipart upload in S3Hook if file is large enough</p></li> |
| <li><p>Merge branch 'airbnb/master'</p></li> |
| <li><p>Add GSSAPI SASL to HiveMetaStoreHook.</p></li> |
| <li><p>Add warning for deprecated setting</p></li> |
| <li><p>Use kerberos_service_name = 'hive' as standard instead of 'impala'.</p></li> |
| <li><p>Use GSSAPI instead of KERBEROS and provide backwards compatibility</p></li> |
| <li><p>ISSUE-1123 Use impyla instead of pyhs2</p></li> |
| <li><p>Set celery_executor to use queue name as exchange</p></li> |
| </ul> |
| </div> |
| </div> |
| |
| |
| <div class="pager" role="navigation" aria-label="related navigation"> |
| <a rel="prev" title="Airflow's release process" href="release-process.html" > |
| <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="p">Previous</button> |
| </a> |
| <a rel="next" title="Best Practices" href="best-practices.html" > |
| <button class="btn-hollow btn-blue bodytext__medium--cerulean-blue" accesskey="n">Next</button> |
| </a> |
| </div> |
| </div> |
| |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="rating-container"> |
| <p class="bodytext__medium--greyish-brown font-weight-500">Was this entry helpful?</p> |
| <div class="rating"> |
| |
| <div id="rate-star-5" class="rate-star"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="21.05" height="20.02" viewBox="0 0 21.05 20.02"> |
| <g id="Group_806" data-name="Group 806" transform="translate(-774.404 -13.178)"> |
| <path id="Path_715" d="M791.434 33.2l-6.5-3.42-6.5 3.42 1.242-7.243-5.262-5.13 7.273-1.057 3.252-6.59 3.252 6.59 7.273 1.057-5.262 5.13z" fill="#017cee" data-name="Path 715"></path> |
| </g> |
| </svg> |
| |
| </div> |
| |
| <div id="rate-star-4" class="rate-star"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="21.05" height="20.02" viewBox="0 0 21.05 20.02"> |
| <g id="Group_806" data-name="Group 806" transform="translate(-774.404 -13.178)"> |
| <path id="Path_715" d="M791.434 33.2l-6.5-3.42-6.5 3.42 1.242-7.243-5.262-5.13 7.273-1.057 3.252-6.59 3.252 6.59 7.273 1.057-5.262 5.13z" fill="#017cee" data-name="Path 715"></path> |
| </g> |
| </svg> |
| |
| </div> |
| |
| <div id="rate-star-3" class="rate-star"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="21.05" height="20.02" viewBox="0 0 21.05 20.02"> |
| <g id="Group_806" data-name="Group 806" transform="translate(-774.404 -13.178)"> |
| <path id="Path_715" d="M791.434 33.2l-6.5-3.42-6.5 3.42 1.242-7.243-5.262-5.13 7.273-1.057 3.252-6.59 3.252 6.59 7.273 1.057-5.262 5.13z" fill="#017cee" data-name="Path 715"></path> |
| </g> |
| </svg> |
| |
| </div> |
| |
| <div id="rate-star-2" class="rate-star"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="21.05" height="20.02" viewBox="0 0 21.05 20.02"> |
| <g id="Group_806" data-name="Group 806" transform="translate(-774.404 -13.178)"> |
| <path id="Path_715" d="M791.434 33.2l-6.5-3.42-6.5 3.42 1.242-7.243-5.262-5.13 7.273-1.057 3.252-6.59 3.252 6.59 7.273 1.057-5.262 5.13z" fill="#017cee" data-name="Path 715"></path> |
| </g> |
| </svg> |
| |
| </div> |
| |
| <div id="rate-star-1" class="rate-star"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="21.05" height="20.02" viewBox="0 0 21.05 20.02"> |
| <g id="Group_806" data-name="Group 806" transform="translate(-774.404 -13.178)"> |
| <path id="Path_715" d="M791.434 33.2l-6.5-3.42-6.5 3.42 1.242-7.243-5.262-5.13 7.273-1.057 3.252-6.59 3.252 6.59 7.273 1.057-5.262 5.13z" fill="#017cee" data-name="Path 715"></path> |
| </g> |
| </svg> |
| |
| </div> |
| |
| </div> |
| </div> |
| |
| </main> |
| |
| |
| |
| |
| <nav class="wy-nav-side-toc"> |
| <div class="wy-menu-vertical"> |
| <ul> |
| <li><a class="reference internal" href="#">Changelog</a><ul> |
| <li><a class="reference internal" href="#airflow-2-1-0-2021-05-21">Airflow 2.1.0, 2021-05-21</a><ul> |
| <li><a class="reference internal" href="#new-features">New Features</a></li> |
| <li><a class="reference internal" href="#improvements">Improvements</a></li> |
| <li><a class="reference internal" href="#bug-fixes">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#doc-only-changes">Doc only changes</a></li> |
| <li><a class="reference internal" href="#misc-internal">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-2-0-2-2021-04-19">Airflow 2.0.2, 2021-04-19</a><ul> |
| <li><a class="reference internal" href="#id1">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id2">Improvements</a></li> |
| <li><a class="reference internal" href="#id3">Doc only changes</a></li> |
| <li><a class="reference internal" href="#id4">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-2-0-1-2021-02-08">Airflow 2.0.1, 2021-02-08</a><ul> |
| <li><a class="reference internal" href="#id5">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id6">Improvements</a></li> |
| <li><a class="reference internal" href="#id7">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-2-0-0-2020-12-18">Airflow 2.0.0, 2020-12-18</a></li> |
| <li><a class="reference internal" href="#airflow-1-10-15-2021-03-17">Airflow 1.10.15, 2021-03-17</a><ul> |
| <li><a class="reference internal" href="#id8">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id9">Improvements</a></li> |
| <li><a class="reference internal" href="#id10">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-14-2020-12-10">Airflow 1.10.14, 2020-12-10</a><ul> |
| <li><a class="reference internal" href="#id11">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id12">Improvements</a></li> |
| <li><a class="reference internal" href="#id13">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-13-2020-11-25">Airflow 1.10.13, 2020-11-25</a><ul> |
| <li><a class="reference internal" href="#id14">New Features</a></li> |
| <li><a class="reference internal" href="#id15">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id16">Improvements</a></li> |
| <li><a class="reference internal" href="#deprecations">Deprecations</a></li> |
| <li><a class="reference internal" href="#id17">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-12-2020-08-25">Airflow 1.10.12, 2020-08-25</a><ul> |
| <li><a class="reference internal" href="#id18">New Features</a></li> |
| <li><a class="reference internal" href="#id19">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id20">Improvements</a></li> |
| <li><a class="reference internal" href="#id21">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-11-2020-07-10">Airflow 1.10.11, 2020-07-10</a><ul> |
| <li><a class="reference internal" href="#id22">New Features</a></li> |
| <li><a class="reference internal" href="#id23">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id24">Improvements</a></li> |
| <li><a class="reference internal" href="#id25">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-10-2020-04-09">Airflow 1.10.10, 2020-04-09</a><ul> |
| <li><a class="reference internal" href="#id26">New Features</a></li> |
| <li><a class="reference internal" href="#id27">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id28">Improvements</a></li> |
| <li><a class="reference internal" href="#id29">Misc/Internal</a></li> |
| <li><a class="reference internal" href="#id30">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-9-2020-02-07">Airflow 1.10.9, 2020-02-07</a><ul> |
| <li><a class="reference internal" href="#id31">Bug Fixes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-8-2020-02-07">Airflow 1.10.8, 2020-02-07</a><ul> |
| <li><a class="reference internal" href="#id32">New Features</a></li> |
| <li><a class="reference internal" href="#id33">Improvements</a></li> |
| <li><a class="reference internal" href="#id34">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id35">Misc/Internal</a></li> |
| <li><a class="reference internal" href="#id36">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-7-2019-12-24">Airflow 1.10.7, 2019-12-24</a><ul> |
| <li><a class="reference internal" href="#id37">New Features</a></li> |
| <li><a class="reference internal" href="#id38">Improvements</a></li> |
| <li><a class="reference internal" href="#id39">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id40">Misc/Internal</a></li> |
| <li><a class="reference internal" href="#id41">Doc only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-6-2019-10-28">Airflow 1.10.6, 2019-10-28</a><ul> |
| <li><a class="reference internal" href="#id42">New Features</a></li> |
| <li><a class="reference internal" href="#id43">Improvements</a></li> |
| <li><a class="reference internal" href="#id44">Bug Fixes</a></li> |
| <li><a class="reference internal" href="#id45">Doc-only changes</a></li> |
| <li><a class="reference internal" href="#id46">Misc/Internal</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-5-2019-09-04">Airflow 1.10.5, 2019-09-04</a><ul> |
| <li><a class="reference internal" href="#id47">New Features</a></li> |
| <li><a class="reference internal" href="#id48">Improvements</a></li> |
| <li><a class="reference internal" href="#id49">Bug fixes</a></li> |
| <li><a class="reference internal" href="#id50">Misc/Internal</a></li> |
| <li><a class="reference internal" href="#id51">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-4-2019-08-06">Airflow 1.10.4, 2019-08-06</a><ul> |
| <li><a class="reference internal" href="#id52">New Features</a></li> |
| <li><a class="reference internal" href="#improvement">Improvement</a></li> |
| <li><a class="reference internal" href="#id53">Bug fixes</a></li> |
| <li><a class="reference internal" href="#id54">Misc/Internal</a></li> |
| <li><a class="reference internal" href="#id55">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-3-2019-04-09">Airflow 1.10.3, 2019-04-09</a><ul> |
| <li><a class="reference internal" href="#new-feature">New Feature</a></li> |
| <li><a class="reference internal" href="#id56">Improvement</a></li> |
| <li><a class="reference internal" href="#id57">Bug fixes</a></li> |
| <li><a class="reference internal" href="#id58">Misc/Internal</a></li> |
| <li><a class="reference internal" href="#id59">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-2-2019-01-19">Airflow 1.10.2, 2019-01-19</a><ul> |
| <li><a class="reference internal" href="#id60">New features</a></li> |
| <li><a class="reference internal" href="#id61">Improvements</a></li> |
| <li><a class="reference internal" href="#id62">Bug fixes</a></li> |
| <li><a class="reference internal" href="#id63">Doc-only changes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-1-2018-11-13">Airflow 1.10.1, 2018-11-13</a><ul> |
| <li><a class="reference internal" href="#id64">New features</a></li> |
| <li><a class="reference internal" href="#id65">Improvements</a></li> |
| <li><a class="reference internal" href="#id66">Doc-only changes</a></li> |
| <li><a class="reference internal" href="#id67">Bug fixes</a></li> |
| </ul> |
| </li> |
| <li><a class="reference internal" href="#airflow-1-10-0-2018-08-03">Airflow 1.10.0, 2018-08-03</a></li> |
| <li><a class="reference internal" href="#airflow-1-9-0-2018-01-02">Airflow 1.9.0, 2018-01-02</a></li> |
| <li><a class="reference internal" href="#airflow-1-8-2-2017-09-04">Airflow 1.8.2, 2017-09-04</a></li> |
| <li><a class="reference internal" href="#airflow-1-8-1-2017-05-09">Airflow 1.8.1, 2017-05-09</a></li> |
| <li><a class="reference internal" href="#airflow-1-8-0-2017-03-12">Airflow 1.8.0, 2017-03-12</a></li> |
| <li><a class="reference internal" href="#airflow-1-7-2">Airflow 1.7.2</a></li> |
| <li><a class="reference internal" href="#airflow-1-7-1-2016-05-19">Airflow 1.7.1, 2016-05-19</a></li> |
| </ul> |
| </li> |
| </ul> |
| |
| </div> |
| </nav> |
| |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="base-layout--button"> |
| <a href="https://github.com/apache/airflow/edit/main/docs/apache-airflow/changelog.rst" rel="nofollow"> |
| |
| <button class="btn-hollow btn-brown btn-with-icon with-box-shadow button-fixed"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="30.76" height="30"> |
| <path d="M15.379 0a15.381 15.381 0 00-4.86 29.974c.769.141 1.05-.334 1.05-.741 0-.365-.013-1.332-.021-2.616-4.278.929-5.181-2.062-5.181-2.062a4.071 4.071 0 00-1.708-2.25c-1.4-.954.106-.935.106-.935a3.231 3.231 0 012.356 1.585 3.274 3.274 0 004.476 1.278 3.287 3.287 0 01.976-2.056c-3.415-.388-7.005-1.707-7.005-7.6a5.947 5.947 0 011.583-4.127 5.53 5.53 0 01.151-4.07s1.291-.413 4.229 1.577a14.577 14.577 0 017.7 0c2.936-1.99 4.225-1.577 4.225-1.577a5.523 5.523 0 01.153 4.07 5.937 5.937 0 011.581 4.127c0 5.909-3.6 7.209-7.022 7.589a3.672 3.672 0 011.044 2.848c0 2.056-.019 3.715-.019 4.219 0 .411.277.89 1.057.74A15.382 15.382 0 0015.378.001z" data-name="Path 224" fill="#51504f" fill-rule="evenodd"></path> |
| </svg> |
| |
| <span class="bodytext__medium--brownish-grey">Suggest a change on this page</span> |
| </button> |
| </a> |
| </div> |
| |
| |
| </div> |
| |
| |
| |
| |
| <footer> |
| <div class="footer-section footer-section__media-section"> |
| <div class="d-flex align-items-center"> |
| |
| <a class="footer-section__media-section--link" target="_blank" href="https://github.com"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="46.14" height="45" viewBox="0 0 46.14 45"> |
| <path id="Path_207" d="M228.962 1078.578a23.072 23.072 0 0 0-7.29 44.96c1.154.212 1.574-.5 1.574-1.112 0-.548-.02-2-.031-3.924-6.417 1.394-7.771-3.093-7.771-3.093a6.109 6.109 0 0 0-2.562-3.375c-2.095-1.431.159-1.4.159-1.4a4.846 4.846 0 0 1 3.533 2.377c2.058 3.525 5.4 2.507 6.714 1.917a4.926 4.926 0 0 1 1.464-3.084c-5.123-.582-10.508-2.562-10.508-11.4a8.919 8.919 0 0 1 2.374-6.191 8.3 8.3 0 0 1 .226-6.105s1.937-.62 6.344 2.365a21.857 21.857 0 0 1 11.551 0c4.4-2.985 6.338-2.365 6.338-2.365a8.284 8.284 0 0 1 .23 6.105 8.9 8.9 0 0 1 2.371 6.191c0 8.862-5.393 10.812-10.533 11.384a5.506 5.506 0 0 1 1.566 4.272c0 3.084-.028 5.572-.028 6.329 0 .617.415 1.334 1.586 1.109a23.073 23.073 0 0 0-7.308-44.958z" fill="#fff" fill-rule="evenodd" data-name="Path 207" transform="translate(-205.894 -1078.578)"></path> |
| </svg> |
| |
| </a> |
| |
| <a class="footer-section__media-section--link" target="_blank" href="https://jira.atlassian.com/"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="45" height="45" viewBox="0 0 45 45"> |
| <g id="Group_210" data-name="Group 210" transform="translate(-339.789 -1315.282)"> |
| <path id="Path_218" d="M394.82 1315.282h-21.671a9.784 9.784 0 0 0 9.784 9.778h3.986v3.857a9.784 9.784 0 0 0 9.784 9.771v-21.523a1.884 1.884 0 0 0-1.883-1.883z" fill="#fff" data-name="Path 218" transform="translate(-11.914)"></path> |
| <path id="Path_219" d="M378.14 1332.072h-21.671a9.778 9.778 0 0 0 9.778 9.778h4.018v3.857a9.784 9.784 0 0 0 9.752 9.778v-21.536a1.877 1.877 0 0 0-1.877-1.877z" fill="#fff" data-name="Path 219" transform="translate(-5.957 -5.996)"></path> |
| <path id="Path_220" d="M361.46 1348.862h-21.671a9.778 9.778 0 0 0 9.778 9.778h3.992v3.857a9.778 9.778 0 0 0 9.778 9.778v-21.529a1.883 1.883 0 0 0-1.877-1.884z" fill="#fff" data-name="Path 220" transform="translate(0 -11.993)"></path> |
| </g> |
| </svg> |
| |
| </a> |
| |
| <a class="footer-section__media-section--link" target="_blank" href="https://slack.com"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="45.073" height="45.073" viewBox="0 0 45.073 45.073"> |
| <g id="Group_208" data-name="Group 208" transform="translate(-661.145 -806.287)"> |
| <g id="Group_204" data-name="Group 204" transform="translate(661.145 830.01)"> |
| <path id="Path_208" d="M670.634 856.859a4.744 4.744 0 1 1-4.744-4.744h4.744z" fill="#fff" data-name="Path 208" transform="translate(-661.145 -852.115)"></path> |
| <path id="Path_209" d="M684.059 856.859a4.744 4.744 0 0 1 9.489 0v11.861a4.744 4.744 0 1 1-9.489 0z" fill="#fff" data-name="Path 209" transform="translate(-672.198 -852.115)"></path> |
| </g> |
| <g id="Group_205" data-name="Group 205" transform="translate(661.145 806.287)"> |
| <path id="Path_210" d="M688.8 815.776a4.744 4.744 0 1 1 4.744-4.745v4.745z" fill="#fff" data-name="Path 210" transform="translate(-672.198 -806.287)"></path> |
| <path id="Path_211" d="M677.751 829.2a4.744 4.744 0 0 1 0 9.489H665.89a4.744 4.744 0 1 1 0-9.489z" fill="#fff" data-name="Path 211" transform="translate(-661.145 -817.34)"></path> |
| </g> |
| <g id="Group_206" data-name="Group 206" transform="translate(684.868 806.287)"> |
| <path id="Path_212" d="M729.887 833.945a4.744 4.744 0 1 1 4.745 4.745h-4.745z" fill="#fff" data-name="Path 212" transform="translate(-718.026 -817.34)"></path> |
| <path id="Path_213" d="M716.462 822.893a4.744 4.744 0 1 1-9.489 0v-11.862a4.744 4.744 0 0 1 9.489 0z" fill="#fff" data-name="Path 213" transform="translate(-706.973 -806.287)"></path> |
| </g> |
| <g id="Group_207" data-name="Group 207" transform="translate(684.868 830.01)"> |
| <path id="Path_214" d="M711.718 875.029a4.744 4.744 0 1 1-4.745 4.744v-4.744z" fill="#fff" data-name="Path 214" transform="translate(-706.973 -863.168)"></path> |
| <path id="Path_215" d="M711.718 861.6a4.744 4.744 0 1 1 0-9.489h11.861a4.744 4.744 0 0 1 0 9.489z" fill="#fff" data-name="Path 215" transform="translate(-706.973 -852.115)"></path> |
| </g> |
| </g> |
| </svg> |
| |
| </a> |
| |
| <a class="footer-section__media-section--link" target="_blank" href="https://stackoverflow.com"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="37.647" height="44.6" viewBox="0 0 37.647 44.6"> |
| <g id="Group_209" data-name="Group 209" transform="translate(-645.2 -975.455)"> |
| <path id="Path_216" d="M677.028 1043.1v-11.948h3.966v15.914H645.2v-15.914h3.966v11.948z" fill="#fff" data-name="Path 216" transform="translate(0 -27.014)"></path> |
| <path id="Path_217" d="M661.012 1003.008l19.467 4.069.824-3.914-19.467-4.069zm2.575-9.27l18.025 8.395 1.648-3.605-18.025-8.446zm5-8.858l15.3 12.721 2.524-3.039-15.3-12.721zm9.888-9.425l-3.193 2.369 11.845 15.965 3.193-2.369zm-17.875 36.617h19.879v-3.966H660.6z" fill="#fff" data-name="Path 217" transform="translate(-7.469)"></path> |
| </g> |
| </svg> |
| |
| </a> |
| |
| <a class="footer-section__media-section--link" target="_blank" href="https://twitter.com"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="44.355" height="44.355" viewBox="0 0 44.355 44.355"> |
| <g id="Group_211" data-name="Group 211" transform="translate(-503 -1382.2)"> |
| <path id="Path_221" d="M541.811 1382.2h-33.267a5.546 5.546 0 0 0-5.544 5.544v33.266a5.547 5.547 0 0 0 5.544 5.545h33.267a5.546 5.546 0 0 0 5.544-5.545v-33.266a5.546 5.546 0 0 0-5.544-5.544zm-5.611 16.533c.011.244.011.488.011.732 0 7.507-5.722 16.178-16.179 16.178a16.173 16.173 0 0 1-8.7-2.539 10.92 10.92 0 0 0 1.353.078 11.4 11.4 0 0 0 7.064-2.44 5.685 5.685 0 0 1-5.311-3.947 5.725 5.725 0 0 0 2.561-.1 5.7 5.7 0 0 1-4.557-5.578v-.078a5.752 5.752 0 0 0 2.572.71 5.709 5.709 0 0 1-1.763-7.6 16.146 16.146 0 0 0 11.721 5.944 6.282 6.282 0 0 1-.144-1.3 5.688 5.688 0 0 1 9.836-3.892 11.3 11.3 0 0 0 3.615-1.375 5.721 5.721 0 0 1-2.506 3.149 11.538 11.538 0 0 0 3.271-.9 11.585 11.585 0 0 1-2.844 2.958z" fill="#fff" data-name="Path 221"></path> |
| </g> |
| </svg> |
| |
| </a> |
| |
| <a class="footer-section__media-section--link" target="_blank" href="https://youtube.com"> |
| <svg xmlns="http://www.w3.org/2000/svg" width="49.594" height="34.941" viewBox="0 0 49.594 34.941"> |
| <path id="Path_223" d="M1124.557 1230a6.232 6.232 0 0 0-4.385-4.413c-3.867-1.043-19.376-1.043-19.376-1.043s-15.508 0-19.376 1.043a6.232 6.232 0 0 0-4.385 4.413c-1.036 3.893-1.036 12.014-1.036 12.014s0 8.122 1.036 12.015a6.232 6.232 0 0 0 4.385 4.413c3.867 1.043 19.376 1.043 19.376 1.043s15.509 0 19.376-1.043a6.232 6.232 0 0 0 4.385-4.413c1.036-3.893 1.036-12.015 1.036-12.015s.001-8.123-1.036-12.014zm-28.833 19.388v-14.748l12.962 7.374z" fill="#fff" data-name="Path 223" transform="translate(-1076 -1224.542)"></path> |
| </svg> |
| |
| </a> |
| |
| </div> |
| |
| |
| <div class="footer-section__media-section--button-with-text"> |
| <span class="footer-section__media-section--text">Want to be a part of Apache Airflow?</span> |
| <a href="/community"> |
| |
| <button id="" class="btn-filled bodytext__medium--white ">Join community</button> |
| |
| </a> |
| </div> |
| |
| |
| </div> |
| <div class="footer-section footer-section__policies-section"> |
| <div class="footer-section"> |
| <span>© The Apache Software Foundation 2019</span> |
| <div class="footer-section__policies-section--policies"> |
| |
| <a href="https://www.apache.org/licenses/" class="footer-section__policies-section--policy-item"> |
| <span>License</span> |
| </a> |
| |
| <a href="https://www.apache.org/foundation/sponsorship.html" class="footer-section__policies-section--policy-item"> |
| <span>Donate</span> |
| </a> |
| |
| <a href="https://www.apache.org/foundation/thanks.html" class="footer-section__policies-section--policy-item"> |
| <span>Thanks</span> |
| </a> |
| |
| <a href="https://www.apache.org/security/" class="footer-section__policies-section--policy-item"> |
| <span>Security</span> |
| </a> |
| |
| |
| </div> |
| </div> |
| <span class="footer-section__policies-section--disclaimer"> |
| Apache Airflow, Apache, Airflow, the Airflow logo, and the Apache feather logo are either registered trademarks or trademarks of The Apache Software Foundation. |
| All other products or name brands are trademarks of their respective holders, including The Apache Software Foundation. |
| </span> |
| </div> |
| </footer> |
| <script type="text/javascript" src="_static/_gen/js/docs.js"></script> |
| <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script> |
| <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script> |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script> |
| <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script> |
| <script src="_static/jquery.js"></script> |
| <script src="_static/underscore.js"></script> |
| <script src="_static/doctools.js"></script> |
| <script src="_static/clipboard.min.js"></script> |
| <script src="_static/copybutton.js"></script> |
| <script src="_static/jira-links.js"></script> |
| </body> |
| </html> |