In general I appreciate the method of constructing an Interface and a derived Class for modeling rest endpoints. But there were some frictions I had, including:

1) Unable to set/read headers manually since HTTPServer(Request|Response) is not available. E.g. for CORS or manual cache-headers, reading custom headers, branch on Accept header etc.

2) I want to run some code before some endpoints. But @before requires your function to emit a value that gets inserted into the endpoint's function. Current workaround is registering a catch-all route - router.any("*", &doYourStuff);. But that is obviously too much.

3) I have a rest endpoint that needs to return a generated XML file.

4) Proper CORS pre-flight handling.

This makes it impossible for me to use vibe.web.rest.

Is there awareness about these issues? Do I need to post bugs?

I would gladly help with implementing some features.