elebumm / elebumm/RedditVideoMakerBot
[Feature]: Streamlining the setup using package managers
- Dominant language
- Python
- Stars
- 12.5k
- Forks
- 2.9k
- PR merge metrics
- No merged PRs in 30d
Description
### Summary
Using a package manager to have a concrete setup like `uv` instead of a plain `requirements.txt`
### Is your feature request related to a problem?
So normally, while a `requirements.txt` file is generally effective. There can be certain issues that could be possibly encountered during setup at times, like with package depedencies, varying Python versions (for example, this project required to be run in Python 3.10), and many more.
I wanted to propose using [uv](https://docs.astral.sh/[uv](https://docs.astral.sh/uv/)/), a modern Python package and project manager that offers improvements in speed, reproducibility, and better setup experience.
It creates a reproducible build using a `uv.lock` file, which specifies all the packages and their exact versions, hashes, etc. for a more consistent environment.
It also automatically creates a virtual environment, thereby not compromising the global Python environment as well by simply doing `pip install -r requirements.txt`
### Describe the solution you'd like
Setting up this project to use [uv](https://docs.astral.sh/[uv](https://docs.astral.sh/uv/)/) package manager, and setup any required elements like a `.python-version` file, to set the required Python version (3.10) for this project.
### Describe alternatives you've considered
The alternative in this case, would be using another package manager like Poetry (not recommended). This also manages Python packages in a similar way.
But uv is a more faster, more efficient way of managing both Python packages, as well as Python versions too.
### Additional Context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.