1
0
mirror of https://github.com/actix/actix-extras.git synced 2024-11-23 23:51:06 +01:00
Commit Graph

45 Commits

Author SHA1 Message Date
Joseph McCormick
1ed893a08c
Feature: Add IdentityError to actix-identity crate. (#296)
* Add IdentityError to actix-identity crate.

In order to let crates in the actix web ecosystem interact correctly
with `actix_web::Error`, this commit introduces its own error type,
replacing the previous usage of `anyhow::Error`.

* Mend some clippy warnings on IdentityError.

* Split identity error into more granular versions.

- `MissingIdentityError` occurs whenever we attempt to gather
  information about an identity from a session, and fail.
- `LoginError` occurs whenever we attempt to login via an identity, and
  fail.

* Feedback for identity error implementation.

- `IdentityError` -> `GetIdentityError`
- Move error messages into Display impl where appropriate
- Split `id` and `get_identity` errors into two types
- Implement `source` on custom errors

* Expand identity error types with struct markers.

In order to get a little more future compatibility and reduce
abstraction leaking, this commit introduces some contextual structs to
our identity errors package.

* Improve doc message for SessionExpiryError.

Co-authored-by: Luca Palmieri <20745048+LukeMathWalker@users.noreply.github.com>

* Improve identity error docs and messaging.

Co-authored-by: Luca Palmieri <20745048+LukeMathWalker@users.noreply.github.com>

* Expand LostIdentityError with placeholder.

Adds a placeholder unit struct to the LostIdentityError variant of
GetIdentityError, which should let us expand on that variant with extra
context later if we like.

* Add From coercion for LostIdentityError.

Improve the ergonomics of using the LostIdentityError unit struct.

* Update Cargo.toml

* Update CHANGES.md

* expose identity error module

* fix error impl

Co-authored-by: Luca Palmieri <20745048+LukeMathWalker@users.noreply.github.com>
Co-authored-by: Rob Ede <robjtede@icloud.com>
2023-01-07 02:05:12 +00:00
Rob Ede
1561bda822
apply imports_granularity fmt rule 2022-09-11 21:55:40 +01:00
Rob Ede
4d2f4d58b4
clippy 2022-07-21 00:07:49 +01:00
Luca Palmieri
1089faaf93
[actix-identity] Fix visit deadline (#263) 2022-07-19 01:31:31 +01:00
Rob Ede
d853c115b6
trim unnecessary identity deps (#259)
* trim unnecessary identity deps

* update changelog
2022-07-11 18:07:26 +01:00
Rob Ede
9bc014b96f
forbid unsafe in all crates 2022-07-09 20:05:47 +01:00
Luca Palmieri
b1cea64795
Rebuild actix-identity on top of actix-session (#246)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2022-07-09 19:00:15 +01:00
Luca Palmieri
8fd1772d5e
Consistent import formatting (#237) 2022-03-29 11:46:13 +01:00
Rob Ede
2417549b35
clippy 2022-03-15 18:04:13 +00:00
Rob Ede
12f6db3755
tweak docs 2022-03-01 04:23:51 +00:00
nerix
673b77a765
docs(identity): clarify policy creation (#198) 2022-03-01 04:21:18 +00:00
Rob Ede
ab3615b8d5
relax body bounds (#223) 2022-02-07 02:30:26 +00:00
Rob Ede
323d01fcca
bump actix-web to 4.0.0-rc.1 2022-02-03 22:33:47 +00:00
Rob Ede
4e72e3d8ec
update actix-identity to aw4b21 2022-01-21 20:42:58 +00:00
Rob Ede
6676a50944
actix-web beta 15 updates (#216) 2021-12-18 03:37:23 +00:00
Rob Ede
74ec115161
migrate to actix-web beta 14 (#209) 2021-12-11 16:05:21 +00:00
Rob Ede
56051786a6
standardize future types to ones from actix_utils 2021-12-08 07:29:12 +00:00
Rob Ede
ec66754c0d
standardize crate level lints 2021-12-08 06:11:13 +00:00
Rob Ede
13f8dcb717
update to aw beta 9 2021-11-22 23:11:58 +00:00
Chiu-Hsiang Hsu
545873b5b2
update actix-web dependencies to v4 beta.10 (#203)
Co-authored-by: Rob Ede <robjtede@icloud.com>
2021-10-21 14:10:00 +01:00
Rob Ede
e10937103e
fmt with new width 2021-08-30 23:27:44 +01:00
Rob Ede
c6f579790f
bump msrv to 1.51 2021-08-30 23:10:36 +01:00
Rob Ede
20ef05c36e
fix doctest ci (#188) 2021-06-27 07:02:38 +01:00
Rob Ede
23912afd49
refactor identity (#168) 2021-03-23 05:05:03 +00:00
Rob Ede
2254a429d4
use forward_ready for service definitions 2021-03-22 05:18:59 +00:00
Andrey Kutejko
ca85f6b245
Update dependencies (Tokio 1.0) (#144) 2021-03-21 22:50:26 +00:00
Rob Ede
6ae147d190
add CookieIdentityPolicy::http_only method (#102) 2020-09-17 18:10:27 +01:00
Rob Ede
bad5f32a68
update all packages to use actix-web v3 (#94) 2020-09-11 16:26:15 +01:00
Yuki Okushi
7e6bdf2eb2
Check code with rustfmt not to introduce format commits (#88) 2020-07-21 03:51:51 +09:00
Yuki Okushi
2a20ce4568
Replace deprecated from_master with derive_from (#82) 2020-07-14 11:15:30 +01:00
Yuki Okushi
bd963fb7d1
Fix clippy warnings 2020-07-07 03:54:18 +09:00
Rob Ede
fd2cc47447
fix noisy check warning 2020-04-05 00:27:08 +01:00
Yuki Okushi
00f520cd2d
Fix clippy warnings 2020-03-18 06:34:32 +09:00
kevinpoitra
79dc7fcaff
Update actix-redis' dependencies (#24)
* Update actix-redis's dependencies

* Change `chrono::Duration` to `time::Duration` in the docs

* Remove unneeded comment

* Update CHANGES.md
2020-03-15 16:54:35 +09:00
Yuki Okushi
a3ebc8ca66
Minimize futures dependency 2020-03-15 05:44:29 +09:00
kevinpoitra
e634e64847 Upgrade time to 0.2.5 (#1254)
* Use `OffsetDateTime` instead of `PrimitiveDateTime`

* Parse time strings with `PrimitiveDateTime::parse` instead of `OffsetDateTime::parse`

* Remove unused `time` dependency from actix-multipart

* Fix a few errors with time related tests from the `time` upgrade

* Implement logic to convert a RFC 850 two-digit year into a full length year, and organize time parsing related functions

* Upgrade `time` to 0.2.2

* Correctly parse C's asctime time format using time 0.2's new format patterns

* Update CHANGES.md

* Use `time` without any of its deprecated functions

* Enforce a UTC time offset when converting an `OffsetDateTime` into a Header value

* Use the more readable version of `Duration::seconds(0)`, `Duration::zero()`

* Remove unneeded conversion of time::Duration to std::time::Duration

* Use `OffsetDateTime::as_seconds_f64` instead of manually calculating the amount of seconds from nanoseconds

* Replace a few additional instances of `Duration::seconds(0)` with `Duration::zero()`

* Truncate any nanoseconds from a supplied `Duration` within `Cookie::set_max_age` to ensure two Cookies with the same amount whole seconds equate to one another

* Fix the actix-http:🍪:do_not_panic_on_large_max_ages test

* Convert `Cookie::max_age` and `Cookie::expires` examples to `time` 0.2

Mainly minor  changes. Type inference can be used alongside the new
`time::parse` method, such that the type doesn't need to be specified.
This will be useful if a refactoring takes place that changes the type.
There are also new macros, which are used where possible.

One change that is not immediately obvious, in `HttpDate`, there was an
unnecessary conditional. As the time crate allows for negative durations
(and can perform arithmetic with such), the if/else can be removed
entirely.

Time v0.2.3 also has some bug fixes, which is why I am not using a more
general v0.2 in Cargo.toml.

v0.2.3 has been yanked, as it was backwards imcompatible. This version
reverts the breaking change, while still supporting rustc back to
1.34.0.

* Add missing `time::offset` macro import

* Fix type confusion when using `time::parse` followed by `using_offset`

* Update `time` to 0.2.5

* Update CHANGES.md

Co-authored-by: Jacob Pratt <the.z.cuber@gmail.com>
2020-01-28 20:44:22 +09:00
Nikolay Kim
f6ff056b8a Fix panic with already borrowed: BorrowMutError #1263 2020-01-10 11:26:54 +06:00
Nikolay Kim
f86ce0390e allow to specify multi pattern for resources 2019-12-25 20:14:44 +04:00
Nikolay Kim
4dc31aac93 use actix_rt::test for test setup 2019-11-26 11:25:50 +06:00
Nikolay Kim
57981ca04a update tests to async handlers 2019-11-22 11:49:35 +06:00
Nikolay Kim
3646725cf6 migrate actix-identity 2019-11-21 16:02:17 +06:00
Nikolay Kim
2a2d7f5768 nightly clippy warnings 2019-07-17 15:53:51 +06:00
Nikolay Kim
4092c7f326 clippy warnings 2019-07-17 15:08:30 +06:00
Nikolay Kim
7b1dcaffda cleanup deprecation warning for Box<dyn> 2019-07-17 11:44:39 +06:00
Nikolay Kim
ff724e239d move identity service separate crate 2019-06-12 15:52:48 +06:00