Commit graph

325 commits

Author SHA1 Message Date
Evans Hauser
cdf4c6860d
apollo-server-core: fix error printing and logging tests 2018-05-11 15:53:15 -07:00
Evans Hauser
8fdbfcd8c8
apollo-server-core: remove unused function printStackTrace 2018-05-11 15:53:15 -07:00
Evans Hauser
52b6f761f6
apollo-server-core: Add changelog 2018-05-11 15:53:15 -07:00
Evans Hauser
6b2e600a97
apollo-server-core: remove stack traces print and include response in logging function 2018-05-11 15:53:15 -07:00
Evans Hauser
1e78646440
apollo-server-core: add changelog with mock 2018-05-11 15:53:15 -07:00
Evans Hauser
ce7d72caab
apollo-server-core: add mocks 2018-05-11 15:53:15 -07:00
James Baxley
68dec79529
clean up and move pieces around 2018-05-11 15:53:14 -07:00
Evans Hauser
7b25a90a7e
apollo-server: add message, location, and path to formatError 2018-05-11 15:53:14 -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
cb09fef524
Errors: latest codes and add exports to the apollo-server package 2018-05-11 15:53:10 -07:00
Evans Hauser
35a5858125
errors: change INTERNAL_ERROR to INTERNAL_SERVER_ERROR, matching http errors 2018-05-11 15:53:09 -07:00
James Baxley
44a54123f9
use canary version 2018-05-11 15:53:08 -07:00
James Baxley
bdabe6259b
fix odd case in error handling 2018-05-11 15:53:08 -07:00
Evans Hauser
0e68e2ec4f
errors: send stack in debug, codes, make ApolloErrors 2018-05-11 15:53:07 -07:00
David Glasser
b32e89c060 v1.3.6 2018-04-24 11:35:14 -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
Renovate Bot
591b0f2cae chore(deps): update dependency typescript to v2.8.3 2018-04-20 10:02:15 +00:00
Jesse Rosenberger
9d0e7b6866
v1.3.5 2018-04-18 16:10:04 +03: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
Jesse Rosenberger
0a103ef5bd
Stop violating types by returning assertions from Mocha tests. (#972)
This change was introduced by the changes in apollographql/apollo-server#802
but first showed its head in apollographql/apollo-server#908.  The reason that
violations in new type definitions aren't being found until subsequent PRs
isn't entirely clear but, ignoring that CI-related annoyance, the problem
itself here is very concrete.

It traces back to a major version update to `@types/mocha` via [Exhibit A],
which makes it unacceptable to return anything besides a `Promise` or
_nothing_ from a Mocha test factory.

I agree with this change in principle, since generally speaking there can be
multiple `expect` statements in each test and there is no particular reason
that the last one's value should be getting returned as Mocha doesn't do
anything functional with it.

More than anything, this seems like an artifact of an ESLint rule which
mandated that the last value in a function be returned, à la CoffeeScript or
other languages.

This will fix the failing tests on apollographql/apollo-server#908 and other
PRs currently in-flight.

Exhibit A: https://github.com/DefinitelyTyped/DefinitelyTyped/pull/24301
2018-04-18 15:37:47 +03:00
Jesse Rosenberger
4cbaf4652d
Prettier for one change in #919. 2018-04-18 15:18:30 +03:00
Jamie Talbot
f387a1c824 Tighter context typing for GraphQLServerOptions (#919) 2018-04-18 14:16:45 +03:00
David Glasser
bd2504e04b v1.3.4 2018-03-28 13:57:11 -07:00
David Glasser
7d1165f1e0
All: allow cacheControl: {defaultMaxAge: 5}. (#922) 2018-03-28 13:56:22 -07:00
Renovate Bot
ebf892f8cc chore(deps): update dependency typescript to v2.8.1 2018-03-28 09:01:57 +00:00
Renovate Bot
273d5349b4 chore(deps): update dependency @types/graphql to v0.12.7 2018-03-28 07:03:40 +00:00
David Glasser
0f7c1c53b4
Update CHANGELOG for all releases back to v1.1.3 (#915)
There were many missing releases and bullet points as well as inaccurate
ones. For example, it was impossible to figure out that users of Hapi 16 who
want to use Apollo Cache Control needed to use precisely version 1.2.0 of
apollo-server-hapi (which wasn't even mentioned).

Link to CHANGELOG from all READMEs. Add READMEs for the graphql-server-*
packages. Add an explanation of our versioning system to the top of
CHANGELOG.md.
2018-03-27 09:22:13 -07:00
Jesse Rosenberger
19d04ff7f7
v1.3.3 2018-03-26 17:20:44 +03:00
Renovate Bot
a4e2e3e893 chore(deps): update dependency @types/graphql to v0.12.6 2018-03-23 07:02:17 +00:00
renovate[bot]
5eae20e92f chore(deps): update dependency @types/graphql to v0.12.5 (#887) 2018-03-16 14:06:15 +02:00
Renovate Bot
d50b6b6fb2 chore(deps): update dependency graphql to v0.13.1 2018-03-13 16:01:14 +00:00
Sashko Stubailo
281392c3f0 Update to graphql@0.12 (#726)
* Update peer deps and tests for 0.12
* v1.3.2
2018-03-13 17:10:37 +02: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
Renovate Bot
15202a7f4b chore(deps): update dependency typescript to v2.7.2 2018-02-16 08:00:58 +00:00
Renovate Bot
a2ebf00cb4 chore(deps): update dependency typescript to v2.7.1 2018-02-01 08:01:38 +00:00
Renovate Bot
b370a0c3c3 chore(deps): update dependency @types/fibers to v0.0.30 2018-01-19 10:01:21 +00: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
Dom Armstrong
a8ae9042f5 Fix apollo-server-core runQuery breaks async_hook tracking (#733)
By creating a promise out of the execution flow the ability to trace the
async call stack is lost.
2017-12-22 05:46:02 +01:00
Martijn Walraven
6685ecb458 v1.3.1 2017-12-18 07:34:48 +01:00
Martijn Walraven
4b8f3b258e Fix execution with graphql-js 0.12.x
This fixes executing a query if all fields it encounters have synchronous resolvers, for which behavior changed in 0.12.x due to graphql/graphql-js#1115.

Closes #718, closes #720
2017-12-18 07:24:33 +01:00
Renovate Bot
0c439cb35f chore(deps): update dependency @types/graphql to v0.11.7 2017-12-12 20:31:42 +00:00
Martijn Walraven
9ba34306ed v1.3.0 2017-12-12 09:45:49 +01:00
Sashko Stubailo
93f052352c
Docs improvements (#692)
* Freshen up title page

* Improve homepage further

* File a PR!

* Try adding express README to sidebar

* Add READMEs to docs

* Add example page, overhaul setup

* More stuff

* Fix all old URLs

* Eliminate all mentions of graphql-server

* Fix azure functions shit
2017-12-11 23:11:11 -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
renovate[bot]
384bb87234 chore(deps): pin dependencies 2017-12-11 19:19:07 +00:00
Evgeni Razumov
10bf6433aa Add support for Adonis framework (#676) 2017-12-04 10:44:17 +01:00
Martijn Walraven
3fecfcd321 v1.2.0 2017-10-24 09:14:51 -07:00
Martijn Walraven
65a642506d v1.2.0-pre.1 2017-10-24 09:09:08 -07:00
Martijn Walraven
818ddfa3bd Add support for Apollo Cache Control 2017-10-24 09:09:08 -07:00