Commit Graph

242 Commits

Author SHA1 Message Date
Rob Ede 538c1bea34
chore: disallow e bindings 2024-08-10 05:15:49 +01:00
Rob Ede e0918fb179
chore(actix-web): prepare release 4.9.0 2024-08-10 03:21:55 +01:00
Rob Ede be28a0bd6d
feat: add from_fn middleware (#3447) 2024-08-10 01:41:27 +01:00
Rob Ede a431b7356c
feat: add ThinData wrapper (#3446) 2024-08-10 00:42:34 +01:00
Rob Ede d7d9000b19
chore: address clippy warnings 2024-08-07 04:06:18 +01:00
Onè 07f720f716
docs: fix typo (#3439) 2024-07-21 17:34:42 +00:00
Rob Ede e0e4d1e661
chore: move deny lints to manifests 2024-07-07 03:54:00 +01:00
Rob Ede 71cd3a31f9
fix(multipart): optional content-disposition for non-form-data requests (#3416) 2024-07-01 03:55:08 +01:00
Rob Ede 4222f92bd3
chore(actix-web): prepare release 4.8.0 2024-06-20 00:23:11 +01:00
Yury Yarashevich 643d64581a
Fix Rustls 0.22 & 0.23 are limited to 256 handshakes per second. (#3408) 2024-06-19 22:34:49 +00:00
Nikolaos Chatzikonstantinou fa74ab3dfb
remove references to StaticFiles (#3400) 2024-06-14 01:51:29 +00:00
Rob Ede 188206a903
feat: Html responder (#3399) 2024-06-11 00:36:46 +01:00
Timo Caktu 7a2313cc4b
web: add `HttpRequest::full_url()` (#3096)
* implemented function which returns full uir

* changes added into the changelog

* added test funtion for full_uri method

* refactor: rename to full_url

---------

Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-06-10 02:49:50 +00:00
Rob Ede 2ee92d778e
ci: external types checking (#3175) 2024-06-10 03:39:06 +01:00
Matt Palmer 59e42c1446
Return 415 rather than 400 on Urlencoded Content-Type mismatch (#3334)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-06-10 01:19:35 +00:00
Rob Ede 53086a90a6
build: add coverage recipes to justfile 2024-06-10 01:58:16 +01:00
Matt Palmer a2b9823d9d
Strip non-address characters from Forwarded for= (#3343)
* Strip non-address characters from Forwarded for=

This is something of a followup to #2528, which asked for port information to not be included in  when it was taken from the local socket.

The  header's  element may optionally contain port information (https://datatracker.ietf.org/doc/html/rfc7239#section-6).
However, as I understand it,  is *supposed* to only contain an IP address, without port (per #2528).

This PR corrects that discrepancy, making it easier to parse the result of this method in application code.

There should not be any compatibility concerns, as anyone parsing the output of  would already need to handle both port and portless cases anyway.

* Update CHANGES.md

---------

Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-06-09 23:40:09 +00:00
Rob Ede 40e1034566
docs: update changelog 2024-06-09 00:38:49 +01:00
Rob Ede a5c78483f9
chore(actix-web): prepare release 4.7.0 2024-06-09 00:22:03 +01:00
Rob Ede b4faf8820c
chore(actix-web-codegen): prepare release 4.3.0 2024-06-09 00:19:09 +01:00
Rob Ede ebc43dcf1b
feat: forwards-compatibility for handler visibility inheritance fix (#3391) 2024-06-09 00:10:15 +01:00
Rob Ede 7c4c26d2df
feat: expose Identity middleware (#3390) 2024-06-08 05:26:26 +01:00
Jonathan Lim 3db7891303
Scope macro (#3136)
* 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>
2024-06-07 22:10:48 +00:00
Rob Ede c366649516
docs: example of CPU core pinning 2024-06-07 16:57:13 +01:00
Sebastian Detert 534cfe1fda
feat: add .customize().add_cookie() (#3215)
* 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>
2024-06-07 15:22:48 +00:00
Raphael C 8fdf358954
Add app_data method to GuardContext (#3341)
* changes: guard

* fix(guard): docs link to app_data

* docs: fix changelog

---------

Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-06-07 14:31:53 +00:00
Abedi 85655f731d
From Boxed ResponseError impl added (#3388)
* From Boxed ResponseError impl added

* docs: update changelog

---------

Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-06-07 13:55:29 +00:00
Rob Ede 5c18569b78
docs: align App:app_data arg name 2024-06-07 14:31:20 +01:00
Rob Ede b342b8fc82
chore(actix-router): prepare release 0.5.3 2024-05-19 12:09:46 +01:00
Rob Ede acb740584c
fix: correct aws rustls v0.23 feature gating 2024-05-19 11:55:12 +01:00
Rob Ede 59115bca49
chore(actix-web): prepare release 4.6.0 2024-05-19 10:15:48 +01:00
Rob Ede fe7268487a
chore(actix-http): prepare release 3.7.0 2024-05-19 10:14:30 +01:00
Rob Ede e8262da138
chore: update rcgen to 0.13 2024-05-19 10:12:32 +01:00
Rob Ede 18e02b83d5
docs: fix middleware docs warning 2024-05-18 20:35:12 +01:00
asonix 2e63ff5928
actix-web: Add rustls 0.23 (#3363)
* 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>
2024-05-18 19:05:58 +00:00
dependabot[bot] fff45b28f4
build(deps): update brotli requirement from 3.3.3 to 6.0.0 (#3353)
* build(deps): update brotli requirement from 3.3.3 to 6.0.0

Updates the requirements on [brotli](https://github.com/dropbox/rust-brotli) to permit the latest version.
- [Release notes](https://github.com/dropbox/rust-brotli/releases)
- [Commits](https://github.com/dropbox/rust-brotli/compare/3.3.3...6.0.0)

---
updated-dependencies:
- dependency-name: brotli
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelogs

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-05-14 08:58:05 +00:00
asonix 33c47c0ba9
Fix type confusion in some scenarios (#3348)
* 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>
2024-05-14 05:45:35 +00:00
Rob Ede c1a6388614
refactor: address clippy warnings 2024-05-06 06:03:44 +01:00
Nelson Dominguez ba7bddeadc
docs(actix-web): add missing 'that' to doc comments for Compress middleware (#3304)
docs(actix-web): add missing 'that' in doc comments for Compress middleware
2024-03-06 00:17:18 +00:00
Rob Ede a4df623b0c
chore: bump env_logger to v0.11 2024-03-03 23:43:54 +00:00
Rob Ede 49020e79ae
chore: update base64 to v0.22 2024-03-03 22:18:29 +00:00
LoveSy c10f05a867
Add `unicode` feature to switch between `regex` and `regex-lite` crates as a trade-off between full unicode support and binary size (#3291)
* - Add `unicode` feature to switch between `regex` and `regex-lite`

as a trade-off between full unicode support and binary size.

* Update CHANGES.md

* Update CHANGES.md

* refactor: move regexset code selection to own module

* docs: add docs within RegexSet module

* chore: restore manifests

* test: ensure all actix-router codepaths are tested

---------

Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-03-03 15:50:16 +00:00
dependabot[bot] 8c31d137aa
build(deps): bump taiki-e/install-action from 2.26.18 to 2.27.2 (#3294)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
2024-02-19 12:31:10 +00:00
Rob Ede 1e08ebabf9
build: bump MSRV to 1.72 2024-02-13 01:24:34 +00:00
Rob Ede 1e2ef6f92f
perf: remove unnecessary allocation when writing http dates (#3261) 2024-02-07 03:47:30 +00:00
Rob Ede e518170a30
test: fix test_server 2024-02-04 03:40:58 +00:00
Rob Ede f5f6132f94
test: update rustls for test_server 2024-02-04 03:30:16 +00:00
Rob Ede 2b8c528e54
chore(actix-web): prepare release 4.5.1 2024-02-04 01:22:36 +00:00
Rob Ede 8e9e9fbcdd
chore(actix-web): prepare release 4.5.0 2024-02-04 00:32:28 +00:00
Rob Ede 8db3de6ede
chore(actix-http): prepare release 3.6.0 2024-02-04 00:31:14 +00:00