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
Currently environments differ in the exact interface they implement. For example, some environments return a 500 vs. a 400 for an already specialized environment. There are probably other, more subtle differences that we don't know about yet, such as the way headers and query params are handled.
There should be a uniform method for verifying that environments correspond to a specific environment specification, as any variation in the environments can be a root for hard to debug problems, which would require intricate knowledge of the environment implementation details.
Specification should describe endpoints, HTTP methods, errors/codes, how to handle params (body, headers, query), ect. It might be an idea to write a swagger spec as a way to document this specification (although I do not know exactly to what detail Swagger describes the HTTP specification)
As a bonus, with the uniform testing tooling, we could include some simple, automated benchmarking of the environments, to provide some insight in how the environments compare for a similar user-function.
Tl;dr needed:
Write down the, currently implicit, environment spec
Document environment spec in a detailed, non-ambiguous way (e.g. using swagger)
Find or build tooling to test the environments in a language-agnostic way (an approach could be to test against the Docker containers)
Create a uniform test for all languages (e.g. using a simple test function that uses all the main features of the spec such as reading the body, headers and query params).
Currently environments differ in the exact interface they implement. For example, some environments return a 500 vs. a 400 for an already specialized environment. There are probably other, more subtle differences that we don't know about yet, such as the way headers and query params are handled.
There should be a uniform method for verifying that environments correspond to a specific environment specification, as any variation in the environments can be a root for hard to debug problems, which would require intricate knowledge of the environment implementation details.
Specification should describe endpoints, HTTP methods, errors/codes, how to handle params (body, headers, query), ect. It might be an idea to write a swagger spec as a way to document this specification (although I do not know exactly to what detail Swagger describes the HTTP specification)
As a bonus, with the uniform testing tooling, we could include some simple, automated benchmarking of the environments, to provide some insight in how the environments compare for a similar user-function.
Tl;dr needed:
fyi @life1347 @soamvasani
The text was updated successfully, but these errors were encountered: