Comments (20)
Using formatError
as well, is there a way to pass the same error handler when using in testing? (in tests you most of the time query directly using the graphql object to execute the query with the schema.
import {
graphql,
} from 'graphql';
...
let resp = (await graphql(Schema, query, {}, context));
from graphql-js.
This seems to be fixed here: https://github.com/graphql/express-graphql/pull/45/files
graphiql: true,
formatError: (error) => ({
message: error.message,
details: config.isProduction ? null : error.stack
})
from graphql-js.
@bkoltai @alfaproject You can access original errors and their stack traces, like that:
const result = await execute(/* ... */);
if (result.errors) {
result.errors.forEach(err => console.log(err.originalError));
// ...
}
from graphql-js.
👍 Really hard to debug ATM.
from graphql-js.
I have currently the same problem. I'm not quite sure how to test my custom error messages. Or is it better to test the whole express-graphql endpoint for the error messages?
from graphql-js.
Yeah this would be useful. Maybe a dev flag which could be passed to the graphql
function during dev which exposes stack traces as well as error messages?
from graphql-js.
Yeah, I feel this pain as well. I have a broader error handling refactor I need to do that should help this be less painful
from graphql-js.
+1 on this.
from graphql-js.
This is killing me.
from graphql-js.
in error/formatError.js
I've added the line:
stack: error.stack,
to the JSON returned and it has helped tremendously.
from graphql-js.
+1 for this
Thanks for the tip, @johanatan! Lifesaver!
from graphql-js.
+1 good call johanastan
from graphql-js.
Now that #118 has been merged; what's the next step forward here? graphql/express-graphql#4 is closed but to my knowledge this issue is not resolved. How can we help?
from graphql-js.
+1
from graphql-js.
Has anybody patched this with #28 (comment) via @johanatan?
from graphql-js.
+1, also, @johanatan, thanks a lot. I've already made a statue from you
from graphql-js.
+1
from graphql-js.
Closing this since graphql-js no longer formats Errors anymore (the errors
field on the output is a list of the original Error
instances now).
Formatting is still recommended when using over a web endpoint, and express-graphql
does the simple thing by default and allows for customization.
from graphql-js.
Agreed, how do we get a stack trace for the errors reported from using the graphql
function directly, which I'm also doing in tests and get errors from my code with just the message and no trace.
from graphql-js.
Just stumbled upon this issue and not quite sure why is it closed. I only get the error title when invoking with graphql
or execute
...
from graphql-js.
Related Issues (20)
- IHeyReally.org
- Suggestion: Bundling in v17, ESM, CJS, and the dual package hazard HOT 9
- Just to give my 2c, I'm not sure if `exports.development` and `exports.production` target conditionsa are widely supported, so some `import.env` shenanigans may still be necessary until that's widely adopted. HOT 1
- Collection of libraries and how they import from `graphql` HOT 20
- `process.env`, `globalThis`, and `typeof process` HOT 21
- Introspection queries don't support `@oneOf` HOT 2
- Tutorial data HOT 2
- astFromValue fails with a custom scalar serializing to an object value HOT 5
- In a response to a query about an Issue, the URL and other info is missing for links created with Reference editor button HOT 5
- author/committer -> user fields returning NULL for commits committed by user
- [email protected]
- npm link with graphql package breaks application HOT 2
- IHeyReally.com HOT 1
- Can I ask what is the progress here? Is there a solution being worked on? Do we have some timeline? Or progress with issue? Thanks!
- IHeyReally.com
- Typescript error with 16.9.0 (re ThunkObjMap) HOT 3
- Notice: default branch is now `16.x.x` HOT 2
- <a href="https://api.easycla.lfx.linuxfoundation.org/v2/repository-provider/github/sign/12261526/38307428/4135/#/?version=2"><img src="https://s3.amazonaws.com/cla-project-logo-prod/cla-not-signed.svg" alt="CLA Not Signed" align="left" height="28" width="328"></a><br/><br /><ul><li><a href='https://api.easycla.lfx.linuxfoundation.org/v2/repository-provider/github/sign/12261526/38307428/4135/#/?version=2' target='_blank'>:x:</a> - login: @Heyitsquoracom / name: [email protected] . The commit (b6081f914f0c5c22ee48d26aff4b473bf17627ce) is not authorized under a signed CLA. <a href='https://api.easycla.lfx.linuxfoundation.org/v2/repository-provider/github/sign/12261526/38307428/4135/#/?version=2' target='_blank'>Please click here to be authorized</a>. For further assistance with EasyCLA, <a href='https://jira.linuxfoundation.org/servicedesk/customer/portal/4' target='_blank'>please submit a support request ticket</a>.</li></ul><!-- Date Modified: 2024-06-28 04:40:51.630768 -->
- Error with version v16.9.0: `Can't resolve '@apollo/subgraph/dist/directives''` HOT 1
- Type is incorrect in graphql ExecutionResult with new type GraphQLFormattedError HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from graphql-js.