* add scope proc macro
* Update scope macro code to work with current HttpServiceFactory
* started some test code
* add some unit tests
* code formatting cleanup
* add another test for combining and calling 2 scopes
* format code with formatter
* Update actix-web-codegen/src/lib.rs with comment documentation fix
Co-authored-by: oliver <151407407+kwfn@users.noreply.github.com>
* work in progress. revised procedural macro to change othe macro call
* add tests again. refactor nested code.
* clean up code. fix bugs with route and method attributes with parameters
* clean up for rust fmt
* clean up for rust fmt
* fix out of date comment for scope macro
* sync to master branch by adding test_wrap
* needed to format code
* test: split out scope tests
* test: add negative tests
* chore: move imports back inside (?)
* docs: tweak scope docs
* fix: prevent trailing slashes in scope prefixes
* chore: address clippy lints
---------
Co-authored-by: oliver <151407407+kwfn@users.noreply.github.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
* feat: add .customize().add_cookie()
* docs: added cookie hint
* fix: added unwrap to test of add_cookie()
* docs: added changelog entry for .customize().add_cookie()
* chore: make append_header infallible
* docs: update changelog
---------
Co-authored-by: Rob Ede <robjtede@icloud.com>
If you're testing that redirects are being properly generated, then it's
useful to not have the client go off on a wild goose chase of its own.
Co-authored-by: Rob Ede <robjtede@icloud.com>
* fix: Do not require actix-router default features from actix-web-codegen
* docs: update changelog
* test: update trybuild stderr
---------
Co-authored-by: Dylan Anthony <dbanty@users.noreply.github.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
* Fix type confusion in some scenarios
When the feature for rustls 0.22 is enabled, and rustls 0.23 is also
present in a project, there suddently exist multiple paths for errors
when building middleware chains due to the use of two consecutive `?`
operators without specifying the intermediate error type.
This commit addresses the issue by removing the first `?`, so that the
first error type will always be known, and the second `?` always has a
well defined implementation.
* Add CHANGES entry about type confusion
* actix-http: add rustls 0.23 support
* actix-http: update ws example, tests for rustls 0.23
* actix-http: add rustls 0.23 to changelog
* Update comments to mention 0.23 instead of 0.22
* awc: add rustls 0.23 support
This also fixes certificate lookup when native-roots is enabled for rustls 0.22.
* awc: update changelog for rustls 0.23
* awc: Add base rustls-0_23 feature without roots to better enable custom config
* actix-test: add rustls-0.23
* actix-test: add rustls 0.23 to changelog
* awc: update changelog with rustls 0.23 tweaks
* actix-web: add rustls 0.23
* Add rustls-0_23 to CI
* Update tls_rustls.rs
* review nits
* review nits part 2
* fix doc test
---------
Co-authored-by: Rob Ede <robjtede@icloud.com>
This allows us to pass these types around in functions, without having
to add `awc` as a direct (dev-)dependency.
Co-authored-by: Rob Ede <robjtede@icloud.com>
* Fix type confusion in some scenarios
When the feature for rustls 0.22 is enabled, and rustls 0.23 is also
present in a project, there suddently exist multiple paths for errors
when building middleware chains due to the use of two consecutive `?`
operators without specifying the intermediate error type.
This commit addresses the issue by removing the first `?`, so that the
first error type will always be known, and the second `?` always has a
well defined implementation.
* Add CHANGES entry about type confusion
---------
Co-authored-by: Rob Ede <robjtede@icloud.com>