Closed
Description
Current design idea:
- axum is the main entrypoint for requests
- when the route is already migrated to axum, we use it,
- as an axum
fallback
we call the old iron server for the rest
details
- database / storage access will stay sync for now, via
spawn_blocking
(which is the recommended way) - template engine can stay the same
- preferably we don't have to change tests so it's easier to see if behaviour changed.
handler migration status
-
sitemap::sitemapindex_handler
-
sitemap::sitemap_handler
-
sitemap::about_builds_handler
-
statics::static_handler
-
rustdoc::static_asset_handler
-
storage_change_detection
-
build_details::build_details_handler
-
builds::build_list_handler
-
crate_details::crate_details_handler
-
features::build_features_handler
-
metrics::metrics_handler
-
releases::activity_handler
-
releases::build_queue_handler
-
releases::home_page
-
releases::owner_handler
-
releases::recent_releases_handler
-
releases::releases_by_stars_handler
-
releases::releases_failures_by_stars_handler
-
releases::releases_feed_handler
-
releases::releases_recent_failures_handler
-
releases::search_handler
-
rustdoc::badge_handler
-
rustdoc::download_handler
-
rustdoc::rustdoc_html_server_handler
-
rustdoc::rustdoc_redirector_handler
-
rustdoc::target_redirect_handler
-
sitemap::about_handler
-
source::source_browser_handler
links
- outdated branch with all handlers mostly migrated to axum: master...syphar:docs.rs:new-web-axum ( was used as design experiment, fully working docs)
axum
axum-strangler
as a helper for the migration.
issues resolved when finished:
- RUSTSEC-2019-0039: typemap is Unmaintained #1827
- RUSTSEC-2021-0144: traitobject is Unmaintained #1826
- RUSTSEC-2020-0071: Potential segfault in the time crate #1523
- Gracefully shutdown on signals #1150
issues that we can work on when this is finished:
Metadata
Metadata
Assignees
Labels
No labels