You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
import jester, json
routes:
get "/":
var jsonResp = $(%*{"id": 2})
resp Http200, jsonResp
It compiles and gets the expected output.
Now if I split this into two files:
main.nim
import jester
import api
routes:
extend apiv1, "/api/v1"
and api.nim ( in the same folder)
import jester, json
router apiv1:
get "/":
var jsonResp = %*{"id": 2}
echo jsonResp
resp Http200, "hello"
Then it doesn't compile. The errors are:
jester.nim(1277, 9) Hint: Asynchronous route: apiv1. [User]
jester.nim(797, 9) Hint: 'settings' is declared but not used [XDeclaredButNotUsed]
jester.nim(1307, 26) Hint: 'apiv1ErrorHandler' is declared but not used [XDeclaredButNotUsed]
jester.nim(1280, 7) Hint: 'apiv1' is declared but not used [XDeclaredButNotUsed]
jester.nim(1277, 9) Hint: Asynchronous route: match. [User]
jester.nim(1283, 35) template/generic instantiation of `async` from here
/server/src/api.nim(5, 20) Error: undeclared identifier: '%*'
The text was updated successfully, but these errors were encountered:
Did you try to access localhost:5000/api/v1 ? In my case it worked with the extra / at the end only. So if you do localhost:5000/api/v1/ you might get that response
What is more frustrating is that the error reported under Nim1.6.2 may no longer be "error: unknown identifier:", but become a more puzzling "error: unhandled exception: index 12 not in 0.. 11 [indexdefect]". When I first encountered this problem, I even began to doubt the reliability of Nim language. Fortunately, I finally found that the problem lies in import through compiling Nim1.4.9 myself. Now I think the only feasible way is to use include instead of import for extended routes module.
In addition, the following questions may be relevant: #178
OS: Mac
Nimble:
If I have all code in a single file:
It compiles and gets the expected output.
Now if I split this into two files:
main.nim
and
api.nim
( in the same folder)Then it doesn't compile. The errors are:
The text was updated successfully, but these errors were encountered: