The warp web framework has been a constant source of frustration and problems due to it's design and private types.
Currently, trying to implement the editor logic requires additional virtual hosts and warp cannot handle virtual hosts very well. After some experimentation with actix it looks like it can handle multiple virtual hosts defined at runtime quite well.
There is a lot of work involved with this change:
[x] Support static file servers
[x] Support virtual hosts
[x] Support SSL certificates
[x] Disable static file caching
[x] Support webdav server
[x] Support ephemeral port when checking virtual hosts
[x] Support live reload rendering (SSR)
[x] Support websocket channel for live reload broadcast
[x] Support redirecting from HTTP to HTTPS when SSL is enabled
[x] Support redirecting folders to use a trailing slash
[x] Support handling project redirects
[x] Support additional host authorities for LAN testing
[x] Support dropping privileges from root user
[x] Graceful shutdown for the test runner
[x] Support logging flag
[x] Set server header
[x] Set default security headers
[x] Support loading redirects from redirects.json for release builds
[x] Support default service page - list available virtual hosts with links etc.
[ ] Restore CORS headers
[x] Restore virtual host 404 page handling
[x] Show 500 internal server error on live render compiler error
The warp web framework has been a constant source of frustration and problems due to it's design and private types.
Currently, trying to implement the editor logic requires additional virtual hosts and warp cannot handle virtual hosts very well. After some experimentation with
actix
it looks like it can handle multiple virtual hosts defined at runtime quite well.There is a lot of work involved with this change:
redirects.json
for release buildseditor
commandserver
commandtest
commanddocs
commanddev
command