Skip to content

Releases: DetachHead/basedpyright

v1.32.1 (pyright 1.1.407)

23 Oct 12:58

Choose a tag to compare

What's Changed

  • fix an accidental breaking change to dataclass_transform that 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)

22 Oct 12:43

Choose a tag to compare

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

other changes

  • use the name basedpyright instead of python when instantiating vscode's LanguageClient so that the logging can be configured using basedpyright.trace.server by @DetachHead in #1583
  • [zh-cn l10n] fix incorrect translation of paramNameMissing by @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)

11 Oct 05:28

Choose a tag to compare

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 reportUnannotatedClassAttribute by @DetachHead in #1544

semantic highlighting

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.array at runtime on python <3.12 by @DetachHead in #1552
  • fix errors from new builtin string.templatelib module and generate stub docstrings for 3.14 by @DetachHead in #1551

New Contributors

Full Changelog: v1.31.6...v1.31.7

v1.31.6 (pyright 1.1.406)

01 Oct 13:13

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.31.5...v1.31.6

v1.31.5 (pyright 1.1.405)

24 Sep 13:01

Choose a tag to compare

What's Changed

semantic highlighting

  • Semantic Tokens for custom builtins specified in project __builtins__.pyi by @Wizzerinus in #1451
  • Improved Semantic Tokens: Enums, Properties, Constants, and Static Methods by @KurtBoehm in #1469

baseline

  • add back baseline cache by @DetachHead in #1473
  • fix --baselinefile cli argument and update the docs to reflect that the baseline file functionality is now stable by @DetachHead in #1480

docs

  • update pre-commit docs to primarily mention prek instead of pre-commit by @DetachHead in #1487
  • update zed installation instructions to reflect that basedpyright is now the default language server by @DetachHead in #1495
  • uv pip install -> uv tool install by @HairlessVillager in #1482

other changes

New Contributors

Full Changelog: v1.31.4...v1.31.5

v1.31.4 (pyright 1.1.405)

03 Sep 13:15

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.31.3...v1.31.4

v1.31.3 (pyright 1.1.404)

20 Aug 15:10

Choose a tag to compare

What's Changed

Full Changelog: v1.31.2...v1.31.3

v1.31.2 (pyright 1.1.403)

13 Aug 14:08
6e87cff

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.31.1...v1.31.2

v1.31.1 (pyright 1.1.403)

03 Aug 13:56
e75a26c

Choose a tag to compare

What's Changed

  • fix # pyright: ignore code actions inserting the comment before the last character if the error is on the last line in the file by @DetachHead in #1398
  • fix inlay hints not appearing on instance attribute declarations by @DetachHead in #1410
  • fix renaming files when imported with a relative import by @DetachHead in #1414
  • fix "find all references" on __init__ and __new__ methods by @DetachHead in #1415
  • add tip to the docs recommending prefligit over pre-commit by @DetachHead in #1413

Full Changelog: v1.31.0...v1.31.1

v1.31.0 (pyright 1.1.403)

16 Jul 12:08
f9d048f

Choose a tag to compare

What's Changed

automatic conversion to f-string when typing { inside a string

implement basedpyright.analysis.autoFormatStrings setting from pylance:

implemented in #1390

other changes

  • Remove duplicate semantic tokens for readonly properties by @ValdezFOmar in #1386
  • fix writeBaseline, restartServer and createTypeStub commands only being registered in the vscode extension instead of the language server by @DetachHead in #1385
  • Change default diagnostic category for reportImplicitAbstractClass to "error" when typeCheckingMode is "recommended" by @tylerlaprade in #1392
  • improve wording in the cards on the docs home page & mention upstream merging by @DetachHead in #1393

Full Changelog: v1.30.1...v1.31.0