Move axum-debug into axum-macros (#724)

* Move axum-debug into axum-macros

* fix ref to axum-macros in changelog

* Apply suggestions from code review

Co-authored-by: Jonas Platte <[email protected]>

Co-authored-by: Jonas Platte <[email protected]>
This commit is contained in:
David Pedersen
2022-02-22 13:33:10 +01:00
co-authored by Jonas Platte
parent 28832ad8b1
commit 3d2f4e4a35
57 changed files with 488 additions and 212 deletions
@@ -0,0 +1,10 @@
use axum_macros::FromRequest;
use axum::extract::Extension;
#[derive(FromRequest)]
struct Extractor(#[from_request(via(Extension), via(Extension))] State);
#[derive(Clone)]
struct State;
fn main() {}
@@ -0,0 +1,13 @@
error: `via` specified more than once
--> tests/from_request/fail/double_via_attr.rs:5:49
|
5 | struct Extractor(#[from_request(via(Extension), via(Extension))] State);
| ^^^
warning: unused import: `axum::extract::Extension`
--> tests/from_request/fail/double_via_attr.rs:2:5
|
2 | use axum::extract::Extension;
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
@@ -0,0 +1,6 @@
use axum_macros::FromRequest;
#[derive(FromRequest)]
struct Extractor<T>(Option<T>);
fn main() {}
@@ -0,0 +1,5 @@
error: `#[derive(FromRequest)] doesn't support generics
--> tests/from_request/fail/generic.rs:4:17
|
4 | struct Extractor<T>(Option<T>);
| ^^^
@@ -0,0 +1,6 @@
use axum_macros::FromRequest;
#[derive(FromRequest)]
struct Extractor(#[from_request(foo)] String);
fn main() {}
@@ -0,0 +1,5 @@
error: expected `via`
--> tests/from_request/fail/unknown_attr.rs:4:33
|
4 | struct Extractor(#[from_request(foo)] String);
| ^^^
@@ -0,0 +1,11 @@
use axum_macros::FromRequest;
use axum::extract::Extension;
#[derive(FromRequest)]
#[from_request(via(Extension))]
struct Extractor(#[from_request(via(Extension))] State);
#[derive(Clone)]
struct State;
fn main() {}
@@ -0,0 +1,13 @@
error: `#[from_request(via(...))]` on a field cannot be used together with `#[from_request(...)]` on the container
--> tests/from_request/fail/via_on_container_and_field.rs:6:33
|
6 | struct Extractor(#[from_request(via(Extension))] State);
| ^^^
warning: unused import: `axum::extract::Extension`
--> tests/from_request/fail/via_on_container_and_field.rs:2:5
|
2 | use axum::extract::Extension;
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default