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 2021/11/05 17:34:55 UTC

[GitHub] [airflow] hterik opened a new issue #19428: python_requires constraint set too strict, 3.6 only.

hterik opened a new issue #19428:
URL: https://github.com/apache/airflow/issues/19428


   ### Apache Airflow version
   
   2.2.1 (latest released)
   
   ### Operating System
   
   N/A
   
   ### Versions of Apache Airflow Providers
   
   _No response_
   
   ### Deployment
   
   Virtualenv installation
   
   ### Deployment details
   
   _No response_
   
   ### What happened
   
   Trying to install Airflow in a Python 3.7+ project via Poetry gives following error:
   
   >   The current project's Python requirement (>=3.7) is not compatible with some of the required packages Python requirement:
   >     - apache-airflow requires Python ~=3.6, so it will not be satisfied for Python >=4.0
   
   I am aware poetry is not supported [*]  but isn't this constraint on the python version needlessly tight regardless? It comes from `setup.cfg`: `python_requires = ~=3.6`
   
   
   [*] (it normally works after some copying some entries from constraints.txt into Poetry.lock)
   
   ### What you expected to happen
   
   According to https://airflow.apache.org/docs/apache-airflow/stable/installation/prerequisites.html, "_Airflow is tested on  3.6, 3.7, 3.8, 3.9._"  Installing the pip package in those python environments should work. Preferably in newer versions also as they are generally very compatible.
   
   Can the constraint be set to >=3.6? 
   
   
   ### How to reproduce
   
   _No response_
   
   ### Anything else
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] boring-cyborg[bot] commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
boring-cyborg[bot] commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962085871


   Thanks for opening your first issue here! Be sure to follow the issue template!
   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] boring-cyborg[bot] commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
boring-cyborg[bot] commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962085871


   Thanks for opening your first issue here! Be sure to follow the issue template!
   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962425449


   Yep. Here is the PEP specification of `~=` (i.e. compatible release) https://www.python.org/dev/peps/pep-0440/#compatible-release


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] uranusjr commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
uranusjr commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962295543


   Poetry's message is _technically_ correct as well, since `~=3.6` (i.e. `>=3.6, <4.0`) does not cover _all_ of `>=3.7`, which can be split into `>=3.7, <4.0` and `>=4.0`, and the latter part is not properly covered.
   
   But in any case, this is an issue between Poetry and you as its user. Airflow's specification is correct.


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk closed issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk closed issue #19428:
URL: https://github.com/apache/airflow/issues/19428


   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962126328


   This statement is absolutely correct: "- apache-airflow requires Python ~=3.6, so it will not be satisfied for Python >=4.0" . Presumably python 4.0 will contain some breaking changes  (no-one knows for sure as it is not even planned), yet Python 3.6+ is really supposed to be backwards compatible, so barring some dependencies (that prevent us from 3.10 support) it also supports all 3.6+ versions. 
   
   The specification ~3.6 is correctly describing this statement (it means "support any 3.x version above 3.6". I think the message from Poetry is quite wrong. You should silence it, or even better - the project that has >= 3.7 should be corrected, because >= 3.7 is pretty wrong and it SHOULD be changed to ~3.7. 
   
   No-one knows what is the scope of the Python 4.0 except tha it will be a breaking release when it comes, so stating that project will work for it is for sure wrong.


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] hterik commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
hterik commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962403399


   Thank you, i must have misunderstood tilde requirements. Btw do you know if there is a difference in how poetry and pip treat them?
   [The poetry documentation](https://python-poetry.org/docs/dependency-specification/#tilde-requirements) say that `~1.2` is equivalent to `>=1.2.0 <1.3.0`, which in the case of `~3.6` case would have implied `<3.7.0`? Is this an error in their documentation or does it have different behavior?
   
   While https://www.python.org/dev/peps/pep-0440/#compatible-release explains it the way you did.
   
   Changing my own libraries to ~3.7 instead of >=3.7 solved it, even in poetry. :thumbsup: Thanks again.


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962126328


   This statement is absolutely correct: "- apache-airflow requires Python ~=3.6, so it will not be satisfied for Python >=4.0" . Presumably python 4.0 will contain some breaking changes  (no-one knows for sure as it is not even planned), yet Python 3.6+ is really supposed to be backwards compatible, so barring some dependencies (that prevent us from 3.10 support) it also supports all 3.6+ versions. 
   
   The specification ~3.6 is correctly describing this statement (it means "support any 3.x version above 3.6". I think the message from Poetry is quite wrong. You should silence it, or even better - the project that has >= 3.7 should be corrected, because >= 3.7 is pretty wrong and it SHOULD be changed to ~3.7. 
   
   No-one knows what is the scope of the Python 4.0 except tha it will be a breaking release when it comes, so stating that project will work for it is for sure wrong.


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk closed issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk closed issue #19428:
URL: https://github.com/apache/airflow/issues/19428


   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] uranusjr commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
uranusjr commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962409610


   `~` is a Poetry-only extension and is different from `~=`.


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962126328


   This statement is absolutely correct: "- apache-airflow requires Python ~=3.6, so it will not be satisfied for Python >=4.0" . Presumably python 4.0 will contain some breaking changes  (no-one knows for sure as it is not even planned), yet Python 3.6+ is really supposed to be backwards compatible, so barring some dependencies (that prevent us from 3.10 support) it also supports all 3.6+ versions. 
   
   The specification ~3.6 is correctly describing this statement (it means "support any 3.x version above 3.6". I think the message from Poetry is quite wrong. You should silence it, or even better - the project that has >= 3.7 should be corrected, because >= 3.7 is pretty wrong and it SHOULD be changed to ~3.7. 
   
   No-one knows what is the scope of the Python 4.0 except tha it will be a breaking release when it comes, so stating that project will work for it is for sure wrong.


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] boring-cyborg[bot] commented on issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
boring-cyborg[bot] commented on issue #19428:
URL: https://github.com/apache/airflow/issues/19428#issuecomment-962085871


   Thanks for opening your first issue here! Be sure to follow the issue template!
   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [airflow] potiuk closed issue #19428: python_requires constraint set too strict, 3.6 only.

Posted by GitBox <gi...@apache.org>.
potiuk closed issue #19428:
URL: https://github.com/apache/airflow/issues/19428


   


-- 
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.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org