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

Replace non-example requirements.txt files with pixi #5895

Closed
emilk opened this issue Apr 10, 2024 · 2 comments · Fixed by #5939
Closed

Replace non-example requirements.txt files with pixi #5895

emilk opened this issue Apr 10, 2024 · 2 comments · Fixed by #5939
Assignees
Labels
🧑‍💻 dev experience developer experience (excluding CI) 🚀 performance Optimization, memory use, etc 🐍 Python API Python logging API 🚢 CI

Comments

@emilk
Copy link
Member

emilk commented Apr 10, 2024

For instance:

  • pip install -r ./scripts/ci/requirements.txt takes 2 minutes on CI
  • pip install -r rerun_py/requirements-lint.txt takes 1 minute

We should replace this with something faster and cached.

I think the natural choice is to add these dev-deps to pixi.toml.

This would cover all requirements under rerun_py and under scripts

NOTE: NOT the example requirements, JUST the requirements for our dev tools (linting, formatting, …)

@emilk emilk added 🐍 Python API Python logging API 🧑‍💻 dev experience developer experience (excluding CI) 🚀 performance Optimization, memory use, etc 🚢 CI labels Apr 10, 2024
@Wumpf
Copy link
Member

Wumpf commented Apr 10, 2024

there's also scripts/requirements-dev.txt - a bit unclear for what this one is. Should also be included in this cleanup job!

@emilk
Copy link
Member Author

emilk commented Apr 10, 2024

there's also scripts/requirements-dev.txt

Yes, as I said:

This would cover all requirements under rerun_py and under scripts

To be clear: recursively under those folders, all **requirements*.txt

@emilk emilk assigned emilk and unassigned emilk Apr 10, 2024
@Wumpf Wumpf self-assigned this Apr 11, 2024
Wumpf added a commit that referenced this issue Apr 11, 2024
### What

* Part of  #5895

requirements-docs is still mentioned in python readme, this is handled
in
* #5911

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested the web demo (if applicable):
* Using newly built examples:
[rerun.io/viewer](https://rerun.io/viewer/pr/5909)
* Using examples from latest `main` build:
[rerun.io/viewer](https://rerun.io/viewer/pr/5909?manifest_url=https://app.rerun.io/version/main/examples_manifest.json)
* Using full set of examples from `nightly` build:
[rerun.io/viewer](https://rerun.io/viewer/pr/5909?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG
* [x] If applicable, add a new check to the [release
checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)!

- [PR Build Summary](https://build.rerun.io/pr/5909)
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)
Wumpf added a commit that referenced this issue Apr 12, 2024
### What

* Fixes #5895

In the process cleans up quite a bit more ci to use the pixi environment
consequently.

Note that the process I followed here was essentially:
* pick a requirements.txt file
* check for each of its package if it's already in pixi
    * if not, try adding it as conda package to pixi
         * if not add it as pypi package to pixi
         * try documenting who uses it
* repeat until requirements.txt file is empty
* remove mentions of the requirements.txt file, ensure that python
invocations below are using pixi


### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested the web demo (if applicable):
* Using examples from latest `main` build:
[rerun.io/viewer](https://rerun.io/viewer/pr/5939?manifest_url=https://app.rerun.io/version/main/examples_manifest.json)
* Using full set of examples from `nightly` build:
[rerun.io/viewer](https://rerun.io/viewer/pr/5939?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG
* [x] If applicable, add a new check to the [release
checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)!

- [PR Build Summary](https://build.rerun.io/pr/5939)
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🧑‍💻 dev experience developer experience (excluding CI) 🚀 performance Optimization, memory use, etc 🐍 Python API Python logging API 🚢 CI
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants