Skip to content

Loosen pathspec dependency version requirements#33349

Merged
potiuk merged 1 commit into
apache:mainfrom
millsks:main
Aug 13, 2023
Merged

Loosen pathspec dependency version requirements#33349
potiuk merged 1 commit into
apache:mainfrom
millsks:main

Conversation

@millsks

@millsks millsks commented Aug 12, 2023

Copy link
Copy Markdown
Contributor

Updating the allowed version for the pathspec dependency. This will allow other packages to utilize pathspec that might require a newer version. For example, airflow can be installed with pathspec==9.9.0, but if dvc is also installed pathspec would need to be 0.10.3 or newer.

Could not solve for environment specs
The following packages are incompatible
├─ apache-airflow >=2.4.0  is installable and it requires
│  └─ airflow [>=2.4.0,<2.4.1.0a0 |>=2.4.1,<2.4.2.0a0 |...|>=2.6.3,<2.6.4.0a0 ], which requires
│     └─ pathspec [>=0.9.0,<0.10.0 |>=0.9.0,<0.10.dev0 ], which can be installed;
└─ dvc >=3.14.0  is uninstallable because it requires
   └─ pathspec >=0.10.3 , which conflicts with any installable versions previously reported.

related: #33330


^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named {pr_number}.significant.rst or {issue_number}.significant.rst, in newsfragments.

@boring-cyborg

boring-cyborg Bot commented Aug 12, 2023

Copy link
Copy Markdown

Congratulations on your first Pull Request and welcome to the Apache Airflow community! If you have any issues or are unsure about any anything please check our Contribution Guide (https://github.com/apache/airflow/blob/main/CONTRIBUTING.rst)
Here are some useful points:

  • Pay attention to the quality of your code (ruff, mypy and type annotations). Our pre-commits will help you with that.
  • In case of a new feature add useful documentation (in docstrings or in docs/ directory). Adding a new operator? Check this short guide Consider adding an example DAG that shows how users should use it.
  • Consider using Breeze environment for testing locally, it's a heavy docker but it ships with a working Airflow and a lot of integrations.
  • Be patient and persistent. It might take some time to get a review or get the final approval from Committers.
  • Please follow ASF Code of Conduct for all communication including (but not limited to) comments on Pull Requests, Mailing list and Slack.
  • Be sure to read the Airflow Coding style.
  • Always keep your Pull Requests rebased, otherwise your build might fail due to changes not related to your commits.
    Apache Airflow is a community-driven project and together we are making it better 🚀.
    In case of doubts contact the developers at:
    Mailing List: [email protected]
    Slack: https://s.apache.org/airflow-slack

@millsks

millsks commented Aug 12, 2023

Copy link
Copy Markdown
Contributor Author

Looks like it hit the timeout threshold while trying to resolve dependencies? What would be the suggested way forward? If this was encountered before what was done to resolve the issue?

@potiuk

potiuk commented Aug 12, 2023

Copy link
Copy Markdown
Member

Yes. This problem is also in main now - so this is not related to your PR, I am going to take a look at that, and will rebase your PR right after I fix it in main.

We likely hit the backtracking issue of pip when some released dependency made it hard for pip to resolve "eager upgrade" of all our dependencies.

@millsks

millsks commented Aug 12, 2023

Copy link
Copy Markdown
Contributor Author

Sounds good. Let me know if you need me to do anything else with this PR in the meantime. Thanks for the update and feedback.

Allow pathspec >=0.9.0 to meet requirements of other packages that depend on newer versions of pathspec.  For example, DVC requires pathspec >=0.10.3.
@potiuk

potiuk commented Aug 13, 2023

Copy link
Copy Markdown
Member

OK. Issue in main solved (by #33362 ) rebased this one to see how things are here :)

@millsks

millsks commented Aug 13, 2023

Copy link
Copy Markdown
Contributor Author

Nice! Looks like the step the failed finished in ~11 minutes.

@millsks

millsks commented Aug 13, 2023

Copy link
Copy Markdown
Contributor Author

So, if this gets merged back into main what does airflow release schedule look like? Do you maintain PyPI and the conda-forge feedstock too?

@potiuk

potiuk commented Aug 13, 2023

Copy link
Copy Markdown
Member

So, if this gets merged back into main what does airflow release schedule look like? Do you maintain PyPI and the conda-forge feedstock too?

Conda no. PyPI yes. We are just about to release 2.7.0 (literally today we are releasing RC2). If you are lucky and it passes, we might even add it there. If not. then this one after merge will be released in 2.7.1 (but we do not have yet plans when this will happen - usually after .0 release we have .1 in a week-two with some teething problems fixed.

@potiuk potiuk added this to the Airflow 2.7.0 milestone Aug 13, 2023
@millsks

millsks commented Aug 13, 2023

Copy link
Copy Markdown
Contributor Author

Great, thanks! I can update the feedstock once the release tarball is available. That's where I initially started was trying to update the version of pathspec in the recipe, but they mentioned getting it updated in airflow before we did anything, which makes sense.

@potiuk

potiuk commented Aug 13, 2023

Copy link
Copy Markdown
Member

The failure is unrelated (this is flaky test that I attempt to address in #33309. Merging.

@potiuk
potiuk merged commit 699b3f4 into apache:main Aug 13, 2023
@boring-cyborg

boring-cyborg Bot commented Aug 13, 2023

Copy link
Copy Markdown

Awesome work, congrats on your first merged pull request! You are invited to check our Issue Tracker for additional contributions.

@potiuk

potiuk commented Aug 13, 2023

Copy link
Copy Markdown
Member

cc: @ephraimbuddy -> this is a very small dependency change. I marked it for 2.7.0 if we can make it into 2.7.0 it would be fantastic

@ephraimbuddy ephraimbuddy added changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) type:misc/internal Changelog: Misc changes that should appear in change log and removed changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) labels Aug 13, 2023
ephraimbuddy pushed a commit that referenced this pull request Aug 14, 2023
Allow pathspec >=0.9.0 to meet requirements of other packages that depend on newer versions of pathspec.  For example, DVC requires pathspec >=0.10.3.

(cherry picked from commit 699b3f4)
ferruzzi pushed a commit to aws-mwaa/upstream-to-airflow that referenced this pull request Aug 17, 2023
Allow pathspec >=0.9.0 to meet requirements of other packages that depend on newer versions of pathspec.  For example, DVC requires pathspec >=0.10.3.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:misc/internal Changelog: Misc changes that should appear in change log

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants