Unhandled Promise Rejection
See original GitHub issueI edited the example from the readme to wrap https://github.com/RubenVerborgh/LDflex#looking-up-data-on-the-web in a try-catch, and change the domain name to a non-existing one ending in .orgz
:
const { PathFactory } = require('ldflex');
const { default: ComunicaEngine } = require('ldflex-comunica');
const { namedNode } = require('@rdfjs/data-model');
const profileDoc = 'https://ruben.verborgh.orgz/profile/';
const webId = `${profileDoc}#me`;
// The JSON-LD context for resolving properties
const context = {
"@context": {
"@vocab": "http://xmlns.com/foaf/0.1/",
"friends": "knows",
"label": "http://www.w3.org/2000/01/rdf-schema#label",
}
};
// The query engine and its source
const queryEngine = new ComunicaEngine(profileDoc);
// The object that can create new paths
const path = new PathFactory({ context, queryEngine });
async function showPerson(person) {
console.log(`This person is ${await person.name}`);
console.log(`${await person.givenName} is interested in:`);
for await (const name of person.interest.label)
console.log(`- ${name}`);
console.log(`${await person.givenName} is friends with:`);
for await (const name of person.friends.givenName)
console.log(`- ${name}`);
}
(async () => {
try {
const ruben = path.create({ subject: namedNode(webId) });
await showPerson(ruben);
} catch(e) {
console.error(e);
}
console.log('success');
})();
The result is as follows:
(node:3188) UnhandledPromiseRejectionWarning: FetchError: request to https://ruben.verborgh.orgz/profile/ failed, reason: getaddrinfo ENOTFOUND ruben.verborgh.orgz
at ClientRequest.<anonymous> (/Users/michiel/gh/solid/query-ldflex/node_modules/node-fetch/index.js:133:11)
at ClientRequest.emit (events.js:203:13)
at TLSSocket.socketErrorListener (_http_client.js:399:9)
at TLSSocket.emit (events.js:203:13)
at emitErrorNT (internal/streams/destroy.js:91:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
at processTicksAndRejections (internal/process/task_queues.js:77:11)
(node:3188) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 8)
(node:3188) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:3188) PromiseRejectionHandledWarning: Promise rejection was handled asynchronously (rejection id: 8)
(node:3188) UnhandledPromiseRejectionWarning: FetchError: request to https://ruben.verborgh.orgz/profile/ failed, reason: getaddrinfo ENOTFOUND ruben.verborgh.orgz
at ClientRequest.<anonymous> (/Users/michiel/gh/solid/query-ldflex/node_modules/node-fetch/index.js:133:11)
at ClientRequest.emit (events.js:203:13)
at TLSSocket.socketErrorListener (_http_client.js:399:9)
at TLSSocket.emit (events.js:203:13)
at emitErrorNT (internal/streams/destroy.js:91:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
at processTicksAndRejections (internal/process/task_queues.js:77:11)
(node:3188) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 9)
Am I doing something wrong? Could this be related to https://github.com/solid/query-ldflex/issues/30 ? This code works correctly when you change ‘rubenverborgh.orgz’ back to ‘rubenverborgh.org’.
Issue Analytics
- State:
- Created 4 years ago
- Comments:5 (4 by maintainers)
Top Results From Across the Web
What is an unhandled promise rejection? - Stack Overflow
A rejected promise is like an exception that bubbles up towards the application entry point and causes the root error handler to produce...
Read more >Tracking Unhandled Promise Rejections - TrackJS
When a promise is rejected, it looks for a rejection handler. If it finds one, like in the example above, it calls the...
Read more >Handling those unhandled promise rejections with JS async ...
[UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was ......
Read more >Window: unhandledrejection event - Web APIs | MDN
The unhandledrejection event is sent to the global scope of a script when a JavaScript Promise that has no rejection handler is rejected; ......
Read more >Unhandled Promise Rejection Warning - Codecademy Forums
The unhandledRejection event is emitted whenever a promise rejection is not handled. “Rejection” is the canonical term for a promise reporting ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Upon closer inspection, this issue is indeed a duplicate of https://github.com/solid/query-ldflex/issues/30. The root cause is https://github.com/comunica/comunica/issues/565.
Should be fixed in Comunica 1.14.0