Skip to content

v0.1.31

Choose a tag to compare

@github-actions github-actions released this 19 Jun 14:23
· 551 commits to main since this release
c33505f

What's Changed

  • fix(checker): resolve merged value+type-alias imports to the value side (#13855) by @mohsen1 in #13900
  • perf(solver): bound InferSubstitutor traversal breadth (#13040) by @mohsen1 in #13905
  • fix(checker): arena-aware type params for multi-arena interfaces (jotai T-leak) by @mohsen1 in #13726
  • fix(checker): drop internal error sentinel from base-class type-argument fill (#13484) by @mohsen1 in #13909
  • test(checker): lock parity floor for nested generic indexed access (#13720) by @mohsen1 in #13907
  • test(cli): make #13255 parallel-determinism guards exercise the real par_iter path by @mohsen1 in #13911
  • fix(solver): named class/interface without an explicit index is not a string-record subtype by @mohsen1 in #13914
  • fix(checker): bound cross-file recursive alias-intersection resolution (#13212) by @mohsen1 in #13906
  • fix(checker): preserve unique-symbol identity for name-merged Symbol.for consts by @mohsen1 in #13902
  • fix(solver): canonicalize free type-parameter constraints so identity ignores resolution state (#13609) by @mohsen1 in #13915
  • test(checker): guard deferred HOF application against false TS2344 on unknown[] constraint (#13908) by @mohsen1 in #13913
  • perf(solver): per-instance memo for context-dependent relation verdicts (#13828) by @mohsen1 in #13917
  • perf(ci): restore per-test weights for fourslash shard balancing by @mohsen1 in #13912
  • fix(checker): reduce inline conditional/mapped type-alias application contextual type before object-literal property typing (#13618) by @mohsen1 in #13916
  • fix(checker): delegate cross-arena resolution for any provider-private alias body (#13618) by @mohsen1 in #13918
  • fix(solver): bound exclusion-narrowing recursion with a per-request work budget (#13806 theme C) by @mohsen1 in #13921
  • fix(checker): fold enum bitwise/shift via ECMAScript ToInt32/ToUint32 (#13919) by @mohsen1 in #13920
  • perf(checker): memoize the pass-through chase's assignment-relevance classification (#13311) by @mohsen1 in #13923
  • perf(solver): activate collect_properties memo in the intersection-source explain pass by @mohsen1 in #13924
  • perf(ci): build dist-binaries at -j8 (measured RSS-safe on 32 GiB) by @mohsen1 in #13925
  • fix(bench): show application-row compile results on the compatibility site by @mohsen1 in #13926
  • fix(solver): accept extends-Array interfaces as T[] via covariant element check by @mohsen1 in #13928
  • fix(checker): preserve source-order redeclaration diagnostics by @mohsen1 in #13927
  • refactor(solver): split mapped key/source extraction to restore the file-size ratchet by @mohsen1 in #13938
  • fix(checker): no TS2454/TS2448 for computed property names in type positions by @mohsen1 in #13940
  • fix(solver): alpha-rename predicate type params before nested inference (#13929) by @mohsen1 in #13941
  • fix(solver): source index signatures must not satisfy/reject target named members by @mohsen1 in #13943
  • fix(solver): accept extends-ReadonlyArray shapes against readonly array targets by @mohsen1 in #13945
  • infra(perf): headless symbolicated flat-profile tool (#13934) by @mohsen1 in #13950
  • test(checker): regression-guard suite for lib-interface heritage materialization rework (#13937) by @mohsen1 in #13948
  • fix(checker): resolve typeof X value-space for value+type-alias merged symbols (fp-ts HKT) by @mohsen1 in #13946
  • perf(solver): bound the failure-explanation eval storm with a work budget (#13243) by @mohsen1 in #13953
  • fix(checker): mirror eval-only DefId body writes into the flow-analyzer env (#13944) by @mohsen1 in #13952
  • test(checker): type-interner count guards for lib-heritage laziness (#13937) by @mohsen1 in #13959
  • test(checker): restore + broaden inline-conditional rest-spread parity guards (#6475 residual) by @mohsen1 in #13957
  • fix(solver): classify readonly T[] wrapper as element-indexable by its inner type by @mohsen1 in #13960
  • fix(checker): mirror resolution-time def writes into the flow-analyzer env by @mohsen1 in #13949
  • fix(checker): defer DefId env mirror writes instead of dropping them on borrow race (#13944) by @mohsen1 in #13951
  • fix(checker): keep type arguments of generic callable interfaces in assignability diagnostics (#13954) by @mohsen1 in #13955
  • fix(checker): canonicalize DefId of barrel-re-exported generics in type-reference position by @mohsen1 in #13958
  • perf(checker): defer spelling-suggestion scan to diagnostic emission (#12271) by @mohsen1 in #13962
  • fix(checker): classify node:-scheme-only builtins distinctly from their npm package names by @mohsen1 in #13963
  • fix(checker): reduce concrete indexed-access types for assignability diagnostic display by @mohsen1 in #13964
  • fix(emit): order auto-accessor backing-storage init by source position by @mohsen1 in #13969
  • perf(ci): move conformance-aggregate to ubuntu-latest (#13745) by @mohsen1 in #13965
  • fix(checker): gate sibling-literal expected-type display on bare type-parameter slot (#13956) by @mohsen1 in #13966
  • fix(checker): name the value element in inline-conditional rest-spread TS2345 (#13956) by @mohsen1 in #13967
  • fix(checker): type object-literal method this as the complete object literal (#13970) by @mohsen1 in #13971
  • fix(emit): retain transitive deps of non-exported classes/variables in .d.ts by @mohsen1 in #13972
  • fix(emit): map ES5-lowered generator/async body source positions by @mohsen1 in #13973
  • fix(checker): object-literal this sees later data properties and accessors by @mohsen1 in #13974
  • fix(emit): map ES5-downleveled generator yield operands in source maps by @mohsen1 in #13976
  • perf(ci): make cargo-target-deps staleness measurable on the shallow dist-binaries runner (#13747) by @mohsen1 in #13977
  • fix(solver): don't let the limited-resolver first pass consume materialized closed-eval meta-operations by @mohsen1 in #13978
  • fix(checker): substitute type args for namespace-qualified generic interface refs by @mohsen1 in #13984
  • fix(checker): report @types/node install hint for unresolved node builtins under node16/nodenext by @mohsen1 in #13985
  • fix(emit): hoist optional-chain temps in ES5 concise-body arrows by @mohsen1 in #13988
  • fix(solver): resolve cross-file generic alias-of-callable call targets (#13947) by @mohsen1 in #13989
  • fix(checker): unwrap rest-element array type when iterating a tuple in for-of by @mohsen1 in #13990
  • fix(solver): Array.isArray narrows object-like supertypes of any[] to any[], not never by @mohsen1 in #13992
  • checker: add targeted per-TypeId env_eval_cache invalidation by @mohsen1 in #13991
  • fix(checker): unary arithmetic on any yields number, not bigint by @mohsen1 in #13994
  • test(solver): pin lazy heritage-base member resolution (consumer side, #13935) by @mohsen1 in #13998
  • fix(checker): preserve primitive-literal right operand of contextual ||/?? by @mohsen1 in #13997
  • fix(checker): match tsc's syntactic ?? operand nullishness for TS2869/TS2871 by @mohsen1 in #13999
  • fix(resolver): resolve package.json #imports against the nearest package scope only by @mohsen1 in #14004
  • fix(binder): finalize if-statement merge label via finishFlowLabel (collapse dead merges) by @mohsen1 in #14001
  • perf(checker): memoize type-position identifier resolution by @mohsen1 in #13993
  • fix(bench): require application compatibility before publishing by @mohsen1 in #14010
  • fix(emit): keep single-line function bodies single-line with object-rest params (#14006) by @mohsen1 in #14007
  • fix(solver): accept union of valid index types in strict TS2538 check by @mohsen1 in #14005
  • fix(checker): render apparent type of TS7053 index receiver (object -> {}) by @mohsen1 in #14015
  • chore(release): bump try-tsz publish version to 0.1.31 by @mohsen1 in #14014

Full Changelog: v0.1.30...v0.1.31

What's Changed

  • fix(checker): resolve merged value+type-alias imports to the value side (#13855) by @mohsen1 in #13900
  • perf(solver): bound InferSubstitutor traversal breadth (#13040) by @mohsen1 in #13905
  • fix(checker): arena-aware type params for multi-arena interfaces (jotai T-leak) by @mohsen1 in #13726
  • fix(checker): drop internal error sentinel from base-class type-argument fill (#13484) by @mohsen1 in #13909
  • test(checker): lock parity floor for nested generic indexed access (#13720) by @mohsen1 in #13907
  • test(cli): make #13255 parallel-determinism guards exercise the real par_iter path by @mohsen1 in #13911
  • fix(solver): named class/interface without an explicit index is not a string-record subtype by @mohsen1 in #13914
  • fix(checker): bound cross-file recursive alias-intersection resolution (#13212) by @mohsen1 in #13906
  • fix(checker): preserve unique-symbol identity for name-merged Symbol.for consts by @mohsen1 in #13902
  • fix(solver): canonicalize free type-parameter constraints so identity ignores resolution state (#13609) by @mohsen1 in #13915
  • test(checker): guard deferred HOF application against false TS2344 on unknown[] constraint (#13908) by @mohsen1 in #13913
  • perf(solver): per-instance memo for context-dependent relation verdicts (#13828) by @mohsen1 in #13917
  • perf(ci): restore per-test weights for fourslash shard balancing by @mohsen1 in #13912
  • fix(checker): reduce inline conditional/mapped type-alias application contextual type before object-literal property typing (#13618) by @mohsen1 in #13916
  • fix(checker): delegate cross-arena resolution for any provider-private alias body (#13618) by @mohsen1 in #13918
  • fix(solver): bound exclusion-narrowing recursion with a per-request work budget (#13806 theme C) by @mohsen1 in #13921
  • fix(checker): fold enum bitwise/shift via ECMAScript ToInt32/ToUint32 (#13919) by @mohsen1 in #13920
  • perf(checker): memoize the pass-through chase's assignment-relevance classification (#13311) by @mohsen1 in #13923
  • perf(solver): activate collect_properties memo in the intersection-source explain pass by @mohsen1 in #13924
  • perf(ci): build dist-binaries at -j8 (measured RSS-safe on 32 GiB) by @mohsen1 in #13925
  • fix(bench): show application-row compile results on the compatibility site by @mohsen1 in #13926
  • fix(solver): accept extends-Array interfaces as T[] via covariant element check by @mohsen1 in #13928
  • fix(checker): preserve source-order redeclaration diagnostics by @mohsen1 in #13927
  • refactor(solver): split mapped key/source extraction to restore the file-size ratchet by @mohsen1 in #13938
  • fix(checker): no TS2454/TS2448 for computed property names in type positions by @mohsen1 in #13940
  • fix(solver): alpha-rename predicate type params before nested inference (#13929) by @mohsen1 in #13941
  • fix(solver): source index signatures must not satisfy/reject target named members by @mohsen1 in #13943
  • fix(solver): accept extends-ReadonlyArray shapes against readonly array targets by @mohsen1 in #13945
  • infra(perf): headless symbolicated flat-profile tool (#13934) by @mohsen1 in #13950
  • test(checker): regression-guard suite for lib-interface heritage materialization rework (#13937) by @mohsen1 in #13948
  • fix(checker): resolve typeof X value-space for value+type-alias merged symbols (fp-ts HKT) by @mohsen1 in #13946
  • perf(solver): bound the failure-explanation eval storm with a work budget (#13243) by @mohsen1 in #13953
  • fix(checker): mirror eval-only DefId body writes into the flow-analyzer env (#13944) by @mohsen1 in #13952
  • test(checker): type-interner count guards for lib-heritage laziness (#13937) by @mohsen1 in #13959
  • test(checker): restore + broaden inline-conditional rest-spread parity guards (#6475 residual) by @mohsen1 in #13957
  • fix(solver): classify readonly T[] wrapper as element-indexable by its inner type by @mohsen1 in #13960
  • fix(checker): mirror resolution-time def writes into the flow-analyzer env by @mohsen1 in #13949
  • fix(checker): defer DefId env mirror writes instead of dropping them on borrow race (#13944) by @mohsen1 in #13951
  • fix(checker): keep type arguments of generic callable interfaces in assignability diagnostics (#13954) by @mohsen1 in #13955
  • fix(checker): canonicalize DefId of barrel-re-exported generics in type-reference position by @mohsen1 in #13958
  • perf(checker): defer spelling-suggestion scan to diagnostic emission (#12271) by @mohsen1 in #13962
  • fix(checker): classify node:-scheme-only builtins distinctly from their npm package names by @mohsen1 in #13963
  • fix(checker): reduce concrete indexed-access types for assignability diagnostic display by @mohsen1 in #13964
  • fix(emit): order auto-accessor backing-storage init by source position by @mohsen1 in #13969
  • perf(ci): move conformance-aggregate to ubuntu-latest (#13745) by @mohsen1 in #13965
  • fix(checker): gate sibling-literal expected-type display on bare type-parameter slot (#13956) by @mohsen1 in #13966
  • fix(checker): name the value element in inline-conditional rest-spread TS2345 (#13956) by @mohsen1 in #13967
  • fix(checker): type object-literal method this as the complete object literal (#13970) by @mohsen1 in #13971
  • fix(emit): retain transitive deps of non-exported classes/variables in .d.ts by @mohsen1 in #13972
  • fix(emit): map ES5-lowered generator/async body source positions by @mohsen1 in #13973
  • fix(checker): object-literal this sees later data properties and accessors by @mohsen1 in #13974
  • fix(emit): map ES5-downleveled generator yield operands in source maps by @mohsen1 in #13976
  • perf(ci): make cargo-target-deps staleness measurable on the shallow dist-binaries runner (#13747) by @mohsen1 in #13977
  • fix(solver): don't let the limited-resolver first pass consume materialized closed-eval meta-operations by @mohsen1 in #13978
  • fix(checker): substitute type args for namespace-qualified generic interface refs by @mohsen1 in #13984
  • fix(checker): report @types/node install hint for unresolved node builtins under node16/nodenext by @mohsen1 in #13985
  • fix(emit): hoist optional-chain temps in ES5 concise-body arrows by @mohsen1 in #13988
  • fix(solver): resolve cross-file generic alias-of-callable call targets (#13947) by @mohsen1 in #13989
  • fix(checker): unwrap rest-element array type when iterating a tuple in for-of by @mohsen1 in #13990
  • fix(solver): Array.isArray narrows object-like supertypes of any[] to any[], not never by @mohsen1 in #13992
  • checker: add targeted per-TypeId env_eval_cache invalidation by @mohsen1 in #13991
  • fix(checker): unary arithmetic on any yields number, not bigint by @mohsen1 in #13994
  • test(solver): pin lazy heritage-base member resolution (consumer side, #13935) by @mohsen1 in #13998
  • fix(checker): preserve primitive-literal right operand of contextual ||/?? by @mohsen1 in #13997
  • fix(checker): match tsc's syntactic ?? operand nullishness for TS2869/TS2871 by @mohsen1 in #13999
  • fix(resolver): resolve package.json #imports against the nearest package scope only by @mohsen1 in #14004
  • fix(binder): finalize if-statement merge label via finishFlowLabel (collapse dead merges) by @mohsen1 in #14001
  • perf(checker): memoize type-position identifier resolution by @mohsen1 in #13993
  • fix(bench): require application compatibility before publishing by @mohsen1 in #14010
  • fix(emit): keep single-line function bodies single-line with object-rest params (#14006) by @mohsen1 in #14007
  • fix(solver): accept union of valid index types in strict TS2538 check by @mohsen1 in #14005
  • fix(checker): render apparent type of TS7053 index receiver (object -> {}) by @mohsen1 in #14015
  • chore(release): bump try-tsz publish version to 0.1.31 by @mohsen1 in #14014

Full Changelog: v0.1.30...v0.1.31