gitextract_jjluluj_/ ├── .editorconfig ├── .gitattributes ├── .github/ │ ├── CODE_OF_CONDUCT.md │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report.yml │ │ ├── config.yml │ │ ├── doc-problem.yml │ │ ├── feature-request.yml │ │ └── suggestion.yml │ └── workflows/ │ ├── ci.yml │ └── trigger.yaml ├── .gitignore ├── .rustfmt.toml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── benchmarks/ │ ├── Cargo.toml │ ├── src/ │ │ ├── bench.rs │ │ └── routing.rs │ └── static/ │ ├── bitwarden_rs.routes │ └── rust-lang.routes ├── contrib/ │ ├── db_pools/ │ │ ├── README.md │ │ ├── codegen/ │ │ │ ├── Cargo.toml │ │ │ ├── src/ │ │ │ │ ├── database.rs │ │ │ │ └── lib.rs │ │ │ └── tests/ │ │ │ ├── ui-fail/ │ │ │ │ ├── database-syntax.rs │ │ │ │ └── database-types.rs │ │ │ ├── ui-fail-nightly/ │ │ │ │ ├── database-syntax.stderr │ │ │ │ └── database-types.stderr │ │ │ ├── ui-fail-stable/ │ │ │ │ ├── database-syntax.stderr │ │ │ │ └── database-types.stderr │ │ │ └── ui-fail.rs │ │ └── lib/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── config.rs │ │ │ ├── database.rs │ │ │ ├── diesel.rs │ │ │ ├── error.rs │ │ │ ├── lib.rs │ │ │ └── pool.rs │ │ └── tests/ │ │ └── databases.rs │ ├── dyn_templates/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── src/ │ │ │ ├── context.rs │ │ │ ├── engine/ │ │ │ │ ├── handlebars.rs │ │ │ │ ├── minijinja.rs │ │ │ │ ├── mod.rs │ │ │ │ └── tera.rs │ │ │ ├── fairing.rs │ │ │ ├── lib.rs │ │ │ ├── metadata.rs │ │ │ └── template.rs │ │ └── tests/ │ │ ├── templates/ │ │ │ ├── hbs/ │ │ │ │ ├── common/ │ │ │ │ │ ├── footer.html.hbs │ │ │ │ │ └── header.html.hbs │ │ │ │ ├── reload.txt.hbs │ │ │ │ └── test.html.hbs │ │ │ ├── j2/ │ │ │ │ ├── [test]/ │ │ │ │ │ └── html_test.html.j2 │ │ │ │ ├── base.txt.j2 │ │ │ │ ├── html_test.html.j2 │ │ │ │ └── txt_test.txt.j2 │ │ │ └── tera/ │ │ │ ├── [test]/ │ │ │ │ └── html_test.html.tera │ │ │ ├── base.txt.tera │ │ │ ├── html_test.html.tera │ │ │ └── txt_test.txt.tera │ │ └── templates.rs │ ├── sync_db_pools/ │ │ ├── README.md │ │ ├── codegen/ │ │ │ ├── Cargo.toml │ │ │ ├── src/ │ │ │ │ ├── database.rs │ │ │ │ └── lib.rs │ │ │ └── tests/ │ │ │ ├── ui-fail/ │ │ │ │ ├── database-syntax.rs │ │ │ │ └── database-types.rs │ │ │ ├── ui-fail-nightly/ │ │ │ │ ├── database-syntax.stderr │ │ │ │ └── database-types.stderr │ │ │ ├── ui-fail-stable/ │ │ │ │ ├── database-syntax.stderr │ │ │ │ └── database-types.stderr │ │ │ └── ui-fail.rs │ │ └── lib/ │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── src/ │ │ │ ├── config.rs │ │ │ ├── connection.rs │ │ │ ├── error.rs │ │ │ ├── lib.rs │ │ │ └── poolable.rs │ │ └── tests/ │ │ ├── databases.rs │ │ ├── drop-with-connection.rs │ │ └── shutdown.rs │ └── ws/ │ ├── Cargo.toml │ ├── README.md │ └── src/ │ ├── duplex.rs │ ├── lib.rs │ └── websocket.rs ├── core/ │ ├── codegen/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── attribute/ │ │ │ │ ├── async_bound/ │ │ │ │ │ └── mod.rs │ │ │ │ ├── catch/ │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── parse.rs │ │ │ │ ├── entry/ │ │ │ │ │ ├── launch.rs │ │ │ │ │ ├── main.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── test.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── param/ │ │ │ │ │ ├── guard.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── parse.rs │ │ │ │ ├── route/ │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── parse.rs │ │ │ │ └── suppress/ │ │ │ │ ├── lint.rs │ │ │ │ └── mod.rs │ │ │ ├── bang/ │ │ │ │ ├── export.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── test_guide.rs │ │ │ │ ├── typed_stream.rs │ │ │ │ ├── uri.rs │ │ │ │ └── uri_parsing.rs │ │ │ ├── derive/ │ │ │ │ ├── form_field.rs │ │ │ │ ├── from_form.rs │ │ │ │ ├── from_form_field.rs │ │ │ │ ├── from_param.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── responder.rs │ │ │ │ └── uri_display.rs │ │ │ ├── exports.rs │ │ │ ├── http_codegen.rs │ │ │ ├── lib.rs │ │ │ ├── name.rs │ │ │ ├── proc_macro_ext.rs │ │ │ └── syn_ext.rs │ │ └── tests/ │ │ ├── async-entry.rs │ │ ├── async-routes.rs │ │ ├── catcher.rs │ │ ├── expansion.rs │ │ ├── from_form.rs │ │ ├── from_form_field.rs │ │ ├── from_param.rs │ │ ├── responder.rs │ │ ├── route-data.rs │ │ ├── route-format.rs │ │ ├── route-ranking.rs │ │ ├── route-raw.rs │ │ ├── route-uniqueness.rs │ │ ├── route.rs │ │ ├── segment-ignore.rs │ │ ├── typed-uris.rs │ │ ├── ui-fail/ │ │ │ ├── async-entry.rs │ │ │ ├── bad-ignored-segments.rs │ │ │ ├── catch.rs │ │ │ ├── catch_type_errors.rs │ │ │ ├── catchers.rs │ │ │ ├── from_form.rs │ │ │ ├── from_form_field.rs │ │ │ ├── from_form_type_errors.rs │ │ │ ├── from_param.rs │ │ │ ├── responder-types.rs │ │ │ ├── responder.rs │ │ │ ├── route-attribute-general-syntax.rs │ │ │ ├── route-path-bad-syntax.rs │ │ │ ├── route-type-errors.rs │ │ │ ├── route-warnings.rs │ │ │ ├── routes.rs │ │ │ ├── synchronize.sh │ │ │ ├── typed-uri-bad-type.rs │ │ │ ├── typed-uris-bad-params.rs │ │ │ ├── typed-uris-invalid-syntax.rs │ │ │ ├── uri_display.rs │ │ │ └── uri_display_type_errors.rs │ │ ├── ui-fail-nightly/ │ │ │ ├── async-entry.stderr │ │ │ ├── bad-ignored-segments.stderr │ │ │ ├── catch.stderr │ │ │ ├── catch_type_errors.stderr │ │ │ ├── catchers.stderr │ │ │ ├── from_form.stderr │ │ │ ├── from_form_field.stderr │ │ │ ├── from_form_type_errors.stderr │ │ │ ├── from_param.stderr │ │ │ ├── responder-types.stderr │ │ │ ├── responder.stderr │ │ │ ├── route-attribute-general-syntax.stderr │ │ │ ├── route-path-bad-syntax.stderr │ │ │ ├── route-type-errors.stderr │ │ │ ├── route-warnings.stderr │ │ │ ├── routes.stderr │ │ │ ├── typed-uri-bad-type.stderr │ │ │ ├── typed-uris-bad-params.stderr │ │ │ ├── typed-uris-invalid-syntax.stderr │ │ │ ├── uri_display.stderr │ │ │ └── uri_display_type_errors.stderr │ │ ├── ui-fail-stable/ │ │ │ ├── async-entry.stderr │ │ │ ├── bad-ignored-segments.stderr │ │ │ ├── catch.stderr │ │ │ ├── catch_type_errors.stderr │ │ │ ├── catchers.stderr │ │ │ ├── from_form.stderr │ │ │ ├── from_form_field.stderr │ │ │ ├── from_form_type_errors.stderr │ │ │ ├── from_param.stderr │ │ │ ├── responder-types.stderr │ │ │ ├── responder.stderr │ │ │ ├── route-attribute-general-syntax.stderr │ │ │ ├── route-path-bad-syntax.stderr │ │ │ ├── route-type-errors.stderr │ │ │ ├── route-warnings.stderr │ │ │ ├── routes.stderr │ │ │ ├── typed-uri-bad-type.stderr │ │ │ ├── typed-uris-bad-params.stderr │ │ │ ├── typed-uris-invalid-syntax.stderr │ │ │ ├── uri_display.stderr │ │ │ └── uri_display_type_errors.stderr │ │ ├── ui-fail.rs │ │ └── uri_display.rs │ ├── http/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── ext.rs │ │ ├── header/ │ │ │ ├── accept.rs │ │ │ ├── content_type.rs │ │ │ ├── header.rs │ │ │ ├── known_media_types.rs │ │ │ ├── media_type.rs │ │ │ ├── mod.rs │ │ │ └── proxy_proto.rs │ │ ├── lib.rs │ │ ├── method.rs │ │ ├── parse/ │ │ │ ├── accept.rs │ │ │ ├── checkers.rs │ │ │ ├── indexed.rs │ │ │ ├── media_type.rs │ │ │ ├── mod.rs │ │ │ └── uri/ │ │ │ ├── error.rs │ │ │ ├── mod.rs │ │ │ ├── parser.rs │ │ │ ├── spec.txt │ │ │ ├── tables.rs │ │ │ └── tests.rs │ │ ├── raw_str.rs │ │ ├── status.rs │ │ └── uri/ │ │ ├── absolute.rs │ │ ├── asterisk.rs │ │ ├── authority.rs │ │ ├── error.rs │ │ ├── fmt/ │ │ │ ├── encoding.rs │ │ │ ├── formatter.rs │ │ │ ├── from_uri_param.rs │ │ │ ├── mod.rs │ │ │ ├── part.rs │ │ │ └── uri_display.rs │ │ ├── host.rs │ │ ├── mod.rs │ │ ├── origin.rs │ │ ├── path_query.rs │ │ ├── reference.rs │ │ ├── segments.rs │ │ └── uri.rs │ └── lib/ │ ├── Cargo.toml │ ├── build.rs │ ├── fuzz/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── corpus/ │ │ │ ├── collision-matching/ │ │ │ │ ├── another.seed │ │ │ │ ├── base.seed │ │ │ │ ├── complex.seed │ │ │ │ └── large.seed │ │ │ └── uri-parsing/ │ │ │ ├── absolute.seed │ │ │ ├── asterisk.seed │ │ │ ├── authority.seed │ │ │ ├── origin.seed │ │ │ └── reference.seed │ │ └── targets/ │ │ ├── collision-matching.rs │ │ ├── uri-normalization.rs │ │ ├── uri-parsing.rs │ │ └── uri-roundtrip.rs │ ├── src/ │ │ ├── catcher/ │ │ │ ├── catcher.rs │ │ │ ├── handler.rs │ │ │ └── mod.rs │ │ ├── config/ │ │ │ ├── cli_colors.rs │ │ │ ├── config.rs │ │ │ ├── http_header.rs │ │ │ ├── ident.rs │ │ │ ├── mod.rs │ │ │ ├── secret_key.rs │ │ │ └── tests.rs │ │ ├── data/ │ │ │ ├── capped.rs │ │ │ ├── data.rs │ │ │ ├── data_stream.rs │ │ │ ├── from_data.rs │ │ │ ├── io_stream.rs │ │ │ ├── limits.rs │ │ │ ├── mod.rs │ │ │ ├── peekable.rs │ │ │ └── transform.rs │ │ ├── erased.rs │ │ ├── error.rs │ │ ├── fairing/ │ │ │ ├── ad_hoc.rs │ │ │ ├── fairings.rs │ │ │ ├── info_kind.rs │ │ │ └── mod.rs │ │ ├── form/ │ │ │ ├── buffer.rs │ │ │ ├── context.rs │ │ │ ├── error.rs │ │ │ ├── field.rs │ │ │ ├── form.rs │ │ │ ├── from_form.rs │ │ │ ├── from_form_field.rs │ │ │ ├── lenient.rs │ │ │ ├── mod.rs │ │ │ ├── name/ │ │ │ │ ├── buf.rs │ │ │ │ ├── key.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── name.rs │ │ │ │ └── view.rs │ │ │ ├── options.rs │ │ │ ├── parser.rs │ │ │ ├── strict.rs │ │ │ ├── tests.rs │ │ │ └── validate.rs │ │ ├── fs/ │ │ │ ├── file_name.rs │ │ │ ├── mod.rs │ │ │ ├── named_file.rs │ │ │ ├── rewrite.rs │ │ │ ├── server.rs │ │ │ └── temp_file.rs │ │ ├── http/ │ │ │ ├── cookies.rs │ │ │ └── mod.rs │ │ ├── lib.rs │ │ ├── lifecycle.rs │ │ ├── listener/ │ │ │ ├── bind.rs │ │ │ ├── bounced.rs │ │ │ ├── cancellable.rs │ │ │ ├── connection.rs │ │ │ ├── default.rs │ │ │ ├── endpoint.rs │ │ │ ├── listener.rs │ │ │ ├── mod.rs │ │ │ ├── quic.rs │ │ │ ├── tcp.rs │ │ │ └── unix.rs │ │ ├── local/ │ │ │ ├── asynchronous/ │ │ │ │ ├── client.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── request.rs │ │ │ │ └── response.rs │ │ │ ├── blocking/ │ │ │ │ ├── client.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── request.rs │ │ │ │ └── response.rs │ │ │ ├── client.rs │ │ │ ├── mod.rs │ │ │ ├── request.rs │ │ │ └── response.rs │ │ ├── mtls/ │ │ │ ├── certificate.rs │ │ │ ├── config.rs │ │ │ ├── error.rs │ │ │ ├── mod.rs │ │ │ └── name.rs │ │ ├── outcome.rs │ │ ├── phase.rs │ │ ├── request/ │ │ │ ├── atomic_method.rs │ │ │ ├── from_param.rs │ │ │ ├── from_request.rs │ │ │ ├── mod.rs │ │ │ ├── request.rs │ │ │ └── tests.rs │ │ ├── response/ │ │ │ ├── body.rs │ │ │ ├── content.rs │ │ │ ├── debug.rs │ │ │ ├── flash.rs │ │ │ ├── mod.rs │ │ │ ├── redirect.rs │ │ │ ├── responder.rs │ │ │ ├── response.rs │ │ │ ├── status.rs │ │ │ └── stream/ │ │ │ ├── bytes.rs │ │ │ ├── mod.rs │ │ │ ├── one.rs │ │ │ ├── raw_sse.rs │ │ │ ├── reader.rs │ │ │ ├── sse.rs │ │ │ └── text.rs │ │ ├── rocket.rs │ │ ├── route/ │ │ │ ├── handler.rs │ │ │ ├── mod.rs │ │ │ ├── route.rs │ │ │ ├── segment.rs │ │ │ └── uri.rs │ │ ├── router/ │ │ │ ├── collider.rs │ │ │ ├── matcher.rs │ │ │ ├── mod.rs │ │ │ └── router.rs │ │ ├── sentinel.rs │ │ ├── serde/ │ │ │ ├── json.rs │ │ │ ├── mod.rs │ │ │ ├── msgpack.rs │ │ │ └── uuid.rs │ │ ├── server.rs │ │ ├── shield/ │ │ │ ├── mod.rs │ │ │ ├── policy.rs │ │ │ └── shield.rs │ │ ├── shutdown/ │ │ │ ├── config.rs │ │ │ ├── handle.rs │ │ │ ├── mod.rs │ │ │ ├── sig.rs │ │ │ └── tripwire.rs │ │ ├── state.rs │ │ ├── tls/ │ │ │ ├── config.rs │ │ │ ├── error.rs │ │ │ ├── listener.rs │ │ │ ├── mod.rs │ │ │ └── resolver.rs │ │ ├── trace/ │ │ │ ├── level.rs │ │ │ ├── macros.rs │ │ │ ├── mod.rs │ │ │ ├── subscriber/ │ │ │ │ ├── common.rs │ │ │ │ ├── compact.rs │ │ │ │ ├── dynamic.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── pretty.rs │ │ │ │ ├── request_id.rs │ │ │ │ └── visit.rs │ │ │ └── traceable.rs │ │ └── util/ │ │ ├── chain.rs │ │ ├── join.rs │ │ ├── mod.rs │ │ ├── reader_stream.rs │ │ └── unix.rs │ └── tests/ │ ├── absolute-uris-okay-issue-443.rs │ ├── adhoc-uri-normalizer.rs │ ├── byte-slices-form-field-issue-2148.rs │ ├── can-correct-bad-local-uri.rs │ ├── can-launch-tls.rs │ ├── catcher-cookies-1213.rs │ ├── conditionally-set-server-header-996.rs │ ├── config-proxy-proto-header.rs │ ├── config-real-ip-header.rs │ ├── config-secret-key-1500.rs │ ├── content-length.rs │ ├── cookies-private.rs │ ├── derive-reexports.rs │ ├── deserialize-limits-issue-2268.rs │ ├── encoded-uris.rs │ ├── fairing_before_head_strip-issue-546.rs │ ├── file_server.rs │ ├── flash-lazy-removes-issue-466.rs │ ├── form-validation-names.rs │ ├── form_method-issue-45.rs │ ├── form_value_decoding-issue-82.rs │ ├── form_value_from_encoded_str-issue-1425.rs │ ├── forward-includes-status-1560.rs │ ├── head_handling.rs │ ├── http_serde.rs │ ├── launch-inspect.rs │ ├── limits.rs │ ├── local-client-access-runtime-in-drop.rs │ ├── local-client-json.rs │ ├── local-request-content-type-issue-505.rs │ ├── local_request_private_cookie-issue-368.rs │ ├── many-cookie-jars-at-once.rs │ ├── mapped-base-issue-1262.rs │ ├── mount_point.rs │ ├── msgpack_encoding.rs │ ├── multipart-limit.rs │ ├── nested-fairing-attaches.rs │ ├── on_launch_fairing_can_inspect_port.rs │ ├── panic-handling.rs │ ├── precise-content-type-matching.rs │ ├── raw-strings-multipart-files-1987.rs │ ├── recursive-singleton-fairing.rs │ ├── redirect_from_catcher-issue-113.rs │ ├── replace-content-type-518.rs │ ├── responder_lifetime-issue-345.rs │ ├── route_guard.rs │ ├── scoped-uri.rs │ ├── segments-issues-41-86.rs │ ├── sentinel.rs │ ├── session-cookies-issue-1506.rs │ ├── shield.rs │ ├── shutdown-fairings.rs │ ├── static/ │ │ ├── .hidden │ │ ├── index.html │ │ ├── inner/ │ │ │ ├── .hideme │ │ │ ├── goodbye │ │ │ └── index.html │ │ └── other/ │ │ ├── hello.txt │ │ └── index.htm │ ├── strict_and_lenient_forms.rs │ ├── timer-on-attach.rs │ ├── tls-config-from-source-1503.rs │ ├── twice_managed_state.rs │ ├── typed-uri-docs-redef-issue-1373.rs │ ├── unsound-local-request-1312.rs │ ├── untracked-vs-tracked.rs │ └── uri-percent-encoding-issue-808.rs ├── docs/ │ ├── LICENSE │ ├── guide/ │ │ ├── 00-introduction.md │ │ ├── 01-upgrading.md │ │ ├── 02-quickstart.md │ │ ├── 03-getting-started.md │ │ ├── 04-overview.md │ │ ├── 05-requests.md │ │ ├── 06-responses.md │ │ ├── 07-state.md │ │ ├── 08-fairings.md │ │ ├── 09-testing.md │ │ ├── 10-configuration.md │ │ ├── 11-deploying.md │ │ ├── 12-pastebin.md │ │ ├── 13-conclusion.md │ │ ├── 14-faq.md │ │ └── index.md │ └── tests/ │ ├── Cargo.toml │ └── src/ │ ├── guide.rs │ ├── lib.rs │ └── readme.rs ├── examples/ │ ├── Cargo.toml │ ├── README.md │ ├── chat/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── main.rs │ │ │ └── tests.rs │ │ └── static/ │ │ ├── index.html │ │ ├── reset.css │ │ ├── script.js │ │ └── style.css │ ├── config/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ └── src/ │ │ ├── main.rs │ │ └── tests.rs │ ├── cookies/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ ├── src/ │ │ │ ├── main.rs │ │ │ ├── message.rs │ │ │ ├── session.rs │ │ │ └── tests.rs │ │ └── templates/ │ │ ├── login.html.hbs │ │ ├── message.html.hbs │ │ └── session.html.hbs │ ├── databases/ │ │ ├── .sqlx/ │ │ │ ├── query-11e3096becb72f427c8d3911ef4327afd9516143806981e11f8e34d069c14472.json │ │ │ ├── query-4415c35941e52a981b10707fe2e1ceb0bad0e473701e51ef21ecb2973c76b4df.json │ │ │ ├── query-668690acaca0a0c0b4ac306b14d82aa1bee940f0776fae3f9962639b78328858.json │ │ │ ├── query-79301b44b77802e0096efd73b1e9adac27b27a3cf7bf853af3a9f130b1684d91.json │ │ │ └── query-bea4ef6e25064f6b383e854f8bc2770d89cfaf9859d0bfca78b2ca24627675b7.json │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Rocket.toml │ │ ├── db/ │ │ │ ├── diesel/ │ │ │ │ ├── migrations/ │ │ │ │ │ ├── .gitkeep │ │ │ │ │ └── 20210329150332_create_posts_table/ │ │ │ │ │ ├── down.sql │ │ │ │ │ └── up.sql │ │ │ │ └── mysql-migrations/ │ │ │ │ └── 20210329150332_create_posts_table/ │ │ │ │ ├── down.sql │ │ │ │ └── up.sql │ │ │ └── sqlx/ │ │ │ └── migrations/ │ │ │ └── 20210331024424_create-posts-table.sql │ │ └── src/ │ │ ├── diesel_mysql.rs │ │ ├── diesel_sqlite.rs │ │ ├── main.rs │ │ ├── rusqlite.rs │ │ ├── sqlx.rs │ │ └── tests.rs │ ├── error-handling/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── main.rs │ │ └── tests.rs │ ├── fairings/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ └── src/ │ │ ├── main.rs │ │ └── tests.rs │ ├── forms/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ ├── src/ │ │ │ ├── main.rs │ │ │ └── tests.rs │ │ └── templates/ │ │ ├── index.html.tera │ │ ├── macros.html.tera │ │ └── success.html.tera │ ├── hello/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── main.rs │ │ └── tests.rs │ ├── manual-routing/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ └── src/ │ │ ├── main.rs │ │ └── tests.rs │ ├── pastebin/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── main.rs │ │ ├── paste_id.rs │ │ └── tests.rs │ ├── responders/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── main.rs │ │ └── tests.rs │ ├── serialization/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── json.rs │ │ ├── main.rs │ │ ├── msgpack.rs │ │ ├── tests.rs │ │ └── uuid.rs │ ├── state/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── main.rs │ │ ├── managed_hit_count.rs │ │ ├── managed_queue.rs │ │ ├── request_local.rs │ │ └── tests.rs │ ├── static-files/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── main.rs │ │ │ └── tests.rs │ │ └── static/ │ │ ├── hidden/ │ │ │ ├── hi.txt │ │ │ └── index.html │ │ └── index.html │ ├── templating/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ ├── src/ │ │ │ ├── hbs.rs │ │ │ ├── main.rs │ │ │ ├── minijinja.rs │ │ │ ├── tera.rs │ │ │ └── tests.rs │ │ └── templates/ │ │ ├── hbs/ │ │ │ ├── error/ │ │ │ │ └── 404.html.hbs │ │ │ ├── footer.html.hbs │ │ │ ├── index.html.hbs │ │ │ ├── layout.html.hbs │ │ │ └── nav.html.hbs │ │ ├── minijinja/ │ │ │ ├── error/ │ │ │ │ └── 404.html.j2 │ │ │ ├── footer.html.j2 │ │ │ ├── index.html.j2 │ │ │ ├── layout.html.j2 │ │ │ └── nav.html.j2 │ │ └── tera/ │ │ ├── base.html.tera │ │ ├── error/ │ │ │ └── 404.html.tera │ │ ├── index.html.tera │ │ └── nav.html.tera │ ├── testing/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── async_required.rs │ │ └── main.rs │ ├── tls/ │ │ ├── Cargo.toml │ │ ├── Rocket.toml │ │ ├── private/ │ │ │ ├── ca_cert.pem │ │ │ ├── ca_key.pem │ │ │ ├── client.pem │ │ │ ├── ecdsa_nistp256_sha256.p12 │ │ │ ├── ecdsa_nistp256_sha256_cert.pem │ │ │ ├── ecdsa_nistp256_sha256_key_pkcs8.pem │ │ │ ├── ecdsa_nistp256_sha256_key_sec1.pem │ │ │ ├── ecdsa_nistp384_sha384.p12 │ │ │ ├── ecdsa_nistp384_sha384_cert.pem │ │ │ ├── ecdsa_nistp384_sha384_key_pkcs8.pem │ │ │ ├── ecdsa_nistp384_sha384_key_sec1.pem │ │ │ ├── ecdsa_nistp521_sha512.p12 │ │ │ ├── ecdsa_nistp521_sha512_cert.pem │ │ │ ├── ecdsa_nistp521_sha512_key_pkcs8.pem │ │ │ ├── ed25519.p12 │ │ │ ├── ed25519_cert.pem │ │ │ ├── ed25519_key.pem │ │ │ ├── gen_certs.sh │ │ │ ├── rsa_sha256.p12 │ │ │ ├── rsa_sha256_cert.pem │ │ │ └── rsa_sha256_key.pem │ │ └── src/ │ │ ├── main.rs │ │ ├── redirector.rs │ │ └── tests.rs │ ├── todo/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Rocket.toml │ │ ├── db/ │ │ │ └── DB_LIVES_HERE │ │ ├── migrations/ │ │ │ ├── .gitkeep │ │ │ └── 20160720150332_create_tasks_table/ │ │ │ ├── down.sql │ │ │ └── up.sql │ │ ├── src/ │ │ │ ├── main.rs │ │ │ ├── task.rs │ │ │ └── tests.rs │ │ └── static/ │ │ ├── css/ │ │ │ ├── normalize.css │ │ │ ├── skeleton.css │ │ │ └── style.css │ │ └── index.html.tera │ └── upgrade/ │ ├── Cargo.toml │ ├── src/ │ │ └── main.rs │ └── static/ │ └── index.html ├── scripts/ │ ├── config.sh │ ├── mk-docs.sh │ ├── publish.sh │ └── test.sh └── testbench/ ├── Cargo.toml └── src/ ├── client.rs ├── config.rs ├── lib.rs ├── main.rs ├── runner.rs ├── server.rs └── servers/ ├── bind.rs ├── http_extensions.rs ├── ignite_failure.rs ├── infinite_stream.rs ├── mod.rs ├── mtls.rs ├── no_content.rs ├── sni_resolver.rs ├── tls.rs ├── tls_resolver.rs └── tracing.rs