Skip to content

chore(deps): Bump pyrefly from 1.0.0 to 1.1.0#2301

Merged
github-actions[bot] merged 1 commit into
mainfrom
dependabot/uv/pyrefly-1.1.0
Jun 17, 2026
Merged

chore(deps): Bump pyrefly from 1.0.0 to 1.1.0#2301
github-actions[bot] merged 1 commit into
mainfrom
dependabot/uv/pyrefly-1.1.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 17, 2026

Copy link
Copy Markdown
Contributor

Bumps pyrefly from 1.0.0 to 1.1.0.

Release notes

Sourced from pyrefly's releases.

Pyrefly v1.1.0

Release date: June 17, 2026

Pyrefly v1.1.0 bundles 250 commits from 25 contributors.


✨ New & Improved

Type Checking

  • Pyrefly now correctly narrows TypedDict types after isinstance(x, dict) checks, treating them as runtime dict instances while preserving field information in the positive branch.
  • Type narrowing for bounded and constrained TypeVars has been significantly improved. isinstance checks now correctly narrow Self and bounded type variables via their disjoint-base representatives, and negative narrowing on bounded TypeVars no longer produces false positives.
  • Constrained TypeVars are now preserved through method calls and binary operations, so T & int where T: (int, str) correctly returns T & int instead of losing the TypeVar.
  • Classes decorated with @dataclass(slots=True) are now recognized as PEP 800 disjoint bases when they synthesize non-empty __slots__, enabling proper multiple-inheritance conflict detection and type narrowing.
  • Pyrefly now detects when methods override parent class methods without using the @override decorator, and a new quick fix can automatically add the decorator for you.
  • Variance inference now correctly skips receiver parameters (like self and cls) when determining class variance, fixing false invariance reports for container-like classes.

Performance

  • File discovery now uses the ignore crate with parallel traversal, making initial indexing 2-3x faster and dramatically reducing wall-clock time for large projects.
  • Completed calculation results are now stored outside the mutex, reducing lock contention and improving performance on large codebases like homeassistant-core and transformers.
  • Implicit builtins are now lazily materialized on first use instead of eagerly adding hundreds of import bindings to every module, reducing memory usage by 5-13% and CPU time by 10-28%.
  • Literal unions are now capped at 256 non-enum literals or 4096 enum members per kind to prevent exponential type growth, and overall union size is capped at 4096 members.
  • Bytes literals larger than 1024 bytes are now widened to bytes to keep type representations bounded.
  • Wide tuple unions (more than 8 variants) are now collapsed into unbounded tuple types to prevent performance hangs and out-of-memory errors during type checking.

Language Server

  • Hover tooltips now work correctly on subscript expressions without spaces (e.g., c[0]), showing the __getitem__ signature instead of garbled output.
  • Literal completions are now offered in expected-type contexts like annotated assignments, return statements, and attribute targets, not just call arguments.
  • Dictionary key completions now work in empty subscripts (d[) and half-typed subscripts (d["), suggesting known keys from TypedDicts and narrowed facets.
  • Go-to-definition on from X import Y statements now falls back to the module file when the imported name can't be resolved (e.g., for non-Python modules like .thrift files).
  • Quick fixes now use the file's actual line ending (CRLF or LF) instead of hardcoded \n, preventing mixed line endings.
  • Added support for legacy pkgutil-style namespace packages

Type Server Protocol (TSP)

  • The TSP backend now emits resolvable typing classes and TypeVars instead of opaque builtins, so hovering over special forms like Literal, Final, and ParamSpec now shows the correct name instead of Unknown.
  • Function types in TSP responses now carry specialized parameter and return types, enabling Pylance to display real types instead of Unknown.
  • Pyrefly now emits the protocol-conformant lowercase unknown sentinel in TSP responses instead of uppercase Unknown.
  • Expected-type queries now return the contextually expected type (e.g., the parameter type for a call argument) instead of the computed type, making the typeServer/getExpectedType request actually useful.

Error Reporting

  • No-matching-overload errors now show only the parameters relevant to the arguments you passed, hiding irrelevant optional parameters to make signatures easier to read.
  • Arity mismatch details and call errors are now included in no-matching-overload error messages, making it clearer why an overload didn't match.
  • The None hint in error messages now only suggests narrowing when it makes sense (e.g., in conditionals) and only suggests adding | None when you control the type.
  • Variance errors on overloaded methods now point to the offending overload instead of always pointing to the first one.

... (truncated)

Commits
  • 67a11d4 cut 1.1.0
  • 6eb38a7 Handle empty name invalid syntax
  • 54f61bc Resolve type-alias refs against their own module, not typing
  • fc495dc add test for resolving type alias references
  • 33de466 Resolve real source locations by reusing the query transaction (#3829)
  • 3fd550d Teach the type converter to resolve export locations
  • 86f0da7 Lazy materialize implicit builtins
  • 93e73ed Share class-object narrowing between guards
  • 84f9e99 Handle TypeIs intersections of class objects
  • 1a17175 filter overloads by self-type during protocol conformance
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [pyrefly](https://github.com/facebook/pyrefly) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/facebook/pyrefly/releases)
- [Commits](facebook/pyrefly@1.0.0...1.1.0)

---
updated-dependencies:
- dependency-name: pyrefly
  dependency-version: 1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Jun 17, 2026
@github-actions github-actions Bot enabled auto-merge June 17, 2026 22:24
@github-actions github-actions Bot merged commit 6548831 into main Jun 17, 2026
15 checks passed
@github-actions github-actions Bot deleted the dependabot/uv/pyrefly-1.1.0 branch June 17, 2026 22:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants