Skip to content

Commit

Permalink
chore: replace pip with uv
Browse files Browse the repository at this point in the history
Signed-off-by: Jack Cherng <[email protected]>
  • Loading branch information
jfcherng committed Mar 1, 2024
1 parent a8daae2 commit 745e7ea
Show file tree
Hide file tree
Showing 5 changed files with 73 additions and 61 deletions.
36 changes: 18 additions & 18 deletions .github/workflows/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,46 +6,46 @@ name: Python
on:
push:
branches:
- "**"
- '**'
paths:
- ".github/workflows/python.yml"
- "**.py"
- "**.pyi"
- "Makefile"
- '.github/workflows/python.yml'
- '**.py'
- '**.pyi'
- 'Makefile'
pull_request:
branches:
- "**"
- '**'
paths:
- ".github/workflows/python.yml"
- "**.py"
- "**.pyi"
- "Makefile"
- '.github/workflows/python.yml'
- '**.py'
- '**.pyi'
- 'Makefile'

jobs:
job_lint:
name: Linting (Python ${{ matrix.python-version }})
name: ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: ["ubuntu-latest"]
python-version: ["3.8"]
os: ['ubuntu-latest']
python-version: ['3.8']

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip wheel
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
python -m pip install -U uv
- name: Do linting
run: |
make ci-check
uv v && . .venv/bin/activate
make install ci-check
20 changes: 14 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,24 @@ all:

.PHONY: install
install:
python -m pip install -U pip -r requirements.txt
uv pip install -r requirements.txt

.PHONY: pip-compile
pip-compile:
uv pip compile --upgrade requirements.in -o requirements.txt

.PHONY: ci-check
ci-check:
@echo "========== check: mypy =========="
mypy -p plugin
ruff check --diff --preview .
black --diff --preview --check .
@echo "========== check: ruff (lint) =========="
ruff check --diff .
@echo "========== check: ruff (format) =========="
ruff format --diff .

.PHONY: ci-fix
ci-fix:
ruff check --preview --fix .
# ruff format --preview .
black --preview .
@echo "========== fix: ruff (lint) =========="
ruff check --fix .
@echo "========== fix: ruff (format) =========="
ruff format .
29 changes: 6 additions & 23 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,24 +9,6 @@ module = ["plugin.libs.*"]
ignore_errors = true
ignore_missing_imports = true

[tool.black]
preview = true
line-length = 120
target-version = ['py38']
exclude = '''
/(
\.git
| \.?venv
| \.mypy_cache
| br-.*
| branch-.*
| libs
| stubs
| tests/files
| typings
)/
'''

[tool.pyright]
include = ['./']
exclude = [
Expand All @@ -43,18 +25,15 @@ pythonVersion = '3.8'

[tool.ruff]
preview = true
select = ["E", "F", "W", "I", "UP"]
ignore = ["E203"]
line-length = 120
target-version = 'py38'
exclude = [
"*/libs/*",
".git",
".mypy_cache",
".venv",
".venv-*",
"branch-*",
"libs",
"plugin/libs",
"stubs",
"tests/files",
"typings",
Expand All @@ -63,5 +42,9 @@ exclude = [
"venv-*",
]

[tool.ruff.per-file-ignores]
[tool.ruff.lint]
select = ["E", "F", "W", "I", "UP"]
ignore = ["E203"]

[tool.ruff.lint.per-file-ignores]
"boot.py" = ["E402"]
10 changes: 10 additions & 0 deletions requirements.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
mypy
ruff>=0.2

# ----------- #
# for scripts #
# ----------- #

fire
requests
tinycss2
39 changes: 25 additions & 14 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,25 @@
# This is an implicit value, here for clarity
--index https://pypi.python.org/simple/

black
mypy
ruff

# ----------- #
# for scripts #
# ----------- #

fire
requests
tinycss2
# This file was autogenerated by uv via the following command:
# uv pip compile requirements.in -o requirements.txt
certifi==2024.2.2
# via requests
charset-normalizer==3.3.2
# via requests
fire==0.5.0
idna==3.6
# via requests
mypy==1.8.0
mypy-extensions==1.0.0
# via mypy
requests==2.31.0
ruff==0.3.0
six==1.16.0
# via fire
termcolor==2.4.0
# via fire
tinycss2==1.2.1
typing-extensions==4.10.0
# via mypy
urllib3==2.2.1
# via requests
webencodings==0.5.1
# via tinycss2

0 comments on commit 745e7ea

Please sign in to comment.