Skip to content

QN: Replace GQL Playground #5221

@traumschule

Description

@traumschule

Joystream uses an outdated version of Graphql.

The GraphQL Playground deployed by the QN graphql container hasn't had a release since 2019.

Versions

../joystream/query-node/codegen/yarn.lock: type-graphql "^1.1.1"

../joystream/query-node/codegen/node_modules/type-graphql/package.json: "@apollo/federation": "^0.20.4",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "@apollo/gateway": "^0.21.0",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "apollo-cache-control": "^0.11.3",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "apollo-server": "^2.18.1",

../joystream/query-node/codegen/node_modules/type-graphql/package.json: "graphql": "^15.3.0"
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "graphql-query-complexity": "^0.7.0",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "graphql-redis-subscriptions": "^2.3.1",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "graphql-tag": "^2.11.0",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "graphql-subscriptions": "^1.1.0",
../joystream/query-node/codegen/node_modules/type-graphql/package.json: "@graphql-modules/core": "^0.7.17",

Alternatives

Why Graphql?

Tooltip regression

The editor has a visual bug that prevents tooltips from disappearing. User can remove them manually or operators can patch the modules themselves (ref graphql/graphql-playground#1429).

document.querySelectorAll('.CodeMirror-hint-information').forEach(node => node.remove());

Reason:

Mutation Events, including DOMSubtreeModified, DOMNodeInserted, DOMNodeRemoved, DOMNodeRemovedFromDocument, DOMNodeInsertedIntoDocument, and DOMCharacterDataModified, are quite bad for page performance, and also significantly increase the complexity of adding new features to the Web. These APIs were deprecated from the spec ( ) in 2011, and were replaced (in 2012) by the much better-behaved Mutation Observer API. Usage of the obsolete Mutation Events must now be migrated to Mutation Observer.
Mutation event support will be disabled by default starting in Chrome 127, around July 30, 2024. Code should be migrated before that date to avoid site breakage.

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