Skip to content

Releases: facebook/pyrefly

v0.19.0

10 Jun 20:02
Compare
Choose a tag to compare

Pyrefly 0.19.0

Status : ALPHA

Release date: 9 June 2025

Pyrefly 0.19.0 packs a week’s worth of fixes and quality‑of‑life improvements into 128 commits from 19 contributors, touching 153 files.

Thank you @ajaymiranda @Adist319 @Alex-Aron @zachmullen for your contributions!


✨ New & Improved

Area What’s new
Editor support Neovim integration — first‑class LSP support plus a helper command to install/update the server (#227).
• Neovim now respects pyrefly.toml and remote config overrides (#442).
Configuration UX • Eliminates misleading “Extra keys” parse errors in pyrefly.toml (#441).
• Added validation that a TypedDict field cannot be both Required and NotRequired (#414).
Diagnostics reveal_type messages are now INFO‑level instead of errors, so they no longer fail CI runs when you’re just inspecting types (#304).
isinstance() checks involving Union[...] are now inferred correctly (#426).
Type‑system smarts • Better handling of Self generics in chained method calls (#152).
• Fixed constrained TypeVar attribute access (#318).
• Fixed failure when calling methods on a plain TypeVar (#150).
Stub & third‑party typing • Works with inline stub files that live beside their implementation (#419).
• Correctly recognises pandas-stubs generic aliases such as Index without type arguments (#427).

🐛 Other notable bug fixes

  • Duplicate “NoReturn / Never” return‑annotation error reduced to a single authoritative report (#425).
  • Numerous minor LSP crashes and hover glitches fixed.
  • Documentation on website and CLI cleanup

🚨 Potentially breaking

  • The new TypedDict qualifier rule (#414) will surface errors in code that previously passed silently.
  • If you relied on reveal_type raising an error exit status, update scripts to look for an info‑level diagnostic instead (#304).

📦 Upgrade

pip install --upgrade pyrefly==0.19.0

🖊️ Contributors in this release

@Adist319, @Alex-Aron, @connernilsen, @yangdanny97, @dluo , @dtolnay, @hugovk, @grantlouisherman, @grievejia, @kinto0, @MaggieMoss, @ndmitchell, @rchen152, @rubmary, @SamChou19815, @stroxler, @migeed-z