Using UV Package Manager
Create a project
uv init hello-world # if outside dir, else uv inituv run hello.py # runs a python file
Dependencies
uv add 'requests==2.31.0'uv add pytest --devuv remove requests# upgrade dependencyuv lock --upgrade-package requests
Install specific version
uv python install 3.8uv venvsource .venv/bin/activate
Other notes
Dev dependencies installed by default
To build, simply uv build
[tool.setuptools]packages = ["jenkinsapi", "jenkinsapi_utils", "jenkinsapi_tests"]
uv lock # to generate uv.lock file
uv python uninstall --all # removes existing installs
uv cache clean
Github actions
- name: Install uv uses: astral-sh/setup-uv@v5 with: python-version: ${{ matrix.python-version }} enable-cache: true cache-dependency-glob: | **/setup.cfg **/pyproject.toml
- name: Install python run: uv python install
- name: Lint with flake8 run: | uv run flake8 jenkinsapi/
- name: Test with pytest env: JENKINS_VERSION: ${{ matrix.token }} run: | uv run pytest -sv jenkinsapi_tests