From c35495b4fe1457015cb54e6fb87961df68c1a04e Mon Sep 17 00:00:00 2001 From: Roger-luo Date: Sat, 19 Apr 2025 00:33:23 -0400 Subject: [PATCH 1/5] setup pyright --- .github/workflows/pyright.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/pyright.yml diff --git a/.github/workflows/pyright.yml b/.github/workflows/pyright.yml new file mode 100644 index 000000000..0cc1b2a8f --- /dev/null +++ b/.github/workflows/pyright.yml @@ -0,0 +1,31 @@ +name: Pyright + +on: + pull_request: + push: + branches: + - main + schedule: + - cron: '00 01 * * *' +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Install uv + uses: astral-sh/setup-uv@v5 + with: + # Install a specific version of uv. + version: "0.5.1" + enable-cache: true + cache-dependency-glob: "uv.lock" + - name: Install the project + run: uv sync --all-extras --dev + - run: echo "$PWD/.venv/bin" >> $GITHUB_PATH + - uses: jakebailey/pyright-action@v2 + with: + pylance-version: latest-release From 347b252e72ae1872c3bd384a1dc7bfd6ba4a7719 Mon Sep 17 00:00:00 2001 From: Roger-luo Date: Sat, 19 Apr 2025 00:34:54 -0400 Subject: [PATCH 2/5] only run pyright on src --- pyproject.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index c1ed23a6a..00f177e9f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -59,6 +59,9 @@ exclude = [ [tool.ruff.lint] dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$" +[tool.pyright] +include = ["src"] + [tool.coverage.run] include = ["src/kirin/*"] From 71d29620532c1297ce931e0b066784a19c0273d1 Mon Sep 17 00:00:00 2001 From: Roger-luo Date: Sat, 19 Apr 2025 00:38:31 -0400 Subject: [PATCH 3/5] just check if it errors --- src/kirin/ir/method.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/kirin/ir/method.py b/src/kirin/ir/method.py index 03795907c..faf4c93bb 100644 --- a/src/kirin/ir/method.py +++ b/src/kirin/ir/method.py @@ -98,7 +98,7 @@ def similar(self, dialects: typing.Optional["DialectGroup"] = None): self.inferred, ) - def verify(self) -> None: + def verify(self) -> int: """verify the method body. This will raise a ValidationError if the method body is not valid. From 259ab8bbfe6a8db39acb2ed3a0c7dbf04b41cd88 Mon Sep 17 00:00:00 2001 From: Roger-luo Date: Sat, 19 Apr 2025 00:39:23 -0400 Subject: [PATCH 4/5] ok nice it errors --- src/kirin/ir/method.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/kirin/ir/method.py b/src/kirin/ir/method.py index faf4c93bb..03795907c 100644 --- a/src/kirin/ir/method.py +++ b/src/kirin/ir/method.py @@ -98,7 +98,7 @@ def similar(self, dialects: typing.Optional["DialectGroup"] = None): self.inferred, ) - def verify(self) -> int: + def verify(self) -> None: """verify the method body. This will raise a ValidationError if the method body is not valid. From 6675e473cab588f2233e2622f4cd1d1f6f0f1628 Mon Sep 17 00:00:00 2001 From: Roger-luo Date: Sat, 19 Apr 2025 00:41:00 -0400 Subject: [PATCH 5/5] polish actions --- .github/workflows/ci.yml | 2 +- .github/workflows/devdoc.yml | 2 +- .github/workflows/doc.yml | 2 +- .github/workflows/lint.yml | 17 +++++++++++++++++ .github/workflows/pub_doc.yml | 2 +- .github/workflows/pyright.yml | 31 ------------------------------- .github/workflows/release.yml | 2 +- 7 files changed, 22 insertions(+), 36 deletions(-) delete mode 100644 .github/workflows/pyright.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 778bd7aee..2318aecaa 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,7 +28,7 @@ jobs: uses: astral-sh/setup-uv@v5 with: # Install a specific version of uv. - version: "0.5.1" + version: "0.6.14" enable-cache: true cache-dependency-glob: "uv.lock" - name: Set up Python ${{ matrix.python-version }} diff --git a/.github/workflows/devdoc.yml b/.github/workflows/devdoc.yml index 4771ef669..8a2290a73 100644 --- a/.github/workflows/devdoc.yml +++ b/.github/workflows/devdoc.yml @@ -20,7 +20,7 @@ jobs: uses: astral-sh/setup-uv@v5 with: # Install a specific version of uv. - version: "0.5.1" + version: "0.6.14" enable-cache: true cache-dependency-glob: "uv.lock" - name: Install Documentation dependencies diff --git a/.github/workflows/doc.yml b/.github/workflows/doc.yml index 2ac18f578..16fd0f121 100644 --- a/.github/workflows/doc.yml +++ b/.github/workflows/doc.yml @@ -20,7 +20,7 @@ jobs: uses: astral-sh/setup-uv@v5 with: # Install a specific version of uv. - version: "0.5.1" + version: "0.6.14" enable-cache: true cache-dependency-glob: "uv.lock" - name: Install Documentation dependencies diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 8b6e6b373..e30b15c0f 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -19,3 +19,20 @@ jobs: steps: - uses: actions/checkout@v4 - uses: psf/black@stable + pyright: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Install uv + uses: astral-sh/setup-uv@v5 + with: + # Install a specific version of uv. + version: "0.6.14" + enable-cache: true + cache-dependency-glob: "uv.lock" + - name: Install the project + run: uv sync --all-extras --dev + - run: echo "$PWD/.venv/bin" >> $GITHUB_PATH + - uses: jakebailey/pyright-action@v2 + with: + pylance-version: latest-release diff --git a/.github/workflows/pub_doc.yml b/.github/workflows/pub_doc.yml index e97188f00..c3dbe29de 100644 --- a/.github/workflows/pub_doc.yml +++ b/.github/workflows/pub_doc.yml @@ -20,7 +20,7 @@ jobs: uses: astral-sh/setup-uv@v5 with: # Install a specific version of uv. - version: "0.5.1" + version: "0.6.14" enable-cache: true cache-dependency-glob: "uv.lock" - name: Install Documentation dependencies diff --git a/.github/workflows/pyright.yml b/.github/workflows/pyright.yml deleted file mode 100644 index 0cc1b2a8f..000000000 --- a/.github/workflows/pyright.yml +++ /dev/null @@ -1,31 +0,0 @@ -name: Pyright - -on: - pull_request: - push: - branches: - - main - schedule: - - cron: '00 01 * * *' -concurrency: - group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Install uv - uses: astral-sh/setup-uv@v5 - with: - # Install a specific version of uv. - version: "0.5.1" - enable-cache: true - cache-dependency-glob: "uv.lock" - - name: Install the project - run: uv sync --all-extras --dev - - run: echo "$PWD/.venv/bin" >> $GITHUB_PATH - - uses: jakebailey/pyright-action@v2 - with: - pylance-version: latest-release diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ee2f6ded0..7b03fb7c1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,7 +13,7 @@ jobs: uses: astral-sh/setup-uv@v5 with: # Install a specific version of uv. - version: "0.5.5" + version: "0.6.14" - name: Install the project run: uv sync --all-extras --dev - name: Build distribution 📦