Skip to content

Refactor CPUVendor - #4691

Merged
svartkanin merged 1 commit into
archlinux:masterfrom
codefiles:ref-cpuvendor
Aug 3, 2026
Merged

Refactor CPUVendor#4691
svartkanin merged 1 commit into
archlinux:masterfrom
codefiles:ref-cpuvendor

Conversation

@codefiles

Copy link
Copy Markdown
Contributor

Addresses the following:

pyright

  archinstall/lib/hardware.py:25:11 - error: Type "Literal[CpuVendor._Unknown]" is not assignable to return type "Self@CpuVendor"
    Type "Literal[CpuVendor._Unknown]" is not assignable to type "Self@CpuVendor" (reportReturnType)

pyrefly

ERROR Returned type `Literal[CpuVendor._Unknown]` is not assignable to declared return type `Self@CpuVendor` [bad-return]
  --> archinstall/lib/hardware.py:25:11
   |
20 |     def get_vendor(cls, name: str) -> Self:
   |                                       ---- declared return type
21 |         if vendor := getattr(cls, name, None):
22 |             return vendor
23 |         else:
24 |             debug(f"Unknown CPU vendor '{name}' detected.")
25 |             return cls._Unknown
   |                    ^^^^^^^^^^^^
   |

ty

error[invalid-return-type]: Return type does not match returned value
  --> archinstall/lib/hardware.py:20:36
   |
20 |     def get_vendor(cls, name: str) -> Self:
   |                                       ---- Expected `Self@get_vendor` because of return type
21 |         if vendor := getattr(cls, name, None):
22 |             return vendor
23 |         else:
24 |             debug(f"Unknown CPU vendor '{name}' detected.")
25 |             return cls._Unknown
   |                    ^^^^^^^^^^^^ expected `Self@get_vendor`, found `Literal[CpuVendor._Unknown]`
   |

Addresses the following:

pyright

```
  archinstall/lib/hardware.py:25:11 - error: Type "Literal[CpuVendor._Unknown]" is not assignable to return type "Self@CpuVendor"
    Type "Literal[CpuVendor._Unknown]" is not assignable to type "Self@CpuVendor" (reportReturnType)
```

pyrefly

```
ERROR Returned type `Literal[CpuVendor._Unknown]` is not assignable to declared return type `Self@CpuVendor` [bad-return]
  --> archinstall/lib/hardware.py:25:11
   |
20 |     def get_vendor(cls, name: str) -> Self:
   |                                       ---- declared return type
21 |         if vendor := getattr(cls, name, None):
22 |             return vendor
23 |         else:
24 |             debug(f"Unknown CPU vendor '{name}' detected.")
25 |             return cls._Unknown
   |                    ^^^^^^^^^^^^
   |
```

ty

```
error[invalid-return-type]: Return type does not match returned value
  --> archinstall/lib/hardware.py:20:36
   |
20 |     def get_vendor(cls, name: str) -> Self:
   |                                       ---- Expected `Self@get_vendor` because of return type
21 |         if vendor := getattr(cls, name, None):
22 |             return vendor
23 |         else:
24 |             debug(f"Unknown CPU vendor '{name}' detected.")
25 |             return cls._Unknown
   |                    ^^^^^^^^^^^^ expected `Self@get_vendor`, found `Literal[CpuVendor._Unknown]`
   |
```
@codefiles
codefiles requested a review from Torxed as a code owner August 2, 2026 13:20
@svartkanin
svartkanin merged commit c7e512a into archlinux:master Aug 3, 2026
11 checks passed
@codefiles
codefiles deleted the ref-cpuvendor branch August 3, 2026 12:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants