Commit Graph

565 Commits

Author SHA1 Message Date
jeb 00dd691252 Update codegen and related dependencies for latest nightly. 2018-05-29 18:37:14 +02:00
jeb 350f4d04cd Update core for latest nightly.
Fixes #643.
2018-05-29 15:33:58 +02:00
Sergio Benitez 2bb343ad70 Use a specific git revision for pear dependencies. 2018-05-15 23:35:28 -07:00
Sergio Benitez a040ddd122 Fix links to configuration guide. 2018-05-13 23:33:42 -07:00
Sergio Benitez bd4e54609e Update codegen and core for 2018-04-28 nightly. 2018-04-28 18:23:57 -07:00
Sergio Benitez 6a31cb5f5a Freeze managed state before launch. 2018-04-28 18:23:01 -07:00
Sergio Benitez 0e85f9efd8 Loosen bounds on 'AdHoc::{Attach,Launch}' methods.
These changes allow any type that implements `FnOnce`, instead of `Fn`,
to be used as attach or launch fairings via `AdHoc`. Furthermore, the
`Sync` bound was also lifted.

Resolves #522.
2018-04-22 01:53:23 -07:00
Sergio Benitez 6e34a04188 Get time once when checking cookie expiration. 2018-04-18 09:22:11 -07:00
Sergio Benitez 46b56f11e7 Check length of flash cookie before indexing. 2018-04-15 20:18:32 -07:00
David Wilkening 4157c573e8 Update rustdocs to refer to 256-bit keys everywhere. 2018-04-14 20:04:14 -07:00
Sergio Benitez 9629b40202 Clear flash cookies only after they're inspected.
Resolves #512.
Resolves #466.
2018-04-14 19:53:36 -07:00
Sergio Benitez eda635aaeb Add automatic cookie propogation to 'local::Client'. 2018-04-14 19:41:37 -07:00
Sergio Benitez a96ba1c296 Add 'Response::cookies()' method for easy cookie retrieval. 2018-04-14 16:24:41 -07:00
Sergio Benitez efc511c6dc Add a 'FromFormValue' derive. Start 'codegen_next' crate.
The 'codegen_next' crate will eventually be renamed 'codegen'. It
contains procedural macros written with the upcoming 'proc_macro' APIs,
which will eventually be stabilized. All compiler extensions in the
present 'codegen' crate will be rewritten as procedural macros and moved
to the 'codegen_next' crate.

At present, macros from 'codegen_next' are exported from the core
`rocket` crate automatically. In the future, we may wish to feature-gate
this export to allow using Rocket's core without codegen.

Resolves #16.
2018-04-12 16:07:37 -07:00
Sergio Benitez 226990584b Implement 'UriDisplay' for 'str', 'RawStr' directly. 2018-04-11 10:46:19 -07:00
Michael Noronha e9ec5b2d13 Fix minor typo in rustdocs: 'avaiable' -> 'available'. 2018-04-08 18:08:13 -07:00
ImPerat0R_ 5df01effbb Use correct response code in catcher rustdocs. 2018-04-08 17:46:56 -07:00
Sergio Benitez d05eefd292 Clarify binding launch failure messages. 2018-04-08 17:39:46 -07:00
Riley Trautman aab74ced23 Add unique launch error message for binding issues. 2018-04-08 17:38:38 -07:00
Sergio Benitez 1e08177f55 Tidy up latest routing changes. 2018-04-08 16:14:15 -07:00
Lukas Abfalterer 3a1d671894 Fix interactions between fairings and auto-HEAD responses.
Fixes #546.
2018-04-08 15:32:54 -07:00
Sergio Benitez e860b0e261 Fix parsing of number-like TOML environment variables. 2018-04-05 09:48:24 -07:00
Sergio Benitez bae3140adf Improve robustness of environment variable TOML parser.
Fixes #598.
2018-04-05 01:14:56 -07:00
Sergio Benitez e0bf21f288 Update pear dependency. 2018-04-03 21:53:25 -07:00
Sergio Benitez 9dcb285799 Remove stabilized feature gates.
These are:

  * i128_type
  * conservative_impl_trait
  * never_type
2018-04-03 21:52:33 -07:00
Karuna Murti 68683eb0a9 Add WASM as known media type. 2018-04-03 12:58:43 -07:00
Nicholas Donnelly 9bc6502fa7 Added WEBM, OGG, and WAV as known media types. 2018-04-03 12:42:32 -07:00
Sergio Benitez 58e694d14a Improve docstring for Collider impl for Route. 2018-04-03 12:37:50 -07:00
Lucas Morales 372d85ddb3 Add fragment URI parsing tests. 2018-04-03 12:37:50 -07:00
ta.tanaka 0b0d099864 Fix fragment URI parsing. 2018-04-03 12:37:50 -07:00
messense b0fc8b31f6 Update 'indexmap' to 1.0. 2018-03-22 04:03:54 -05:00
Sergio Benitez 362f0ccdac Allow shorthand for route format specifiers. 2018-03-22 04:02:37 -05:00
Sergio Benitez c3b6c542e8 Update from 'ordermap' to 'indexmap' 0.4. 2018-02-25 20:32:10 -08:00
Sergio Benitez 1d19a54ee0 Remove unnecessary 'do_match_until' function. 2018-02-25 17:17:03 -08:00
Sergio Benitez f8146c9c0a Fix collisions for strings with different lengths.
Previously, a collision check for strings with different lengths would
succeed if one string was both a prefix and a suffix of the other. The
root cause of the bug was a failure to check whether string equality
terminated early due to a matching prefix.

Fixes #574.
2018-02-25 06:45:42 -08:00
Sergio Benitez a80a187c8f Log the name of failed fairings on launch error. 2018-02-21 03:08:54 -08:00
Sergio Benitez 63ebe7d06a Update yansi and pear dependencies. 2018-02-21 00:37:31 -08:00
Sergio Benitez b892236ea5 Add 'Config::active()' method. 2018-02-20 03:27:18 -08:00
Sergio Benitez 91edab51f8 Spiffy up 'uncased_eq' implementation. 2018-02-19 02:55:56 -08:00
Sergio Benitez c620411d92 Add 'keep_alive' configuration parameter.
The 'keep_alive' configuration parameter allows HTTP keep-alive timeouts
to be configured or for keep-alive to be disabled entirely.
2018-02-17 04:06:05 -08:00
Sergio Benitez c6841ba67a Remove use of unsafe in logger.rs. 2018-02-17 02:12:59 -08:00
Sergio Benitez de8e1978c5 Remove unsafe 'from_utf8_unchecked'; improve form parsing.
The 'FormItems' iterator now successfully parses empty keys and values
as well as keys without values.
2018-02-14 14:05:26 -08:00
Sergio Benitez 8b1aaed0ce Enforce trailing commas in 'known' macros. 2018-01-30 12:30:31 -08:00
Sergio Benitez 6de76c51bc Only pop a log level if one was previously pushed. 2018-01-29 13:25:33 -08:00
Sergio Benitez 3a8d0e8a9a Dynamically increase/decrease log level at launch.
This commit modifies the internal logger so that launch messages are
emitted with the proper "info" level. The approach is to temporarily
weaken the log level to "normal" during launch and reset it to the
user's setting after launching.

This commit also upgrades to 'log' 0.4.

Fixes #553.
2018-01-29 13:16:04 -08:00
Sergio Benitez 944aa79a8f Update 'state' to 0.4. 2018-01-23 18:53:30 -08:00
Sergio Benitez 5a9d857329 Account for default config changes in config tests. 2018-01-20 11:36:35 -08:00
Sergio Benitez 2d7b4b4233 Print config info in all environments. 2018-01-20 10:55:01 -08:00
Sergio Benitez f9a950d1c7 Default to production environment on non-debug builds. 2018-01-20 09:58:52 -08:00
Donald Robertson 19f59b1f9b Use port 8000 as default for all environments.
Closes #317.
2018-01-20 09:43:19 -08:00