You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2020/03/23 16:40:42 UTC
[GitHub] [airflow] potiuk opened a new pull request #7841: Requirements now
depend on python version
potiuk opened a new pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841
---
Issue link: WILL BE INSERTED BY [boring-cyborg](https://github.com/kaxil/boring-cyborg)
Make sure to mark the boxes below before creating PR: [x]
- [x] Description above provides context of the change
- [x] Unit tests coverage for changes (not needed for documentation changes)
- [x] Commits follow "[How to write a good git commit message](http://chris.beams.io/posts/git-commit/)"
- [x] Relevant documentation is updated including usage instructions.
- [x] I will engage committers as explained in [Contribution Workflow Example](https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#contribution-workflow-example).
---
In case of fundamental code change, Airflow Improvement Proposal ([AIP](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvements+Proposals)) is needed.
In case of a new dependency, check compliance with the [ASF 3rd Party License Policy](https://www.apache.org/legal/resolved.html#category-x).
In case of backwards incompatible changes please leave a note in [UPDATING.md](https://github.com/apache/airflow/blob/master/UPDATING.md).
Read the [Pull Request Guidelines](https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#pull-request-guidelines) for more information.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397602652
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
Review comment:
Fixed
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397539204
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
+is updated. This is checked automatically in Travis CI build there are separate jobs for each
Review comment:
```suggestion
is updated. This is checked automatically in Travis CI build. There are separate jobs for each
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397601320
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
Review comment:
added
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] codecov-io edited a comment on issue #7841: Requirements
now depend on python version
Posted by GitBox <gi...@apache.org>.
codecov-io edited a comment on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603512068
# [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=h1) Report
> Merging [#7841](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=desc) into [master](https://codecov.io/gh/apache/airflow/commit/1982c3fdca1f04cfc41fc5b5e285d8f01c6b76ab&el=desc) will **decrease** coverage by `0.52%`.
> The diff coverage is `n/a`.
[![Impacted file tree graph](https://codecov.io/gh/apache/airflow/pull/7841/graphs/tree.svg?width=650&height=150&src=pr&token=WdLKlKHOAU)](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #7841 +/- ##
==========================================
- Coverage 86.97% 86.45% -0.53%
==========================================
Files 927 927
Lines 44963 44963
==========================================
- Hits 39108 38874 -234
- Misses 5855 6089 +234
```
| [Impacted Files](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [...flow/providers/apache/cassandra/hooks/cassandra.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2Nhc3NhbmRyYS9ob29rcy9jYXNzYW5kcmEucHk=) | `21.25% <0.00%> (-72.50%)` | :arrow_down: |
| [...w/providers/apache/hive/operators/mysql\_to\_hive.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2hpdmUvb3BlcmF0b3JzL215c3FsX3RvX2hpdmUucHk=) | `35.84% <0.00%> (-64.16%)` | :arrow_down: |
| [airflow/providers/postgres/operators/postgres.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcG9zdGdyZXMvb3BlcmF0b3JzL3Bvc3RncmVzLnB5) | `47.82% <0.00%> (-52.18%)` | :arrow_down: |
| [airflow/providers/redis/operators/redis\_publish.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvb3BlcmF0b3JzL3JlZGlzX3B1Ymxpc2gucHk=) | `50.00% <0.00%> (-50.00%)` | :arrow_down: |
| [airflow/providers/mongo/sensors/mongo.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbW9uZ28vc2Vuc29ycy9tb25nby5weQ==) | `53.33% <0.00%> (-46.67%)` | :arrow_down: |
| [airflow/providers/mysql/operators/mysql.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbXlzcWwvb3BlcmF0b3JzL215c3FsLnB5) | `55.00% <0.00%> (-45.00%)` | :arrow_down: |
| [airflow/providers/redis/sensors/redis\_key.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvc2Vuc29ycy9yZWRpc19rZXkucHk=) | `61.53% <0.00%> (-38.47%)` | :arrow_down: |
| [airflow/executors/celery\_executor.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9leGVjdXRvcnMvY2VsZXJ5X2V4ZWN1dG9yLnB5) | `50.67% <0.00%> (-37.84%)` | :arrow_down: |
| [...roviders/google/cloud/operators/postgres\_to\_gcs.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvZ29vZ2xlL2Nsb3VkL29wZXJhdG9ycy9wb3N0Z3Jlc190b19nY3MucHk=) | `54.28% <0.00%> (-31.43%)` | :arrow_down: |
| [airflow/providers/postgres/hooks/postgres.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcG9zdGdyZXMvaG9va3MvcG9zdGdyZXMucHk=) | `77.77% <0.00%> (-16.67%)` | :arrow_down: |
| ... and [7 more](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=footer). Last update [1982c3f...c1660bd](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397539036
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
Review comment:
```suggestion
use the right requirements file for the right python version.
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397541486
##########
File path: scripts/ci/docker-compose/base.yml
##########
@@ -59,6 +59,8 @@ services:
- DB_RESET
- ENABLED_SYSTEMS
- RUN_SYSTEM_TESTS
+ - DEFAULT_PYTHON_SHORT_VERSION
+ - PYTHON_SHORT_VERSION
Review comment:
Do we need both?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk edited a comment on issue #7841: Requirements now
depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk edited a comment on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-605003271
OK. fixed separate requirements for different python versions is green in CI @kaxil @mik-laj -> do you want to take a look before I merge (@turbaszek ) ?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538278
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
Review comment:
```suggestion
However, we now have ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397602871
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
+is updated. This is checked automatically in Travis CI build there are separate jobs for each
+python version that checks if the requirements should be updated.
+
+If they are not you should regenerate the requirements locally using one of the methods described below.
+
+Generating requirement files
+----------------------------
+
+This shuould be done every time after you modify setup.py file. You can generate requirement files
Review comment:
Fixed
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on issue #7841: Requirements now depend
on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603070770
BTW. I am going to re-write some parts of it. I came to the conclusion that generating requirements is too big of a hassle for pre-commits (especially that we need them in different versions) so I will do a separate breeze command (and script for those not using Breeze) so that whenever you modify setup.py and new requirements are needed you will be notified via CI rather than pre-commit. I think it's much less impact on the development workflow.
Bear with me :).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538762
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
Review comment:
```suggestion
This also works with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on issue #7841: Requirements now depend
on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-602719201
IT turned out that requirements are slightly different for different versions of python (especially in 1.10) so I had to add different version of requirements. At the same time I removed -pinned version. It's not really needed we should be able to easily install airflow now with one command:
```
pip install apache-airflow[gcp]==1.10.10 \
--constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397603326
##########
File path: scripts/ci/_utils.sh
##########
@@ -530,7 +531,7 @@ function confirm_image_rebuild() {
# Make sure to use /dev/tty first rather than stdin/stdout when available - this way confirm
# will works also in case of pre-commits (git does not pass stdin/stdout to pre-commit hooks)
# shellcheck disable=SC2094
- "${AIRFLOW_SOURCES}/confirm" "${ACTION} image ${THE_IMAGE_TYPE} (might take some time)" \
+ "${AIRFLOW_SOURCES}/confirm" "${ACTION} image ${THE_IMAGE_TYPE}-${PYTHON_SHORT_VERSION}" \
Review comment:
Yep.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r399147202
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_MAJOR_MINOR_VERSION=3.6
Review comment:
It's not strange. It's MAJOR+MINOR version. PYTHON_VERSION is by default set in this image to 3.6.9 (so full PYTHON_VERSION) and what we really need here just MAJOR/MINOR.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397602779
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
+is updated. This is checked automatically in Travis CI build there are separate jobs for each
Review comment:
Fixed,
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397603531
##########
File path: scripts/ci/docker-compose/base.yml
##########
@@ -59,6 +59,8 @@ services:
- DB_RESET
- ENABLED_SYSTEMS
- RUN_SYSTEM_TESTS
+ - DEFAULT_PYTHON_SHORT_VERSION
+ - PYTHON_SHORT_VERSION
Review comment:
Not any more :). It was only needed to generate requirements.txt file in the main repo but I removed it - it was nice for IDE's but very redundant and confusing.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397539382
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
+is updated. This is checked automatically in Travis CI build there are separate jobs for each
+python version that checks if the requirements should be updated.
+
+If they are not you should regenerate the requirements locally using one of the methods described below.
+
+Generating requirement files
+----------------------------
+
+This shuould be done every time after you modify setup.py file. You can generate requirement files
Review comment:
```suggestion
This should be done every time after you modify setup.py file. You can generate requirement files
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538872
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
Review comment:
```suggestion
Airflow 1.10.10 version:
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on issue #7841: Requirements now depend
on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-605003271
OK. fixed separate requirements for different python versions is green in CI @kaxil @mik-laj -> do you want to take a look ?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk merged pull request #7841: Requirements now depend
on python version
Posted by GitBox <gi...@apache.org>.
potiuk merged pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on issue #7841: Requirements now depend
on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603441221
@kaxil @ashb @turbaszek @mik-laj @dimberman -> We have much nicer version now. Requirement generation is now checked only as travis build (separately for each python version) rather than pre-commit and you can esily manually generate the requirements with breeze (examples in doc). Also when you modify setup.py in the way that it will require regeneration of the reuqirements, the build in CI will fail, show you with nice, coloured diff what is added and will ask you to run `breeze generate-requirements --python x.y` as needed.
Pls review. That's the last thing to cherry-pick and test prod image in airflow 1.10.10
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] codecov-io commented on issue #7841: Requirements now
depend on python version
Posted by GitBox <gi...@apache.org>.
codecov-io commented on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603512068
# [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=h1) Report
> Merging [#7841](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=desc) into [master](https://codecov.io/gh/apache/airflow/commit/1982c3fdca1f04cfc41fc5b5e285d8f01c6b76ab&el=desc) will **decrease** coverage by `1.01%`.
> The diff coverage is `n/a`.
[![Impacted file tree graph](https://codecov.io/gh/apache/airflow/pull/7841/graphs/tree.svg?width=650&height=150&src=pr&token=WdLKlKHOAU)](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #7841 +/- ##
==========================================
- Coverage 86.97% 85.95% -1.02%
==========================================
Files 927 927
Lines 44963 44963
==========================================
- Hits 39108 38650 -458
- Misses 5855 6313 +458
```
| [Impacted Files](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [...flow/providers/apache/cassandra/hooks/cassandra.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2Nhc3NhbmRyYS9ob29rcy9jYXNzYW5kcmEucHk=) | `21.25% <0.00%> (-72.50%)` | :arrow_down: |
| [...w/providers/apache/hive/operators/mysql\_to\_hive.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2hpdmUvb3BlcmF0b3JzL215c3FsX3RvX2hpdmUucHk=) | `35.84% <0.00%> (-64.16%)` | :arrow_down: |
| [airflow/operators/generic\_transfer.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9vcGVyYXRvcnMvZ2VuZXJpY190cmFuc2Zlci5weQ==) | `39.28% <0.00%> (-60.72%)` | :arrow_down: |
| [airflow/kubernetes/volume\_mount.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9rdWJlcm5ldGVzL3ZvbHVtZV9tb3VudC5weQ==) | `44.44% <0.00%> (-55.56%)` | :arrow_down: |
| [airflow/api/auth/backend/kerberos\_auth.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9hcGkvYXV0aC9iYWNrZW5kL2tlcmJlcm9zX2F1dGgucHk=) | `28.16% <0.00%> (-54.93%)` | :arrow_down: |
| [airflow/providers/postgres/operators/postgres.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcG9zdGdyZXMvb3BlcmF0b3JzL3Bvc3RncmVzLnB5) | `47.82% <0.00%> (-52.18%)` | :arrow_down: |
| [airflow/providers/redis/operators/redis\_publish.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvb3BlcmF0b3JzL3JlZGlzX3B1Ymxpc2gucHk=) | `50.00% <0.00%> (-50.00%)` | :arrow_down: |
| [airflow/kubernetes/volume.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9rdWJlcm5ldGVzL3ZvbHVtZS5weQ==) | `52.94% <0.00%> (-47.06%)` | :arrow_down: |
| [airflow/providers/mongo/sensors/mongo.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbW9uZ28vc2Vuc29ycy9tb25nby5weQ==) | `53.33% <0.00%> (-46.67%)` | :arrow_down: |
| [airflow/security/kerberos.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9zZWN1cml0eS9rZXJiZXJvcy5weQ==) | `30.43% <0.00%> (-45.66%)` | :arrow_down: |
| ... and [17 more](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=footer). Last update [1982c3f...c1660bd](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538375
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
Review comment:
```suggestion
automatically and committed in the requirements folder based on the set of all the latest working and tested
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] codecov-io edited a comment on issue #7841: Requirements
now depend on python version
Posted by GitBox <gi...@apache.org>.
codecov-io edited a comment on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603512068
# [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=h1) Report
> Merging [#7841](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=desc) into [master](https://codecov.io/gh/apache/airflow/commit/3cc37b1fed388b5bfb9a153443fb1e60282df5db&el=desc) will **decrease** coverage by `22.25%`.
> The diff coverage is `63.04%`.
[![Impacted file tree graph](https://codecov.io/gh/apache/airflow/pull/7841/graphs/tree.svg?width=650&height=150&src=pr&token=WdLKlKHOAU)](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #7841 +/- ##
===========================================
- Coverage 86.97% 64.72% -22.26%
===========================================
Files 926 927 +1
Lines 44982 44966 -16
===========================================
- Hits 39123 29104 -10019
- Misses 5859 15862 +10003
```
| [Impacted Files](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [airflow/executors/dask\_executor.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9leGVjdXRvcnMvZGFza19leGVjdXRvci5weQ==) | `25.75% <0.00%> (+19.87%)` | :arrow_up: |
| [airflow/operators/dummy\_operator.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9vcGVyYXRvcnMvZHVtbXlfb3BlcmF0b3IucHk=) | `88.88% <ø> (-11.12%)` | :arrow_down: |
| [airflow/operators/presto\_check\_operator.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9vcGVyYXRvcnMvcHJlc3RvX2NoZWNrX29wZXJhdG9yLnB5) | `0.00% <0.00%> (-100.00%)` | :arrow_down: |
| [airflow/providers/google/cloud/hooks/cloud\_sql.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvZ29vZ2xlL2Nsb3VkL2hvb2tzL2Nsb3VkX3NxbC5weQ==) | `67.25% <0.00%> (ø)` | |
| [.../google/cloud/utils/mlengine\_prediction\_summary.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvZ29vZ2xlL2Nsb3VkL3V0aWxzL21sZW5naW5lX3ByZWRpY3Rpb25fc3VtbWFyeS5weQ==) | `0.00% <0.00%> (ø)` | |
| [airflow/www/views.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy93d3cvdmlld3MucHk=) | `25.78% <0.00%> (-50.49%)` | :arrow_down: |
| [airflow/jobs/scheduler\_job.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9qb2JzL3NjaGVkdWxlcl9qb2IucHk=) | `14.26% <33.33%> (-76.62%)` | :arrow_down: |
| [airflow/jobs/backfill\_job.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9qb2JzL2JhY2tmaWxsX2pvYi5weQ==) | `12.92% <50.00%> (-79.20%)` | :arrow_down: |
| [airflow/providers/apache/hdfs/hooks/webhdfs.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2hkZnMvaG9va3Mvd2ViaGRmcy5weQ==) | `86.66% <85.71%> (-3.13%)` | :arrow_down: |
| [airflow/secrets/base\_secrets.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9zZWNyZXRzL2Jhc2Vfc2VjcmV0cy5weQ==) | `94.11% <94.11%> (ø)` | |
| ... and [515 more](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=footer). Last update [6486abc...9979f94](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397539097
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
Review comment:
```suggestion
The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after ``setup.py``
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397539315
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
+is updated. This is checked automatically in Travis CI build there are separate jobs for each
+python version that checks if the requirements should be updated.
+
+If they are not you should regenerate the requirements locally using one of the methods described below.
Review comment:
```suggestion
If they are not updated, you should regenerate the requirements locally using one of the methods described below.
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538596
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
Review comment:
```suggestion
requirement versions. Those ``requirements.txt`` files can be used as constraints file when installing apache
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r396942564
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_SHORT_VERSION=3.6
Review comment:
Yes. PYTHON_VERSION is set by default by the python base image and it is the full version (PYTHON_VERSION=3.7.9). It got so confusing that I decided I finally have to separate those two.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538133
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
Review comment:
```suggestion
still allowing the apache-airflow package to install. This means that 'apache-airflow' package might fail to
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397537666
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_SHORT_VERSION=3.6
Review comment:
Sounds good
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] codecov-io edited a comment on issue #7841: Requirements
now depend on python version
Posted by GitBox <gi...@apache.org>.
codecov-io edited a comment on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603512068
# [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=h1) Report
> Merging [#7841](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=desc) into [master](https://codecov.io/gh/apache/airflow/commit/1982c3fdca1f04cfc41fc5b5e285d8f01c6b76ab&el=desc) will **decrease** coverage by `0.75%`.
> The diff coverage is `n/a`.
[![Impacted file tree graph](https://codecov.io/gh/apache/airflow/pull/7841/graphs/tree.svg?width=650&height=150&src=pr&token=WdLKlKHOAU)](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #7841 +/- ##
==========================================
- Coverage 86.97% 86.22% -0.76%
==========================================
Files 927 927
Lines 44963 44963
==========================================
- Hits 39108 38769 -339
- Misses 5855 6194 +339
```
| [Impacted Files](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [...flow/providers/apache/cassandra/hooks/cassandra.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2Nhc3NhbmRyYS9ob29rcy9jYXNzYW5kcmEucHk=) | `21.25% <0.00%> (-72.50%)` | :arrow_down: |
| [...w/providers/apache/hive/operators/mysql\_to\_hive.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2hpdmUvb3BlcmF0b3JzL215c3FsX3RvX2hpdmUucHk=) | `35.84% <0.00%> (-64.16%)` | :arrow_down: |
| [airflow/operators/generic\_transfer.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9vcGVyYXRvcnMvZ2VuZXJpY190cmFuc2Zlci5weQ==) | `39.28% <0.00%> (-60.72%)` | :arrow_down: |
| [airflow/api/auth/backend/kerberos\_auth.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9hcGkvYXV0aC9iYWNrZW5kL2tlcmJlcm9zX2F1dGgucHk=) | `28.16% <0.00%> (-54.93%)` | :arrow_down: |
| [airflow/providers/postgres/operators/postgres.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcG9zdGdyZXMvb3BlcmF0b3JzL3Bvc3RncmVzLnB5) | `47.82% <0.00%> (-52.18%)` | :arrow_down: |
| [airflow/providers/redis/operators/redis\_publish.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvb3BlcmF0b3JzL3JlZGlzX3B1Ymxpc2gucHk=) | `50.00% <0.00%> (-50.00%)` | :arrow_down: |
| [airflow/providers/mongo/sensors/mongo.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbW9uZ28vc2Vuc29ycy9tb25nby5weQ==) | `53.33% <0.00%> (-46.67%)` | :arrow_down: |
| [airflow/security/kerberos.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9zZWN1cml0eS9rZXJiZXJvcy5weQ==) | `30.43% <0.00%> (-45.66%)` | :arrow_down: |
| [airflow/providers/mysql/operators/mysql.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbXlzcWwvb3BlcmF0b3JzL215c3FsLnB5) | `55.00% <0.00%> (-45.00%)` | :arrow_down: |
| [airflow/providers/redis/sensors/redis\_key.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvc2Vuc29ycy9yZWRpc19rZXkucHk=) | `61.53% <0.00%> (-38.47%)` | :arrow_down: |
| ... and [12 more](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=footer). Last update [1982c3f...c1660bd](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538375
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
Review comment:
```suggestion
automatically and committed in the requirements folder based on the set of all latest working and tested
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] mik-laj commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
mik-laj commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538396
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_SHORT_VERSION=3.6
Review comment:
What do you think about renaming to ``PYTHON_MINOR_VERSION``?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397601489
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
Review comment:
Done
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] turbaszek commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
turbaszek commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397665648
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_MAJOR_MINOR_VERSION=3.6
Review comment:
Why such strange name?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] mik-laj commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
mik-laj commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r398188442
##########
File path: Dockerfile.ci
##########
@@ -40,14 +43,19 @@ ARG DEPENDENCIES_EPOCH_NUMBER="2"
ENV DEPENDENCIES_EPOCH_NUMBER=${DEPENDENCIES_EPOCH_NUMBER}
# Install curl and gnupg2 - needed to download nodejs in the next step
+# also netselect-apt is used to choose the best mirror
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
curl \
gnupg2 \
+ netselect-apt \
&& apt-get autoremove -yqq --purge \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
+# Choose faster mirror to download dependencies
+RUN netselect-apt -o /etc/apt/sources.list
Review comment:
+1
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r399147338
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_MAJOR_MINOR_VERSION=3.6
Review comment:
Are you OK with it @turbaszek ?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397601566
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
Review comment:
Fixed
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] mik-laj commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
mik-laj commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397540234
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
Review comment:
```suggestion
as of Airflow 1.10.10.
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] codecov-io edited a comment on issue #7841: Requirements
now depend on python version
Posted by GitBox <gi...@apache.org>.
codecov-io edited a comment on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603512068
# [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=h1) Report
> Merging [#7841](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=desc) into [master](https://codecov.io/gh/apache/airflow/commit/2a98a61f596fa463f921aa4203a3b2019e2ac3a2?src=pr&el=desc) will **decrease** coverage by `22.37%`.
> The diff coverage is `n/a`.
[![Impacted file tree graph](https://codecov.io/gh/apache/airflow/pull/7841/graphs/tree.svg?width=650&token=WdLKlKHOAU&height=150&src=pr)](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #7841 +/- ##
===========================================
- Coverage 87.1% 64.72% -22.38%
===========================================
Files 928 927 -1
Lines 45025 44966 -59
===========================================
- Hits 39217 29104 -10113
- Misses 5808 15862 +10054
```
| [Impacted Files](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [...low/contrib/operators/wasb\_delete\_blob\_operator.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9jb250cmliL29wZXJhdG9ycy93YXNiX2RlbGV0ZV9ibG9iX29wZXJhdG9yLnB5) | `0% <0%> (-100%)` | :arrow_down: |
| [airflow/contrib/hooks/vertica\_hook.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9jb250cmliL2hvb2tzL3ZlcnRpY2FfaG9vay5weQ==) | `0% <0%> (-100%)` | :arrow_down: |
| [airflow/contrib/sensors/\_\_init\_\_.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9jb250cmliL3NlbnNvcnMvX19pbml0X18ucHk=) | `0% <0%> (-100%)` | :arrow_down: |
| [airflow/hooks/mssql\_hook.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9ob29rcy9tc3NxbF9ob29rLnB5) | `0% <0%> (-100%)` | :arrow_down: |
| [...viders/docker/example\_dags/example\_docker\_swarm.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvZG9ja2VyL2V4YW1wbGVfZGFncy9leGFtcGxlX2RvY2tlcl9zd2FybS5weQ==) | `0% <0%> (-100%)` | :arrow_down: |
| [airflow/hooks/webhdfs\_hook.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9ob29rcy93ZWJoZGZzX2hvb2sucHk=) | `0% <0%> (-100%)` | :arrow_down: |
| [airflow/contrib/sensors/emr\_base\_sensor.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9jb250cmliL3NlbnNvcnMvZW1yX2Jhc2Vfc2Vuc29yLnB5) | `0% <0%> (-100%)` | :arrow_down: |
| [...irflow/contrib/operators/slack\_webhook\_operator.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9jb250cmliL29wZXJhdG9ycy9zbGFja193ZWJob29rX29wZXJhdG9yLnB5) | `0% <0%> (-100%)` | :arrow_down: |
| [...providers/google/cloud/example\_dags/example\_dlp.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvZ29vZ2xlL2Nsb3VkL2V4YW1wbGVfZGFncy9leGFtcGxlX2RscC5weQ==) | `0% <0%> (-100%)` | :arrow_down: |
| [...cncf/kubernetes/example\_dags/example\_kubernetes.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvY25jZi9rdWJlcm5ldGVzL2V4YW1wbGVfZGFncy9leGFtcGxlX2t1YmVybmV0ZXMucHk=) | `0% <0%> (-100%)` | :arrow_down: |
| ... and [501 more](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=footer). Last update [2a98a61...776f33c](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397601090
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_SHORT_VERSION=3.6
Review comment:
PYTHON_MAJOR_MINOR_VERSION is better
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397538278
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
Review comment:
```suggestion
However we now have ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397540533
##########
File path: scripts/ci/_utils.sh
##########
@@ -530,7 +531,7 @@ function confirm_image_rebuild() {
# Make sure to use /dev/tty first rather than stdin/stdout when available - this way confirm
# will works also in case of pre-commits (git does not pass stdin/stdout to pre-commit hooks)
# shellcheck disable=SC2094
- "${AIRFLOW_SOURCES}/confirm" "${ACTION} image ${THE_IMAGE_TYPE} (might take some time)" \
+ "${AIRFLOW_SOURCES}/confirm" "${ACTION} image ${THE_IMAGE_TYPE}-${PYTHON_SHORT_VERSION}" \
Review comment:
```suggestion
"${AIRFLOW_SOURCES}/confirm" "${ACTION} image ${THE_IMAGE_TYPE}-python ${PYTHON_SHORT_VERSION}" \
```
?? not sure
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397602286
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
Review comment:
rephrased
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] codecov-io edited a comment on issue #7841: Requirements
now depend on python version
Posted by GitBox <gi...@apache.org>.
codecov-io edited a comment on issue #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#issuecomment-603512068
# [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=h1) Report
> Merging [#7841](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=desc) into [master](https://codecov.io/gh/apache/airflow/commit/1982c3fdca1f04cfc41fc5b5e285d8f01c6b76ab&el=desc) will **decrease** coverage by `0.75%`.
> The diff coverage is `n/a`.
[![Impacted file tree graph](https://codecov.io/gh/apache/airflow/pull/7841/graphs/tree.svg?width=650&height=150&src=pr&token=WdLKlKHOAU)](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree)
```diff
@@ Coverage Diff @@
## master #7841 +/- ##
==========================================
- Coverage 86.97% 86.22% -0.76%
==========================================
Files 927 927
Lines 44963 44963
==========================================
- Hits 39108 38769 -339
- Misses 5855 6194 +339
```
| [Impacted Files](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [...flow/providers/apache/cassandra/hooks/cassandra.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2Nhc3NhbmRyYS9ob29rcy9jYXNzYW5kcmEucHk=) | `21.25% <0.00%> (-72.50%)` | :arrow_down: |
| [...w/providers/apache/hive/operators/mysql\_to\_hive.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvYXBhY2hlL2hpdmUvb3BlcmF0b3JzL215c3FsX3RvX2hpdmUucHk=) | `35.84% <0.00%> (-64.16%)` | :arrow_down: |
| [airflow/operators/generic\_transfer.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9vcGVyYXRvcnMvZ2VuZXJpY190cmFuc2Zlci5weQ==) | `39.28% <0.00%> (-60.72%)` | :arrow_down: |
| [airflow/api/auth/backend/kerberos\_auth.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9hcGkvYXV0aC9iYWNrZW5kL2tlcmJlcm9zX2F1dGgucHk=) | `28.16% <0.00%> (-54.93%)` | :arrow_down: |
| [airflow/providers/postgres/operators/postgres.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcG9zdGdyZXMvb3BlcmF0b3JzL3Bvc3RncmVzLnB5) | `47.82% <0.00%> (-52.18%)` | :arrow_down: |
| [airflow/providers/redis/operators/redis\_publish.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvb3BlcmF0b3JzL3JlZGlzX3B1Ymxpc2gucHk=) | `50.00% <0.00%> (-50.00%)` | :arrow_down: |
| [airflow/providers/mongo/sensors/mongo.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbW9uZ28vc2Vuc29ycy9tb25nby5weQ==) | `53.33% <0.00%> (-46.67%)` | :arrow_down: |
| [airflow/security/kerberos.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9zZWN1cml0eS9rZXJiZXJvcy5weQ==) | `30.43% <0.00%> (-45.66%)` | :arrow_down: |
| [airflow/providers/mysql/operators/mysql.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvbXlzcWwvb3BlcmF0b3JzL215c3FsLnB5) | `55.00% <0.00%> (-45.00%)` | :arrow_down: |
| [airflow/providers/redis/sensors/redis\_key.py](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree#diff-YWlyZmxvdy9wcm92aWRlcnMvcmVkaXMvc2Vuc29ycy9yZWRpc19rZXkucHk=) | `61.53% <0.00%> (-38.47%)` | :arrow_down: |
| ... and [12 more](https://codecov.io/gh/apache/airflow/pull/7841/diff?src=pr&el=tree-more) | |
------
[Continue to review full report at Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=footer). Last update [1982c3f...c1660bd](https://codecov.io/gh/apache/airflow/pull/7841?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397603139
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
Review comment:
Fixed
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397603010
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
+airflow - either from the sources ``pip install -e . --constraint requirements/requirements-python3.7.txt``
+or from the pypi package ``pip install apache-airflow --constraint requirements/requirements-python3.7.txt``.
+This work also with extras - ``pip install .[gcp] --constraint requirements/requirements-python3.7.txt``.
+It is also possible to use constraints directly from github (note that it only works starting from
+airflow 1.10.10 version:
-If you do not use pre-commits and the CI builds fails / you need to regenerate it, you can do it manually:
-``pre-commit run generate-requirements --all-files`` or via script
-``./scripts/ci/ci_generate_requirements.sh``.
-This will try to regenerate the requirements.txt file with the latest requirements matching
-the setup.py constraints.
+.. code-block:: bash
+
+ pip install apache-airflow[gcp]==1.10.10 \
+ --constraint https://raw.githubusercontent.com/apache/airflow/1.10.10/requirements/requirements-python3.7.txt
+
+There are different set of fixed requirements for different python major/minor versions and you should
+use the right python version file for the right python version.
+
+The ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file MUST be regenerated every time after setup.py
+is updated. This is checked automatically in Travis CI build there are separate jobs for each
+python version that checks if the requirements should be updated.
+
+If they are not you should regenerate the requirements locally using one of the methods described below.
Review comment:
Fixed
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] kaxil commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
kaxil commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r396803764
##########
File path: .travis.yml
##########
@@ -41,24 +41,24 @@ jobs:
stage: pre-test
script: ./scripts/ci/ci_run_all_static_checks.sh
env: >-
- PYTHON_VERSION=3.6
+ PYTHON_SHORT_VERSION=3.6
Review comment:
Is there a reason we renamed PYTHON_VERSION to PYTHON_SHORT_VERSION?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [airflow] potiuk commented on a change in pull request #7841:
Requirements now depend on python version
Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #7841: Requirements now depend on python version
URL: https://github.com/apache/airflow/pull/7841#discussion_r397602189
##########
File path: CONTRIBUTING.rst
##########
@@ -341,31 +341,59 @@ be open to allow several different libraries with the same requirements to be in
The problem is that Apache Airflow is a bit of both - application to install and library to be used when
you are developing your own operators and DAGs.
-This - seemingly unsolvable - puzzle is solved as follows:
+This - seemingly unsolvable - puzzle is solved by having pinned requirement files. Those are available
+as of airflow 1.10.10.
-* by default when you install ``apache-airflow`` package - the dependencies are as open as possible while
- still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
- install in case a direct or transitive dependency is released that breaks the installation. In such case
- when installing ``apache-airflow``, you might need to provide additional constraints (for
- example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
+Pinned requirement files
+------------------------
-* we have ``requirements.txt`` file generated automatically based on the set of all latest working
- and tested requirement versions. You can also use that file as a constraints file when installing
- apache airflow - either from the sources ``pip install -e . --constraint requirements.txt`` or
- from the pypi package ``pip install apache-airflow --constraint requirements.txt``. Note that
- this will also work with extras for example ``pip install .[gcp] --constraint requirements.txt`` or
- ``pip install apache-airflow[gcp] --constraint requirements.txt``
+By default when you install ``apache-airflow`` package - the dependencies are as open as possible while
+still allowing the apache-airflow to install. This means that 'apache-airflow' package might fail to
+install in case a direct or transitive dependency is released that breaks the installation. In such case
+when installing ``apache-airflow``, you might need to provide additional constraints (for
+example ``pip install apache-airflow==1.10.2 Werkzeug<1.0.0``)
-The ``requirements.txt`` file should be updated automatically via pre-commit whenever you update dependencies
-It reflects the current set of dependencies installed in the CI image of Apache Airflow.
-The same set of requirements will be used to produce the production image.
+However we now havehave ``requirements-python<PYTHON_SHORT_VERSION>.txt`` file generated
+automatically and committd in the requirements folder based on the set of all latest working and tested
+requirement versions. Those requirement.txt files can be used as constraints file when installing apache
Review comment:
Fixed
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services