-
Notifications
You must be signed in to change notification settings - Fork 107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Type issue after updating to v8.4.0 #797
Comments
This feels like it's a bug in TypeScript actually. You can get the correct behavior by splitting the code into two statements: const query = aql`FOR u in User FILTER ${name} == u.name RETURN u`; // type: GeneratedAqlQuery<any>
const results = await db.query(query); // type: ArrayCursor<any> I'm investigating what is triggering this unexpected behavior in TypeScript. |
With the help of @nikhil-varma we found multiple ways to force the intended behavior:
We went with the fourth solution as it forces the intended behavior without requiring major changes to the code or impacting backwards compatibility. |
Thank you @pluma4345 & @nikhil-varma - @hasithaweerasinghe is off today and back Monday, so will try these fixes then and report back. |
Hey everyone,
I hope you're doing well. I've recently encountered a type-related issue after updating ArangoJS from version 8.0.0 to 8.4.0 in our project. This issue pertains to the changes in type definitions that seem to have caused a regression in some core functionalities.
The return type of the above database query has been updated to (8.4.0)
Promise<ArrayCursor<undefined>>
, whereas in version 8.0.0, it wasPromise<ArrayCursor<any>>
. Although it is possible to specify a type for the AQL string handler, it appears that the default type ofany
is no longer functioning as expected.export declare function aql<T = any>(templateStrings: TemplateStringsArray, ...args: AqlValue[]): GeneratedAqlQuery<T>;
Following image shows the VScode intellisense types:
Thanks in advance!
The text was updated successfully, but these errors were encountered: