Skip to content

v16 RelayFieldLogger not available in @types/relay-runtime #4666

@danielob

Description

@danielob

In version 16, requiredFieldLogger was renamed to relayFieldLogger. (Commit link)

We are utilizing the latest versions of all relevant packages (react-relay, relay-runtime, @types/relay-runtime):

yarn list v1.22.19
warning Filtering by arguments is deprecated. Please use the pattern option instead.
├─ @types/[email protected]
├─ @types/[email protected]
├─ [email protected]
├─ [email protected]
└─ [email protected]

However, upon inspecting the type definitions in @types/relay-runtime, it appears that the naming has not been updated, causing issues when passing the logger into the relay environment. To address this, we've implemented a workaround as follows:

import { requiredFieldLogger } from 'path/to/our/logger';

const environment = new Environment({
    network,
    store,
    requiredFieldLogger, // required by the definition of EnvironmentConfig in @types/relay-runtime
    // @ts-ignore
    relayFieldLogger: requiredFieldLogger, // without this, we encounter a runtime error 
});

While some discussions mention similar issues with outdated type definitions (link), they do not directly impact us.

Is there any plan to update the type definitions for version 16? If not, what would be the recommended path for contributing changes to the DefinitelyTyped repository?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions