Releases: DetachHead/basedpyright
v1.36.2 (pyright 1.1.407)
What's Changed
- Fix out of bounds top-level
activeParameterbeing set when an individual signature has anactiveParameterby @DetachHead in #1681 - Add
hintsupport to# pyrightdoc-level directives by @finite-state-machine in #1679 - fix
basedpyright --writebaselinenot working if there are changes to write but the total error count didn't change by @DetachHead in #1685
New Contributors
- @finite-state-machine made their first contribution in #1679
Full Changelog: v1.36.1...v1.36.2
v1.36.1 (pyright 1.1.407)
What's Changed
- fix an issue introduced in 1.36.0 that broke the browser version of basedpyright used in the playground by @DetachHead in #1675
Full Changelog: v1.36.0...v1.36.1
v1.36.0 (pyright 1.1.407)
What's Changed
- fail in CI if baseline file needs updating and add
--baselinemodecli argument by @DetachHead in #1667 - Improve semantic tokens for
Any, unknown, and unions by @KurtBoehm in #1670
Full Changelog: v1.35.0...v1.36.0
v1.35.0 (pyright 1.1.407)
What's Changed
improved completions for Literals and enums
in pyright/pylance, you only get completions for Literals that contain strings:
but in basedpyright, this now also works with Literals that contain other types, such as int, bool and Enum values:
unlike pyright/pylance, basedpyright now also supports completions for enum values:
this also works for other types of enums such as IntEnum and StrEnum
implemented by @KurtBoehm in #1644 & #1658
Full Changelog: v1.34.0...v1.35.0
v1.34.0 (pyright 1.1.407)
What's Changed
- implement
textDocument/implementationaka "Go to Implementations" by @beauxq in #1636 & #1649 - Fix issues with semantic highlighting of decorators/properties by @KurtBoehm in #1632
- document hover and "go to definition" on operators by @DetachHead in #1631
- Chinese (Simplified) localization update (2025.11) by @NCBM in #1628
- remove workaround for language server crash when installing basedpyright with uv, which was fixed over a year ago by @DetachHead in #1634
Full Changelog: v1.33.0...v1.34.0
v1.33.0 (pyright 1.1.407)
What's Changed
hover and "go to definition" on operators
pylance supports "go to definition" on some operators. basedpyright now supports this and takes it a step further by also showing hover information as well:
implemented by @KurtBoehm in #1576
docs
- update zed docs to add back the recommendation to use the project's version of basedpyright again (i incorrectly assumed this was no longer necessary) by @DetachHead in #1602
- Add neovim LSP server setting example using 0.11 format by @hydecnc in #1605
other changes
- Add
basedpyright.configFilePathto the language server by @brunovollmer in #1607 - Fix semantic token of variables with a generic type by @KurtBoehm in #1610
- October 2025 Russian localization fixes by @decorator-factory in #1620
New Contributors
- @hydecnc made their first contribution in #1605
- @brunovollmer made their first contribution in #1607
Full Changelog: v1.32.1...v1.33.0
v1.32.1 (pyright 1.1.407)
What's Changed
- fix an accidental breaking change to
dataclass_transformthat was introduced in pyright 1.1.407 by @DetachHead in #1595
Full Changelog: v1.32.0...v1.32.1
v1.32.0 (pyright 1.1.407)
What's Changed
enableBasedFeatures
until now, basedpyright-exclusive type checking features have mostly come in the form of an additional diagnostic rule that users have the option to disable. but this approach limits us from making any interesting breaking changes to the type system itself.
this release introduces a new setting called enableBasedFeatures, which is disabled by default. enabling it will opt you into any changes we make that introduce breaking changes to the type system. in other words, if you're developing a library and expect your users to be using other type checkers, you should probably keep it disabled.
currently only one feature is behind this flag: the new skip_replace argument to the @dataclass_transform decorator, implemented by @decorator-factory in #1568
new diagnostic rule - reportSelfClsDefault
Pyright allows specifying a default value for self in instance methods and cls in class methods:
class Foo:
def foo(self=1):
...this is almost certainly a mistake, so this new diagnostic rule will warn against it.
also implemented by @decorator-factory in #1581
docs
- recommend my fork of tach because tach has been abandoned by @DetachHead in #1572
- fix typos in docs by @decorator-factory in #1582
other changes
- use the name
basedpyrightinstead ofpythonwhen instantiating vscode'sLanguageClientso that the logging can be configured usingbasedpyright.trace.serverby @DetachHead in #1583 - [zh-cn l10n] fix incorrect translation of
paramNameMissingby @NCBM in #1588 - Merge pyright 1.1.407 by @DetachHead in #1590
Full Changelog: v1.31.7...v1.32.0
v1.31.7 (pyright 1.1.406)
What's Changed
performance fixes
- fix performance issues on large enums by @jabbera in #1535
- quicker way to check if a class is an enum before reporting
reportUnannotatedClassAttributeby @DetachHead in #1544
semantic highlighting
- Use declarations as the primary source of semantic tokens by @KurtBoehm in #1521 & @DetachHead in #1555
- Type-based descriptor instance highlighting by @KurtBoehm in #1557
docs
- update cli installation instructions to make it clear that we recommend uv by @DetachHead in #1549
- update basedpyright badge to match the colour of the logo by @DetachHead in #1571
other changes
- Chinese (Simplified) translations update (2025.10) by @NCBM in #1546
- suggest import aliases from user code if explicitly re-exported by @mstmb-alan in #1539
- report an error when attempting to subscript
array.arrayat runtime on python <3.12 by @DetachHead in #1552 - fix errors from new builtin
string.templatelibmodule and generate stub docstrings for 3.14 by @DetachHead in #1551
New Contributors
- @jabbera made their first contribution in #1535
- @mstmb-alan made their first contribution in #1539
Full Changelog: v1.31.6...v1.31.7
v1.31.6 (pyright 1.1.406)
What's Changed
- fix duplicated
reportMatchNotExhaustiveand missingreportImplicitOverridein the docs by @DetachHead in #1522 - Remove
vfrom rev tag for prek in the docs by @sakosha in #1520 - Merge pyright 1.1.406 by @DetachHead in #1537
- Fix some typos in the Russian localization by @decorator-factory in #1531
New Contributors
Full Changelog: v1.31.5...v1.31.6