ICTU / quality-time

Software quality monitoring for teams and projects
Apache License 2.0
51 stars 16 forks source link

Use FastAPI instead of Bottle for the internal server #490

Closed Hedde closed 1 year ago

Hedde commented 5 years ago

Replacing Bottle with FastAPI might be an interesting tech improvement, because it will allow us to lift the features of python 3.6+ (e.g. asyncio) and it's type declaration support.

Blocked by #2961.

We're going to remove the internal server altogether. See #5789, #5790, and #5791.

eric-nieuwland commented 5 years ago

You may also want to have a look at Sanic - https://sanic.readthedocs.io

Hedde commented 5 years ago

Ref: https://fastapi.tiangolo.com/alternatives/#sanic

fniessink commented 3 years ago

Assumption: only the collector uses the internal API and there are two endpoints. The collector and notifier also use and keep using the public API (e.g. to get the data model).

New component name: internal-server. The server component name remains unchanged.

The collector needs extra environment variables for the internal API component.

Remove internal/ from the endpoints.

Use FastAPI instead of Bottle.

Update software docs, including components.dot.

Note: This results in a new major version of Quality-time since the composition changes.

Out of scope:

fniessink commented 2 years ago

Blocked by #2960.