Closed as not planned
Description
Before You File a Proposal Please Confirm You Have Done The Following...
- I have searched for related issues and found none that match my proposal.
- I have searched the current rule list and found no rules that match my proposal.
- I have read the FAQ and my problem is not listed.
My proposal is suitable for this project
- I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal).
Link to the rule's documentation
https://typescript-eslint.io/rules/no-floating-promises/
Description
Fastify.reply object has then
method, but reply is not a Promise and its methods are not asynchronous
typescript-eslint marks each method of the reply
object as asynchronous and requires it to be preceded by an await
call
Fail
import { FastifyReply, FastifyRequest } from 'fastify';
function setNotFound(req: FastifyRequest, res: FastifyReply, done: HookHandlerDoneFunction): void {
res.status(404);
res.send('Not found');
done();
}
Pass
import { FastifyReply, FastifyRequest } from 'fastify';
function setNotFound(req: FastifyRequest, res: FastifyReply, done: HookHandlerDoneFunction): void {
void res.status(404);
void res.send('Not found');
done();
}
Additional Info
The plugin should look at what the object's method returns, and not just whether the object has a then
method.
Or it is necessary to configure the rule to be able to exclude this object/methods from consideration by this rule