1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-11-24 00:21:08 +01:00
Actix web is a small, pragmatic, and extremely fast rust web framework. https://actix.rs
Go to file
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
.github Tweak caches (#1319) 2020-01-25 02:27:13 +09:00
actix-cors allow to specify multi pattern for resources 2019-12-25 20:14:44 +04:00
actix-files Fixed documentation typo for actix-files (#1278) 2020-01-15 11:09:58 -08:00
actix-framed prep actix-framed release 2019-12-25 20:17:22 +04:00
actix-http Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
actix-identity Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
actix-multipart Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
actix-session Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
actix-web-actors update changes 2019-12-20 17:59:34 +06:00
actix-web-codegen Add ability to name a handler function as 'config' (#1290) 2020-01-26 07:22:40 +09:00
awc Rename HttpServer::start() to HttpServer::run() 2019-12-22 17:12:22 +04:00
benches Add benchmark for full stack request lifecycle (#1298) 2020-01-25 08:05:25 +09:00
examples Rename HttpServer::start() to HttpServer::run() 2019-12-22 17:12:22 +04:00
src Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
test-server Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
tests Rename HttpServer::start() to HttpServer::run() 2019-12-22 17:12:22 +04:00
.appveyor.yml update deps 2018-10-08 21:58:37 -07:00
.gitignore start working on guide 2017-11-27 16:41:37 -08:00
.travis.yml use actix_rt::test for test setup 2019-11-26 11:25:50 +06:00
Cargo.toml Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
CHANGES.md Upgrade time to 0.2.5 (#1254) 2020-01-28 20:44:22 +09:00
CODE_OF_CONDUCT.md code of conduct 2018-01-21 15:29:02 -08:00
codecov.yml Remove codecoverage for tests and examples (#1299) 2020-01-24 05:10:02 +09:00
LICENSE-APACHE add mit license 2017-12-17 10:08:44 -08:00
LICENSE-MIT spelling check 2018-03-24 09:35:52 +03:00
MIGRATION.md allow explicit SameSite=None cookies (#1282) 2020-01-23 10:08:23 +09:00
README.md Add dependencies instruction (#1281) 2020-01-16 23:17:17 +09:00
rustfmt.toml copy actix-web2 2019-03-01 22:51:32 -08:00

Actix web

Actix web is a small, pragmatic, and extremely fast rust web framework

Build Status codecov crates.io Join the chat at https://gitter.im/actix/actix Documentation Download Version License

Website | Chat | Examples


Actix web is a simple, pragmatic and extremely fast web framework for Rust.

Example

Dependencies:

[dependencies]
actix-web = "2"
actix-rt = "1"

Code:

use actix_web::{get, web, App, HttpServer, Responder};

#[get("/{id}/{name}/index.html")]
async fn index(info: web::Path<(u32, String)>) -> impl Responder {
    format!("Hello {}! id:{}", info.1, info.0)
}

#[actix_rt::main]
async fn main() -> std::io::Result<()> {
    HttpServer::new(|| App::new().service(index))
        .bind("127.0.0.1:8080")?
        .run()
        .await
}

More examples

You may consider checking out this directory for more examples.

Benchmarks

License

This project is licensed under either of

at your option.

Code of Conduct

Contribution to the actix-web crate is organized under the terms of the Contributor Covenant, the maintainer of actix-web, @fafhrd91, promises to intervene to uphold that code of conduct.