Skip to content

Add GraphQL API for managing rooms#399

Merged
johnshaughnessy merged 140 commits into
masterfrom
feature/graphql-2
Dec 14, 2020
Merged

Add GraphQL API for managing rooms#399
johnshaughnessy merged 140 commits into
masterfrom
feature/graphql-2

Conversation

@johnshaughnessy

@johnshaughnessy johnshaughnessy commented Jul 30, 2020

Copy link
Copy Markdown
Contributor

Adds a GraphQL API for querying/updating rooms.

image

Notes:

  • Would like to use same API over websockets.
  • Would like to add subscriptions action type.
  • Absinthe errors don't follow the graphql spec correctly -- we should be ready to upgrade or handle this ourselves: see absinthe issue 925 in their github repo.
  • The router does not use :secure_headers for the graphiql endpoint so that the CSP doesn't block jsdelivr. Would like to solve this a better way.
  • Would like add rate/complexity limiting
  • We can optionally update phoenix to get liveview, which will make adding absinthe metrics (via :telemetry) easier: Add Phoenix Live Dashboard with Absinthe metrics #404

This parameter affects existing API calls.
While I do not think it will cause any issues, I am removing
it for now because I want the changes to be isolated to the
new API as much as possible. I'd be happy to reintroduce this
later as-is, or before release if it targets this API specifically.
defmodule RoomQueryTest do
@moduledoc """
Test absinthe queries on rooms
"""

@johnshaughnessy johnshaughnessy Nov 17, 2020

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@johnshaughnessy johnshaughnessy merged commit b80f8c9 into master Dec 14, 2020
@johnshaughnessy johnshaughnessy deleted the feature/graphql-2 branch December 14, 2020 20:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants