Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unpin pypa/build, pyodide-lock, and pytest for testing requirements #197

Merged
merged 5 commits into from
Feb 3, 2025

Conversation

agriyakhetarpal
Copy link
Member

@agriyakhetarpal agriyakhetarpal commented Feb 2, 2025

Description

This pull request unpins:

  • pypa/build, as we were using a very old version, and we were not the same version as what pyodide-build uses;
    • fixes compatibility with build==1.2.2post1 API
  • pyodide-lock, so that we can be aware when something upstream in pyodide-lock changes/fails here; and
  • pytest, as v8 is reasonably stable now, and the latest version is 8.3.4 at the time of writing.

@agriyakhetarpal agriyakhetarpal linked an issue Feb 2, 2025 that may be closed by this pull request
@agriyakhetarpal agriyakhetarpal marked this pull request as ready for review February 2, 2025 14:20
Copy link
Member

@ryanking13 ryanking13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@agriyakhetarpal
Copy link
Member Author

Thanks for the review!

@agriyakhetarpal agriyakhetarpal merged commit 3765815 into pyodide:main Feb 3, 2025
7 checks passed
@agriyakhetarpal agriyakhetarpal deleted the bump/testing-deps branch February 3, 2025 09:31
@hoodmane
Copy link
Member

hoodmane commented Feb 3, 2025

I'm a bit uncomfortable about the idea that we might release pyodide-lock and only then discover that we broke micropip. But perhaps there isn't much api surface.

@agriyakhetarpal
Copy link
Member Author

I agree, @hoodmane – though my idea was that keeping pyodide-lock pinned would tell us about a failure in a new version only when we were to update it, and pyodide-lock isn't a dependency for micropip but an optional one. The same case happened for build here, which was fine because it didn't have a big API surface. If we keep it unpinned and a failure shows up in the next CI run, we can quickly patch it and fix the problem on the pyodide-lock/micropip side and exclude that pyodide-lock version in micropip via pyodide-lock>=0.1.0a8; !=0.x.y.

We could add a CI job to test with nightly versions of the test dependencies, but that could also be overkill.

@hoodmane
Copy link
Member

hoodmane commented Feb 3, 2025

Yeah it just feels worse when we break ourselves. But I agree in practice it's the same. I'm sure the build 0.7.0 pin was accidentally inherited from the pyodide-build pin on build which used to access a very large number of build implementation details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bump [test] extras and other dependencies
3 participants