Skip to content

Improve how intersections are classified as weak types #60889

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

Andarist
Copy link
Contributor

fixes #56995

@typescript-bot typescript-bot added the For Backlog Bug PRs that fix a backlog bug label Dec 31, 2024
if (!v) {
return 0;
}
result = result > v ? result : v;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The idea behind the fix is that an empty object type should not be considered to be weak on its own. That's comes from the pre-existing requirement for weak types:

resolved.properties.length > 0 && every(resolved.properties, p => !!(p.flags & SymbolFlags.Optional))

However, when it's intersected with a weak type that should not make it, out of a sudden, non-weak. The new logic still maintains the invariant that an intersection of many empty interfaces is not considered to be weak (it should obey the same rules as a single empty interface).

All of that doesn't change the definition put in the existing code comment:

    /**
     * A type is 'weak' if it is an object type with at least one optional property
     * and no required properties, call/construct signatures or index signatures
     */

Actually, the old behavior wasn't enforcing those rules for intersections precisely enough. The proposed adjustment is closer to checking the intersection as a single type with a flat list of properties instead of checking separate types and combining those results "blindly". I think it's more accurate to do it this way because for most purposes an intersection shouldn't be distinguishable from the same type with a "flattened" list of properties.

@jakebailey
Copy link
Member

@typescript-bot test it

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 30, 2025

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
test top400 ✅ Started 👀 Results
user test this ✅ Started 👀 Results
run dt ✅ Started 👀 Results
perf test this faster ✅ Started 👀 Results

@typescript-bot
Copy link
Collaborator

Hey @jakebailey, the results of running the DT tests are ready.

There were interesting changes:

Branch only errors:

Package: relay-test-utils
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/relay-test-utils/test/classical.tsx
  22:17  error  TypeScript@local compile error: 
Argument of type 'Container<Omit<unknown, "relay">>' is not assignable to parameter of type 'ComponentType<RelayProp | RelayPaginationProp | RelayRefetchProp | (MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { ...; })>'.
  Type 'ComponentClass<MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { componentRef?: ((ref: any) => void) | undefined; }, any>' is not assignable to type 'ComponentType<RelayProp | RelayPaginationProp | RelayRefetchProp | (MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { ...; })>'.
    Type 'ComponentClass<MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { componentRef?: ((ref: any) => void) | undefined; }, any>' is not assignable to type 'ComponentClass<RelayProp | RelayPaginationProp | RelayRefetchProp | (MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { ...; }), any>'.
      Types of property 'getDerivedStateFromProps' are incompatible.
        Type 'GetDerivedStateFromProps<MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { componentRef?: ((ref: any) => void) | undefined; }, any> | undefined' is not assignable to type 'GetDerivedStateFromProps<RelayProp | RelayPaginationProp | RelayRefetchProp | (MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { ...; }), any> | undefined'.
          Type 'GetDerivedStateFromProps<MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { componentRef?: ((ref: any) => void) | undefined; }, any>' is not assignable to type 'GetDerivedStateFromProps<RelayProp | RelayPaginationProp | RelayRefetchProp | (MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { ...; }), any>'.
            Types of parameters 'nextProps' and 'nextProps' are incompatible.
              Type 'Readonly<RelayProp | RelayPaginationProp | RelayRefetchProp | (MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { ...; })>' is not assignable to type 'Readonly<MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { componentRef?: ((ref: any) => void) | undefined; }>'.
                Type 'Readonly<RelayProp>' has no properties in common with type 'Readonly<MappedFragmentProps<Pick<Omit<unknown, "relay">, never>> & { componentRef?: ((ref: any) => void) | undefined; }>'  @definitelytyped/expect

✖ 1 problem (1 error, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-gateway
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-gateway/react-gateway-tests.tsx
  25:14  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): GatewayProvider', gave the following error.
    Type '{ children: Element[]; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<GatewayProvider> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): GatewayProvider', gave the following error.
    Type '{ children: Element[]; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<GatewayProvider> & Readonly<{}>'  @definitelytyped/expect

✖ 1 problem (1 error, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-helmet-with-visor
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-helmet-with-visor/react-helmet-with-visor-tests.tsx
   10:14  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): HelmetsOpenedVisor', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<HelmetsOpenedVisor> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): HelmetsOpenedVisor', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<HelmetsOpenedVisor> & Readonly<{}>'  @definitelytyped/expect
  131:6   error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): HelmetsOpenedVisor', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<HelmetsOpenedVisor> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): HelmetsOpenedVisor', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<HelmetsOpenedVisor> & Readonly<{}>'  @definitelytyped/expect

✖ 2 problems (2 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: meteor-dburles-collection-helpers
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/meteor-dburles-collection-helpers/meteor-dburles-collection-helpers-tests.ts
  251:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  254:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  262:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  265:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  273:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  276:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  284:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  287:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  295:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  298:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  306:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  309:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  317:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  320:1   error  TypeScript@local compile error: 
Unused '@ts-expect-error' directive                                                                                                                                           @definitelytyped/expect
  328:27  error  TypeScript@local compile error: 
Type '() => string' is not assignable to type 'Helper<string | (() => string)>'.
  Type '() => string' has no properties in common with type '(() => string) & HelperFlavor'  @definitelytyped/expect
  393:5   error  TypeScript@local compile error: 
Type '() => number' has no properties in common with type '(() => number) & HelperFlavor & OptionalHelperFlavor'                                                              @definitelytyped/expect
  399:5   error  TypeScript@local compile error: 
Type '() => void' has no properties in common with type '(() => void) & HelperFlavor & OptionalHelperFlavor'                                                                  @definitelytyped/expect
  413:5   error  TypeScript@local compile error: 
Type '() => number' has no properties in common with type '(() => number) & HelperFlavor & OptionalHelperFlavor'                                                              @definitelytyped/expect
  416:5   error  TypeScript@local compile error: 
Type '() => void' has no properties in common with type '(() => void) & HelperFlavor & OptionalHelperFlavor'                                                                  @definitelytyped/expect

✖ 19 problems (19 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-instantsearch-native
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-instantsearch-native/react-instantsearch-native-tests.tsx
  12:10  error  TypeScript@local compile error: 
Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<{}, any, any>> & Readonly<{}>'  @definitelytyped/expect
  15:22  error  TypeScript@local compile error: 
Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<{}, any, any>> & Readonly<{}>'  @definitelytyped/expect
  23:22  error  TypeScript@local compile error: 
Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<{}, any, any>> & Readonly<{}>'  @definitelytyped/expect
  31:22  error  TypeScript@local compile error: 
Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<{}, any, any>> & Readonly<{}>'  @definitelytyped/expect

✖ 4 problems (4 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-aria-live
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-aria-live/react-aria-live-tests.tsx
   5:2  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): LiveAnnouncer', gave the following error.
    Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LiveAnnouncer> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): LiveAnnouncer', gave the following error.
    Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LiveAnnouncer> & Readonly<{}>'  @definitelytyped/expect
  13:2  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): LiveAnnouncer', gave the following error.
    Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LiveAnnouncer> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): LiveAnnouncer', gave the following error.
    Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LiveAnnouncer> & Readonly<{}>'  @definitelytyped/expect

✖ 2 problems (2 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-native-modals
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-native-modals/react-native-modals-tests.tsx
  117:14  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): ModalPortal', gave the following error.
    Type '{ children: Element[]; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<ModalPortal> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): ModalPortal', gave the following error.
    Type '{ children: Element[]; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<ModalPortal> & Readonly<{}>'  @definitelytyped/expect

✖ 1 problem (1 error, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: reactable
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/reactable/reactable-tests.tsx
  71:18  error  TypeScript@local compile error: 
Type '{ children: Element[]; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Thead> & Readonly<{}>'  @definitelytyped/expect
  75:18  error  TypeScript@local compile error: 
Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Tfoot> & Readonly<{}>'    @definitelytyped/expect

✖ 2 problems (2 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: reselect-tools
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/reselect-tools/reselect-tools-tests.ts
  25:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect
  27:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect
  29:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect
  31:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect
  33:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect
  35:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect
  37:15  error  TypeScript@local compile error: 
Argument of type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' is not assignable to parameter of type 'string | RegisteredSelector'.
  Type '(state: RootState) => { id: number; title: string; completed: boolean; }[]' has no properties in common with type 'RegisteredSelector'  @definitelytyped/expect

✖ 7 problems (7 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-switch-case
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-switch-case/react-switch-case-tests.tsx
  16:18  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): Default', gave the following error.
    Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Default> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): Default', gave the following error.
    Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Default> & Readonly<{}>'  @definitelytyped/expect

✖ 1 problem (1 error, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: solid__react
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/solid__react/solid__react-tests.tsx
  32:14  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): LoggedIn', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LoggedIn> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): LoggedIn', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LoggedIn> & Readonly<{}>'      @definitelytyped/expect
  33:14  error  TypeScript@local compile error: 
No overload matches this call.
  Overload 1 of 2, '(props: {}): LoggedOut', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LoggedOut> & Readonly<{}>'.
  Overload 2 of 2, '(props: {}, context: any): LoggedOut', gave the following error.
    Type '{ children: string; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<LoggedOut> & Readonly<{}>'  @definitelytyped/expect

✖ 2 problems (2 errors, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-native-web
Error:

Error: 
/mnt/vss/_work/1/DefinitelyTyped/types/react-native-web/react-native-web-tests.tsx
  349:6  error  TypeScript@local compile error: 
Type '{ children: Element; }' has no properties in common with type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<{}, any, any>> & Readonly<{}>'  @definitelytyped/expect

✖ 1 problem (1 error, 0 warnings)

    at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
    at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@[email protected][email protected]/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

You can check the log here.

@typescript-bot
Copy link
Collaborator

@jakebailey
The results of the perf run you requested are in!

Here they are:

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - node (v18.15.0, x64)
Errors 34 34 ~ ~ ~ p=1.000 n=6
Symbols 62,370 62,370 ~ ~ ~ p=1.000 n=6
Types 50,386 50,386 ~ ~ ~ p=1.000 n=6
Memory used 196,010k (± 0.74%) 195,941k (± 0.73%) ~ 193,026k 196,718k p=0.575 n=6
Parse Time 1.60s (± 0.83%) 1.61s (± 0.78%) ~ 1.60s 1.63s p=0.250 n=6
Bind Time 0.88s (± 1.57%) 0.88s (± 1.11%) ~ 0.87s 0.89s p=0.401 n=6
Check Time 11.78s (± 0.68%) 11.78s (± 0.44%) ~ 11.71s 11.87s p=1.000 n=6
Emit Time 3.27s (± 0.74%) 3.36s (± 3.72%) ~ 3.26s 3.60s p=0.076 n=6
Total Time 17.52s (± 0.57%) 17.63s (± 0.77%) ~ 17.47s 17.87s p=0.173 n=6
angular-1 - node (v18.15.0, x64)
Errors 56 56 ~ ~ ~ p=1.000 n=6
Symbols 948,753 948,753 ~ ~ ~ p=1.000 n=6
Types 410,846 410,846 ~ ~ ~ p=1.000 n=6
Memory used 1,225,213k (± 0.00%) 1,225,231k (± 0.00%) ~ 1,225,172k 1,225,308k p=0.936 n=6
Parse Time 7.86s (± 1.16%) 7.96s (± 0.62%) ~ 7.88s 8.01s p=0.053 n=6
Bind Time 2.27s (± 0.46%) 2.26s (± 0.71%) ~ 2.25s 2.29s p=0.508 n=6
Check Time 38.02s (± 0.46%) 38.01s (± 0.42%) ~ 37.75s 38.21s p=0.936 n=6
Emit Time 17.78s (± 0.68%) 17.73s (± 0.51%) ~ 17.60s 17.86s p=0.423 n=6
Total Time 65.92s (± 0.38%) 65.97s (± 0.38%) ~ 65.48s 66.19s p=0.630 n=6
mui-docs - node (v18.15.0, x64)
Errors 0 5 🔻+5 (+ ∞%) ~ ~ p=0.001 n=6
Symbols 2,509,183 2,510,878 +1,695 (+ 0.07%) ~ ~ p=0.001 n=6
Types 892,716 893,042 +326 (+ 0.04%) ~ ~ p=0.001 n=6
Memory used 2,804,154k (± 0.00%) 2,804,865k (± 0.00%) +711k (+ 0.03%) 2,804,801k 2,804,975k p=0.005 n=6
Parse Time 8.69s (± 0.30%) 8.68s (± 0.22%) ~ 8.65s 8.70s p=0.256 n=6
Bind Time 2.24s (± 0.52%) 2.24s (± 0.54%) ~ 2.22s 2.25s p=0.868 n=6
Check Time 84.21s (± 0.44%) 84.24s (± 0.63%) ~ 83.64s 84.91s p=0.810 n=6
Emit Time 0.30s 0.30s (± 1.74%) ~ 0.29s 0.30s p=0.174 n=6
Total Time 95.44s (± 0.39%) 95.45s (± 0.56%) ~ 94.86s 96.15s p=1.000 n=6
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,227,081 1,227,086 +5 (+ 0.00%) ~ ~ p=0.001 n=6
Types 267,474 267,478 +4 (+ 0.00%) ~ ~ p=0.001 n=6
Memory used 3,097,898k (± 0.02%) 2,975,558k (±10.05%) ~ 2,364,743k 3,098,645k p=0.471 n=6
Parse Time 6.72s (± 1.25%) 6.70s (± 1.11%) ~ 6.57s 6.78s p=0.936 n=6
Bind Time 2.14s (± 1.20%) 2.15s (± 1.63%) ~ 2.11s 2.19s p=0.872 n=6
Check Time 42.92s (± 0.19%) 42.90s (± 0.42%) ~ 42.68s 43.21s p=0.470 n=6
Emit Time 3.44s (± 1.62%) 3.51s (± 5.14%) ~ 3.39s 3.87s p=0.748 n=6
Total Time 55.25s (± 0.22%) 55.25s (± 0.29%) ~ 55.11s 55.56s p=0.810 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,227,081 1,227,086 +5 (+ 0.00%) ~ ~ p=0.001 n=6
Types 267,474 267,478 +4 (+ 0.00%) ~ ~ p=0.001 n=6
Memory used 2,918,933k (±12.85%) 2,796,931k (±14.29%) ~ 2,430,629k 3,162,942k p=0.810 n=6
Parse Time 6.82s (± 1.45%) 6.78s (± 1.08%) ~ 6.68s 6.87s p=0.378 n=6
Bind Time 2.16s (± 0.83%) 2.17s (± 1.40%) ~ 2.13s 2.21s p=0.872 n=6
Check Time 42.60s (± 0.56%) 42.83s (± 0.42%) +0.22s (+ 0.52%) 42.67s 43.16s p=0.045 n=6
Emit Time 3.47s (± 1.01%) 3.56s (± 2.72%) ~ 3.44s 3.69s p=0.093 n=6
Total Time 55.06s (± 0.59%) 55.35s (± 0.44%) ~ 55.04s 55.75s p=0.128 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 262,548 262,553 +5 (+ 0.00%) ~ ~ p=0.001 n=6
Types 107,156 107,160 +4 (+ 0.00%) ~ ~ p=0.001 n=6
Memory used 441,855k (± 0.00%) 441,942k (± 0.02%) ~ 441,771k 442,024k p=0.065 n=6
Parse Time 3.53s (± 0.68%) 3.56s (± 0.90%) ~ 3.52s 3.60s p=0.255 n=6
Bind Time 1.32s (± 0.39%) 1.32s (± 1.27%) ~ 1.30s 1.34s p=0.559 n=6
Check Time 18.96s (± 0.21%) 18.86s (± 0.50%) ~ 18.77s 19.01s p=0.076 n=6
Emit Time 1.53s (± 1.49%) 1.53s (± 0.69%) ~ 1.51s 1.54s p=1.000 n=6
Total Time 25.34s (± 0.23%) 25.27s (± 0.34%) ~ 25.15s 25.37s p=0.172 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 71 71 ~ ~ ~ p=1.000 n=6
Symbols 225,367 225,367 ~ ~ ~ p=1.000 n=6
Types 94,290 94,290 ~ ~ ~ p=1.000 n=6
Memory used 371,128k (± 0.01%) 371,147k (± 0.03%) ~ 371,008k 371,368k p=0.810 n=6
Parse Time 2.88s (± 0.61%) 2.89s (± 1.36%) ~ 2.83s 2.95s p=0.225 n=6
Bind Time 1.60s (± 1.12%) 1.60s (± 2.03%) ~ 1.56s 1.64s p=1.000 n=6
Check Time 16.37s (± 0.34%) 16.33s (± 0.47%) ~ 16.24s 16.45s p=0.293 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 20.84s (± 0.32%) 20.83s (± 0.37%) ~ 20.71s 20.92s p=1.000 n=6
vscode - node (v18.15.0, x64)
Errors 33 34 +1 (+ 3.03%) ~ ~ p=0.001 n=6
Symbols 3,499,298 3,499,298 ~ ~ ~ p=1.000 n=6
Types 1,177,218 1,177,218 ~ ~ ~ p=1.000 n=6
Memory used 3,549,847k (± 0.00%) 3,549,885k (± 0.01%) ~ 3,549,502k 3,550,045k p=0.378 n=6
Parse Time 15.03s (± 0.67%) 15.04s (± 0.26%) ~ 15.01s 15.11s p=0.936 n=6
Bind Time 4.90s (± 0.61%) 4.88s (± 0.50%) ~ 4.84s 4.91s p=0.511 n=6
Check Time 95.46s (± 3.03%) 96.36s (± 3.67%) ~ 93.79s 101.23s p=0.688 n=6
Emit Time 30.99s (± 7.75%) 31.08s (± 7.88%) ~ 29.41s 35.81s p=0.575 n=6
Total Time 146.38s (± 2.65%) 147.37s (± 2.96%) ~ 143.13s 152.25s p=0.810 n=6
webpack - node (v18.15.0, x64)
Errors 2 16 🔻+14 (+700.00%) ~ ~ p=0.001 n=6
Symbols 318,019 318,043 +24 (+ 0.01%) ~ ~ p=0.001 n=6
Types 137,705 137,709 +4 (+ 0.00%) ~ ~ p=0.001 n=6
Memory used 472,245k (± 0.01%) 472,300k (± 0.03%) ~ 472,129k 472,583k p=0.471 n=6
Parse Time 4.39s (± 0.84%) 4.31s (± 0.83%) -0.08s (- 1.75%) 4.26s 4.36s p=0.013 n=6
Bind Time 1.79s (± 1.10%) 1.77s (± 0.23%) -0.03s (- 1.39%) 1.76s 1.77s p=0.010 n=6
Check Time 20.76s (± 0.43%) 20.75s (± 0.47%) ~ 20.58s 20.82s p=0.686 n=6
Emit Time 0.00s 0.00s (±244.70%) ~ 0.00s 0.01s p=0.405 n=6
Total Time 26.94s (± 0.43%) 26.83s (± 0.35%) ~ 26.68s 26.95s p=0.128 n=6
xstate-main - node (v18.15.0, x64)
Errors 30 30 ~ ~ ~ p=1.000 n=6
Symbols 665,978 665,978 ~ ~ ~ p=1.000 n=6
Types 199,345 199,345 ~ ~ ~ p=1.000 n=6
Memory used 570,319k (± 0.04%) 570,375k (± 0.04%) ~ 569,973k 570,601k p=0.689 n=6
Parse Time 4.27s (± 0.82%) 4.27s (± 0.54%) ~ 4.25s 4.30s p=1.000 n=6
Bind Time 1.33s (± 1.50%) 1.34s (± 1.62%) ~ 1.31s 1.37s p=0.935 n=6
Check Time 19.91s (± 0.26%) 19.94s (± 0.29%) ~ 19.84s 19.98s p=0.571 n=6
Emit Time 0.00s (±244.70%) 0.00s ~ ~ ~ p=0.405 n=6
Total Time 25.51s (± 0.24%) 25.54s (± 0.19%) ~ 25.47s 25.61s p=0.261 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Compiler-Unions - node (v18.15.0, x64)
  • angular-1 - node (v18.15.0, x64)
  • mui-docs - node (v18.15.0, x64)
  • self-build-src - node (v18.15.0, x64)
  • self-build-src-public-api - node (v18.15.0, x64)
  • self-compiler - node (v18.15.0, x64)
  • ts-pre-modules - node (v18.15.0, x64)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate-main - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the user tests with tsc comparing main and refs/pull/60889/merge:

Something interesting changed - please have a look.

Details

arktype

/mnt/ts_downloads/_/m/arktype/build.sh

  • [NEW] error TS2353: Object literal may only specify known properties, and '"1"' does not exist in type 'errorCases<unknown, { cases: []; $: {}; input: unknown; checked: false; key: null; }>'.
    • /mnt/ts_downloads/_/m/arktype/ark/type/tests/match.test.ts(93,4)
  • [NEW] error TS7006: Parameter 'n' implicitly has an 'any' type.
    • /mnt/ts_downloads/_/m/arktype/ark/type/tests/match.test.ts(93,9)
    • /mnt/ts_downloads/_/m/arktype/ark/type/tests/match.test.ts(94,9)
  • [NEW] error TS2353: Object literal may only specify known properties, and 'value' does not exist in type '{} & { default?: DefaultCase<{ cases: []; $: {}; input: unknown; checked: false; key: "foo"; }>; }'.
    • /mnt/ts_downloads/_/m/arktype/ark/type/tests/match.test.ts(871,5)
  • [NEW] error TS7006: Parameter 'o' implicitly has an 'any' type.
    • /mnt/ts_downloads/_/m/arktype/ark/type/tests/match.test.ts(871,12)

webpack

tsconfig.types.test.json

tsconfig.types.json

tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the top 400 repos with tsc comparing main and refs/pull/60889/merge:

Something interesting changed - please have a look.

Details

aidenybai/react-scan

1 of 7 projects failed to build with the old tsc and were ignored

packages/scan/tsconfig.json

  • error TS2559: Type '(set: { (partial: { state: { events: DebugEvent[]; }; actions: { addEvent: (event: any) => void; clear: () => void; }; } | Partial<{ state: { events: DebugEvent[]; }; actions: { addEvent: (event: any) => void; clear: () => void; }; }> | ((state: { ...; }) => { ...; } | Partial<...>), replace?: false | undefined): vo...' has no properties in common with type 'StateCreator<{ state: { events: DebugEvent[]; }; actions: { addEvent: (event: any) => void; clear: () => void; }; }, [], [], { state: { events: DebugEvent[]; }; actions: { addEvent: (event: any) => void; clear: () => void; }; }>'.
  • error TS2559: Type '(set: { (partial: ToolbarEventStoreState | Partial<ToolbarEventStoreState> | ((state: ToolbarEventStoreState) => ToolbarEventStoreState | Partial<...>), replace?: false | undefined): void; (state: ToolbarEventStoreState | ((state: ToolbarEventStoreState) => ToolbarEventStoreState), replace: true): void; }, get: () =...' has no properties in common with type 'StateCreator<ToolbarEventStoreState, [], [], ToolbarEventStoreState>'.

alan2207/bulletproof-react

apps/react-vite/tsconfig.json

apps/nextjs-pages/tsconfig.json

apps/nextjs-app/tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

apache/superset

8 of 32 projects failed to build with the old tsc and were ignored

superset-frontend/plugins/plugin-chart-word-cloud/test/tsconfig.json

superset-frontend/plugins/plugin-chart-table/test/tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

AykutSarac/jsoncrack.com

tsconfig.json

  • error TS2559: Type '(set: (partial: (Graph & GraphActions) | Partial<Graph & GraphActions> | ((state: Graph & GraphActions) => (Graph & GraphActions) | Partial<...>), replace?: boolean | undefined) => void, get: () => Graph & GraphActions) => { ...; }' has no properties in common with type 'StateCreator<Graph & GraphActions, [], []>'.
  • error TS2322: Type '(App: AppType<{}>) => (props: AppPropsType<any, {}>) => Element' is not assignable to type 'Enhancer<AppType<{}>>'.
  • error TS2559: Type '(set: (partial: ({ darkmodeEnabled: boolean; collapseButtonVisible: boolean; childrenCountVisible: boolean; imagePreviewEnabled: boolean; liveTransformEnabled: boolean; gesturesEnabled: boolean; rulersEnabled: boolean; } & ConfigActions) | Partial<...> | ((state: { ...; } & ConfigActions) => ({ ...; } & ConfigAction...' has no properties in common with type 'StateCreator<{ darkmodeEnabled: boolean; collapseButtonVisible: boolean; childrenCountVisible: boolean; imagePreviewEnabled: boolean; liveTransformEnabled: boolean; gesturesEnabled: boolean; rulersEnabled: boolean; } & ConfigActions, [...], []>'.
  • error TS2559: Type '(set: (partial: ({ fileData: File | null; format: FileFormat; contents: string; error: any; hasChanges: boolean; jsonSchema: object | null; } & JsonActions) | Partial<...> | ((state: { ...; } & JsonActions) => ({ ...; } & JsonActions) | Partial<...>), replace?: boolean | undefined) => void, get: () => { ...; } & Jso...' has no properties in common with type 'StateCreator<{ fileData: File | null; format: FileFormat; contents: string; error: any; hasChanges: boolean; jsonSchema: object | null; } & JsonActions, [], []>'.
  • error TS2559: Type '(set: (partial: ({ json: string; loading: boolean; } & JsonActions) | Partial<{ json: string; loading: boolean; } & JsonActions> | ((state: { json: string; loading: boolean; } & JsonActions) => ({ ...; } & JsonActions) | Partial<...>), replace?: boolean | undefined) => void, get: () => { ...; } & JsonActions) => { ....' has no properties in common with type 'StateCreator<{ json: string; loading: boolean; } & JsonActions, [], []>'.
  • error TS2559: Type '(set: (partial: (ModalState & ModalActions) | Partial<ModalState & ModalActions> | ((state: ModalState & ModalActions) => (ModalState & ModalActions) | Partial<...>), replace?: boolean | undefined) => void) => { ...; }' has no properties in common with type 'StateCreator<ModalState & ModalActions, [], []>'.

BuilderIO/mitosis

17 of 25 projects failed to build with the old tsc and were ignored

packages/core/tsconfig.build.json

bytedance/deer-flow

web/tsconfig.json

  • error TS2559: Type '() => { graph: Graph; activeStepIndex: number; playing: false; }' has no properties in common with type 'StateCreator<{ graph: Graph; activeStepIndex: number; playing: boolean; }, [], []>'.
  • error TS2559: Type '() => { general: { autoAcceptedPlan: boolean; enableDeepThinking: boolean; enableBackgroundInvestigation: boolean; maxPlanIterations: number; maxStepNum: number; maxSearchResults: number; reportStyle: "academic" | ... 2 more ... | "social_media"; }; mcp: { ...; }; }' has no properties in common with type 'StateCreator<SettingsState, [], []>'.
  • error TS2559: Type '(set: { (partial: { responding: boolean; threadId: string | undefined; messageIds: string[]; messages: Map<string, Message>; researchIds: string[]; researchPlanIds: Map<string, string>; ... 9 more ...; setOngoingResearch: (researchId: string | null) => void; } | Partial<...> | ((state: { ...; }) => { ...; } | Partia...' has no properties in common with type 'StateCreator<{ responding: boolean; threadId: string | undefined; messageIds: string[]; messages: Map<string, Message>; researchIds: string[]; researchPlanIds: Map<string, string>; ... 9 more ...; setOngoingResearch: (researchId: string | null) => void; }, [], []>'.

Chocobozzz/PeerTube

5 of 14 projects failed to build with the old tsc and were ignored

packages/types-generator/tsconfig.types.json

packages/tests/tsconfig.json

clash-verge-rev/clash-verge-rev

tsconfig.json

  • error TS2559: Type '(set: (fn: (state: LogStore) => Partial<LogStore>) => void) => { logs: never[]; clearLogs: () => void; appendLog: (log: ILogItem) => void; }' has no properties in common with type 'StateCreator<LogStore, [], []>'.
  • error TS2559: Type '(set: { (partial: GlobalLogStore | Partial<GlobalLogStore> | ((state: GlobalLogStore) => GlobalLogStore | Partial<...>), replace?: false | undefined): void; (state: GlobalLogStore | ((state: GlobalLogStore) => GlobalLogStore), replace: true): void; }) => { ...; }' has no properties in common with type 'StateCreator<GlobalLogStore, [], []>'.

date-fns/date-fns

2 of 4 projects failed to build with the old tsc and were ignored

tsconfig.json

ether/etherpad-lite

admin/tsconfig.json

  • error TS2559: Type '(set: { (partial: StoreState | Partial<StoreState> | ((state: StoreState) => StoreState | Partial<StoreState>), replace?: false | undefined): void; (state: StoreState | ((state: StoreState) => StoreState), replace: true): void; }) => { ...; }' has no properties in common with type 'StateCreator<StoreState, [], []>'.

fastapi/full-stack-fastapi-template

frontend/tsconfig.build.json

frontend/tsconfig.json

github/docs

1 of 2 projects failed to build with the old tsc and were ignored

tsconfig.json

  • error TS2322: Type '(App: AppType<{}>) => (props: AppPropsType<any, {}>) => ReactElement<{ sheet: ServerStyleSheet; }, string | JSXElementConstructor<any>>' is not assignable to type 'Enhancer<AppType<{}>>'.

heyverse/hey

1 of 6 projects failed to build with the old tsc and were ignored

apps/web/tsconfig.json

jquense/yup

1 of 2 projects failed to build with the old tsc and were ignored

tsconfig.json

  • error TS2416: Property 'resolve' in type 'Lazy<T, TContext, TFlags>' is not assignable to the same property in base type 'ISchema<T, TContext, TFlags, undefined>'.
  • error TS2416: Property 'asNestedTest' in type 'Lazy<T, TContext, TFlags>' is not assignable to the same property in base type 'ISchema<T, TContext, TFlags, undefined>'.
  • error TS2322: Type 'this' is not assignable to type 'ISchema<any, TContext, any, any>'.
  • error TS2416: Property 'resolve' in type 'Schema<TType, TContext, TDefault, TFlags>' is not assignable to the same property in base type 'ISchema<TType, TContext, TFlags, TDefault>'.
  • error TS2345: Argument of type 'this' is not assignable to parameter of type 'ISchema<any, any, any, any>'.
  • error TS2416: Property 'asNestedTest' in type 'Schema<TType, TContext, TDefault, TFlags>' is not assignable to the same property in base type 'ISchema<TType, TContext, TFlags, TDefault>'.
  • error TS2344: Type 'this' does not satisfy the constraint 'ISchema<any, any, any, any>'.
  • error TS2345: Argument of type 'ConditionBuilder<this>' is not assignable to parameter of type 'ConditionBuilder<ISchema<any, any, any, any>>'.
  • error TS2345: Argument of type 'ConditionConfig<this>' is not assignable to parameter of type 'ConditionConfig<ISchema<any, any, any, any>>'.

karakeep-app/karakeep

apps/web/tsconfig.json

  • error TS2559: Type '(set: (partial: BookmarkState | Partial<BookmarkState> | ((state: BookmarkState) => BookmarkState | Partial<BookmarkState>), replace?: boolean | undefined) => void, get: () => BookmarkState) => { ...; }' has no properties in common with type 'StateCreator<BookmarkState, [], []>'.
  • error TS2559: Type '(set: (partial: TagState | Partial<TagState> | ((state: TagState) => TagState | Partial<TagState>), replace?: boolean | undefined) => void, get: () => TagState) => { ...; }' has no properties in common with type 'StateCreator<TagState, [], []>'.
  • error TS2559: Type '(set: (partial: SortOrderState | Partial<SortOrderState> | ((state: SortOrderState) => SortOrderState | Partial<...>), replace?: boolean | undefined) => void) => { ...; }' has no properties in common with type 'StateCreator<SortOrderState, [], []>'.

apps/mobile/tsconfig.json

  • error TS2559: Type '(set: (partial: AppSettingsState | Partial<AppSettingsState> | ((state: AppSettingsState) => AppSettingsState | Partial<...>), replace?: boolean | undefined) => void, get: () => AppSettingsState) => { ...; }' has no properties in common with type 'StateCreator<AppSettingsState, [], []>'.

kortix-ai/suna

frontend/tsconfig.json

  • error TS2559: Type '(set: { (partial: AnnouncementStore | Partial<AnnouncementStore> | ((state: AnnouncementStore) => AnnouncementStore | Partial<...>), replace?: false): void; (state: AnnouncementStore | ((state: AnnouncementStore) => AnnouncementStore), replace: true): void; }, get: () => AnnouncementStore) => { ...; }' has no properties in common with type 'StateCreator<AnnouncementStore, [["zustand/persist", unknown]], []>'.
  • error TS2559: Type '(set: { (partial: FeatureAlertStore | Partial<FeatureAlertStore> | ((state: FeatureAlertStore) => FeatureAlertStore | Partial<...>), replace?: false): void; (state: FeatureAlertStore | ((state: FeatureAlertStore) => FeatureAlertStore), replace: true): void; }, get: () => FeatureAlertStore) => { ...; }' has no properties in common with type 'StateCreator<FeatureAlertStore, [["zustand/persist", unknown]], []>'.
  • error TS2559: Type '(set: { (partial: ModalStore | Partial<ModalStore> | ((state: ModalStore) => ModalStore | Partial<ModalStore>), replace?: false): void; (state: ModalStore | ((state: ModalStore) => ModalStore), replace: true): void; }) => { ...; }' has no properties in common with type 'StateCreator<ModalStore, [], []>'.

microsoft/vscode

6 of 60 projects failed to build with the old tsc and were ignored

src/tsconfig.tsec.json

  • error TS2559: Type '(path: string, basename?: string | undefined) => boolean' has no properties in common with type 'ParsedPattern & { allBasenames?: string[] | undefined; allPaths?: string[] | undefined; }'.

src/tsconfig.monaco.json

  • error TS2559: Type '(path: string, basename?: string | undefined) => boolean' has no properties in common with type 'ParsedPattern & { allBasenames?: string[] | undefined; allPaths?: string[] | undefined; }'.

build/checker/tsconfig.worker.json

  • error TS2559: Type '(path: string, basename?: string | undefined) => boolean' has no properties in common with type 'ParsedPattern & { allBasenames?: string[] | undefined; allPaths?: string[] | undefined; }'.

build/checker/tsconfig.electron-utility.json

  • error TS2559: Type '(path: string, basename?: string | undefined) => boolean' has no properties in common with type 'ParsedPattern & { allBasenames?: string[] | undefined; allPaths?: string[] | undefined; }'.

build/checker/tsconfig.electron-main.json

  • error TS2559: Type '(path: string, basename?: string | undefined) => boolean' has no properties in common with type 'ParsedPattern & { allBasenames?: string[] | undefined; allPaths?: string[] | undefined; }'.

build/checker/tsconfig.electron-browser.json

  • error TS2559: Type '(path: string, basename?: string | undefined) => boolean' has no properties in common with type 'ParsedPattern & { allBasenames?: string[] | undefined; allPaths?: string[] | undefined; }'.

mswjs/msw

13 of 16 projects failed to build with the old tsc and were ignored

src/tsconfig.core.build.json

  • error TS2559: Type '<EventName extends keyof Events>(eventName: EventName, ...data: Events[EventName]) => boolean' has no properties in common with type '(<EventName extends keyof Events>(eventName: EventName, ...data: Events[EventName]) => boolean) & { _isPiped?: boolean | undefined; }'.

src/browser/tsconfig.browser.build.json

mui/material-ui

21 of 85 projects failed to build with the old tsc and were ignored

test/tsconfig.json

packages/mui-system/tsconfig.json

packages/mui-material-nextjs/tsconfig.json

packages/mui-material/tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/typographyVariants.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/themeGetCssVar.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/themeCustomNode.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/themeCssVariables.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/themeComponents.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/textFieldCustomProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/tabsCustomProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/tableCellCustomProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/systemTheme.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/styleOverridesCallback.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/reponsiveFontSizes.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/progressProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/paletteColors.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/gridLegacyCustomBreakpoints.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/gridCustomBreakpoints.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/formHelperTextCustomProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/createTheme.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/buttonCustomProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/breakpointsOverrides.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/badgeCustomProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/autocompleteCustomSlotProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/appBarProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/alertCustomSlotProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/TooltipSlotSxProps.tsconfig.json

packages/mui-material/test/typescript/moduleAugmentation/InputLabelCustomProps.tsconfig.json

packages/mui-lab/tsconfig.json

packages/mui-joy/tsconfig.json

packages/mui-icons-material/tsconfig.json

packages/mui-docs/tsconfig.json

docs/tsconfig.json

docs/scripts/tsconfig.json

packages/mui-material-nextjs/tsconfig.build.json

packages/mui-joy/tsconfig.build.json

omnivore-app/omnivore

4 of 25 projects failed to build with the old tsc and were ignored

packages/web/tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

piotrwitek/react-redux-typescript-guide

playground/tsconfig.test.json

playground/tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

pmndrs/zustand

tsconfig.json

examples/starter/tsconfig.json

  • error TS2559: Type '(set: { (partial: Store | Partial<Store> | ((state: Store) => Store | Partial<Store>), replace?: false | undefined): void; (state: Store | ((state: Store) => Store), replace: true): void; }) => { ...; }' has no properties in common with type 'StateCreator<Store, [], []>'.

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

react-native-maps/react-native-maps

1 of 4 projects failed to build with the old tsc and were ignored

plugin/tsconfig.json

  • error TS2559: Type '(conf: ExportedConfigWithProps<AndroidManifest>) => Promise<ExportedConfigWithProps<AndroidManifest>>' has no properties in common with type 'Mod<AndroidManifest>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<InfoPlist>) => Promise<ExportedConfigWithProps<InfoPlist>>' has no properties in common with type 'Mod<InfoPlist>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<PodfileProjectFile>) => Promise<ExportedConfigWithProps<PodfileProjectFile>>' has no properties in common with type 'Mod<PodfileProjectFile>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<AppDelegateProjectFile>) => ExportedConfigWithProps<AppDelegateProjectFile>' has no properties in common with type 'Mod<AppDelegateProjectFile>'.

tsconfig.json

  • error TS2559: Type '(conf: ExportedConfigWithProps<AndroidManifest>) => Promise<ExportedConfigWithProps<AndroidManifest>>' has no properties in common with type 'Mod<AndroidManifest>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<InfoPlist>) => Promise<ExportedConfigWithProps<InfoPlist>>' has no properties in common with type 'Mod<InfoPlist>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<PodfileProjectFile>) => Promise<ExportedConfigWithProps<PodfileProjectFile>>' has no properties in common with type 'Mod<PodfileProjectFile>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<AppDelegateProjectFile>) => ExportedConfigWithProps<AppDelegateProjectFile>' has no properties in common with type 'Mod<AppDelegateProjectFile>'.

tsconfig.build.json

  • error TS2559: Type '(conf: ExportedConfigWithProps<AndroidManifest>) => Promise<ExportedConfigWithProps<AndroidManifest>>' has no properties in common with type 'Mod<AndroidManifest>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<InfoPlist>) => Promise<ExportedConfigWithProps<InfoPlist>>' has no properties in common with type 'Mod<InfoPlist>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<PodfileProjectFile>) => Promise<ExportedConfigWithProps<PodfileProjectFile>>' has no properties in common with type 'Mod<PodfileProjectFile>'.
  • error TS2559: Type '(conf: ExportedConfigWithProps<AppDelegateProjectFile>) => ExportedConfigWithProps<AppDelegateProjectFile>' has no properties in common with type 'Mod<AppDelegateProjectFile>'.

reduxjs/react-redux

1 of 3 projects failed to build with the old tsc and were ignored

tsconfig.json

reduxjs/redux

2 of 4 projects failed to build with the old tsc and were ignored

tsconfig.json

reduxjs/reselect

type-tests/tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

rjsf-team/react-jsonschema-form

2 of 20 projects failed to build with the old tsc and were ignored

packages/validator-ajv8/tsconfig.build.json

packages/shadcn/tsconfig.build.json

packages/semantic-ui/tsconfig.build.json

packages/react-bootstrap/tsconfig.build.json

packages/primereact/tsconfig.build.json

packages/mui/tsconfig.build.json

packages/fluentui-rc/tsconfig.build.json

packages/daisyui/tsconfig.build.json

packages/core/tsconfig.build.json

packages/chakra-ui/tsconfig.build.json

packages/antd/tsconfig.build.json

@typescript-bot
Copy link
Collaborator

@jakebailey Here are some more interesting changes from running the top 400 repos suite

Details

RSSNext/Folo

5 of 19 projects failed to build with the old tsc and were ignored

packages/internal/components/tsconfig.json

  • error TS2322: Type '{ children: ReactNode | MotionValue<number> | MotionValue<string>; ref: ((((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)) | RefObject<...>) & (RefObject<...> | ((instance: HTMLButtonElement | null) => void | (() => VoidOrUndefinedOnly)))) | null | undefined; ... 346 more ...; "data-frame...' is not assignable to type 'IntrinsicAttributes & Omit<HTMLMotionProps<"button">, "ref"> & RefAttributes<HTMLButtonElement>'.

TanStack/query

78 of 118 projects failed to build with the old tsc and were ignored

tsconfig.json

packages/svelte-query-devtools/tsconfig.json

packages/solid-query-devtools/tsconfig.prod.json

packages/solid-query-devtools/tsconfig.json

packages/react-query-devtools/tsconfig.legacy.json

packages/react-query-devtools/tsconfig.json

packages/query-devtools/tsconfig.prod.json

packages/angular-query-persist-client/tsconfig.json

packages/angular-query-devtools-experimental/tsconfig.json

vercel/vercel

131 of 161 projects failed to build with the old tsc and were ignored

packages/next/test/unit/fixtures/04-edge-function-i18n/tsconfig.json

packages/next/test/unit/fixtures/02-edge-function-basepath/tsconfig.json

packages/next/test/fixtures/00-legacy-mono-repo-server-mode/packages/nextjs/tsconfig.json

vuetifyjs/vuetify

3 of 7 projects failed to build with the old tsc and were ignored

packages/vuetify/tsconfig.json

packages/vuetify/tsconfig.dist.json

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
For Backlog Bug PRs that fix a backlog bug
Projects
Status: Not started
Development

Successfully merging this pull request may close these issues.

Weak type not rejected when intersected with ThisType
3 participants