Commit graph

20 commits

Author SHA1 Message Date
Evans Hauser
acae63cd4b
apollo-server-core: remove Promise wrapping in async function return values 2018-05-11 15:54:21 -07:00
Evans Hauser
8fe51be3ef
apollo-server-core: add warning to options creation failure if debugDefault enabled 2018-05-11 15:54:21 -07:00
Evans Hauser
0fe53a68da
apollo-server-core: capture context creation failure in GraphQL error 2018-05-11 15:53:18 -07:00
Evans Hauser
5aeb36f3d7
apollo-server-core: allow creation of context to be asynchronous 2018-05-11 15:53:17 -07:00
Evans Hauser
75e661e9b2
apollo-server-core: stronger typing on context in GraphQLServerOptions as a function 2018-05-11 15:53:17 -07:00
Evans Hauser
a7772a01fb
apollo-server-core: wrap error thrown by context construction in apollo error to add code 2018-05-11 15:53:17 -07:00
Evans Hauser
2a510039ec
apollo-server-core: internalFormatError to formatApolloError 2018-05-11 15:53:16 -07:00
Evans Hauser
d88100aca8
errors: change formatError to internalFormatError and fix when user defines formatError 2018-05-11 15:53:10 -07:00
Evans Hauser
0e68e2ec4f
errors: send stack in debug, codes, make ApolloErrors 2018-05-11 15:53:07 -07:00
David Glasser
e2df79d06c core: return PersistedQueryNotSupported for Apollo Persisted Queries (#982)
Apollo Persisted Queries is a standard for sending queries as short hashes
instead of full strings, designed to work well with GET requests. It is
implemented by servers including the Apollo Engine Proxy, and by the
apollo-link-persisted-query client.

A common configuration is to set up persisted queries on production servers but
not in development. It is still convenient to leave apollo-link-persisted-query
always on, though. While apollo-link-persisted-query can detect that servers
don't support PQs, it works better if the server actually says it doesn't
support the PQ, instead of trying to process a request without a query and
potentially printing a confusing stack trace.  This commit makes apollo-server
directly return PersistedQueryNotSupported instead of allowing confusing stack
traces to occur.
2018-04-24 06:29:07 -04:00
David Glasser
cbb2b22570 core: fix HttpQueryRequest typing (#834)
This field generally gets used in `any` contexts, so the error didn't cause any compilation failures.
2018-04-18 16:00:44 +03:00
Steve Rice
083a1ee60e Avoid TypeError when querystring is present, but query missing (#964)
The express-graphql reference implementation [provides a check]
(2e27a73358/src/index.js (L201-L208))
to protect against cases where a GET request is made that does not
have a `query` parameter where the GraphQL query would be present.

Without this guard, graphql-js's `parse` will return `undefined`
for the `DocumentNode` since it has no document to read. Subsequently
passing this to `isQueryOperation` results in a `TypeError`, because
we are providing `undefined` where `getOperationAst` [expects to get
a DocumentNode](5fe39262a3/src/utilities/getOperationAST.js (L19)).

A new test file is added for `runHttpQuery`, as one previously did
not seem to exist.
2018-04-18 15:38:57 +03:00
Marvin Hagemeister
9e8984c2ee Inline all possible functions that are used only once (#821)
* Inline isFunction type-guard

* Don't redefine functions on doRunQuery

* Update CHANGELOG
2018-03-12 21:25:12 +02:00
Laurin Quast
df51fd90da Setup prettier (#724)
* Setup prettier and precommit hooks

* Format code with prettier

* Use husky because it works...

* Move prettier config to .prettierrc file

* Implement fixing markdown file formatting when running lint-fix script

* Format markdown files

* Add .json file formatting

* Fixes json file formatting

* Add pretteir linting step

* Remove tslint

* Use gitignore for prettier

* Fix linting errors

* Ignore submodule folder
2018-01-08 15:08:01 -08:00
Benedict Hobart
62c397eecc Fix shallow cloning of context when executing a batch request (#679)
This fixes the default behavior for class-based contexts by also cloning the prototype, and it allows you to customize per-operation behavior by passing in a function as context.
2017-12-12 08:09:01 +01:00
Evgeni Razumov
10bf6433aa Add support for Adonis framework (#676) 2017-12-04 10:44:17 +01:00
Martijn Walraven
818ddfa3bd Add support for Apollo Cache Control 2017-10-24 09:09:08 -07:00
Martijn Walraven
19e365f044 Add tracing support (#490) 2017-08-09 16:57:17 +02:00
Mikhail Novikov
c51fc65da8 Add ability to provide default field resolvers (#482) 2017-08-02 12:20:10 +02:00
Martijn Walraven
300c0cd12b Rename packages from graphql-server- to apollo-server- (#465) 2017-07-17 16:29:40 -07:00
Renamed from packages/graphql-server-core/src/runHttpQuery.ts (Browse further)