title: Conflicting constraints in Airflow constraint file
body: <p>For setting up AWS MWAA with snowflake, as per the AWS documentation <a href="https://docs.aws.amazon.com/mwaa/latest/userguide/best-practices-dependencies.html" rel="nofollow noreferrer">here</a>, I created a requirements.txt file with following content:</p>
  <pre><code>--constraint &quot;https://raw.githubusercontent.com/apache/airflow/constraints-2.2.2/constraints-3.7.txt&quot;
  apache-airflow[snowflake]
  </code></pre>
  <p>This worked successfully. Next I wanted to add dbt to my eco-system and updated my constraint file to:</p>
  <pre><code>--constraint &quot;https://raw.githubusercontent.com/apache/airflow/constraints-2.2.2/constraints-3.7.txt&quot;
  apache-airflow[snowflake]
  dbt-core==1.1.1
  dbt-snowflake==1.1.0
  </code></pre>
  <p>Now this is where things start breaking. I get the following error when I build this-</p>
  <pre><code>ERROR: Cannot install snowflake-connector-python[secure-local-storage]==2.7.0 because these package versions have conflicting dependencies.
  
  The conflict is caused by:
  snowflake-connector-python[secure-local-storage] 2.7.0 depends on keyring!=16.1.0 and &lt;22.0.0; extra == &quot;secure-local-storage&quot;
  The user requested (constraint) keyring==23.2.1
  </code></pre>
  <p>This seems really weird since both versions: <code>snowflake-connector-python 2.7.0</code> and <code>keyring==23.2.1</code> are enforced in the airflow constraint file itself: <a href="https://raw.githubusercontent.com/apache/airflow/constraints-2.2.2/constraints-3.7.txt" rel="nofollow noreferrer">https://raw.githubusercontent.com/apache/airflow/constraints-2.2.2/constraints-3.7.txt</a></p>
  <p>It is highly unlikely that airflow constraint file is incorrect. Am I missing something here?</p>