Commit Graph

2155 Commits

Author SHA1 Message Date
Indosaram
a62cc654be Fix typo in pastebin tutorial. 2023-03-23 14:57:54 -07:00
Alexander van Ratingen
2191369b37 Fix typos in docs. 2023-03-23 14:57:54 -07:00
Nya
5723f127c1 Fix panic when dropping sync 'ConnectionPool'.
Fixes #2375.
2023-03-23 14:57:54 -07:00
Sergio Benitez
1edfa15d52 Fix several broken rustdoc links. 2023-03-23 14:57:54 -07:00
Sergio Benitez
322f88e61a Update syn, transitively, to 2.0. 2023-03-22 20:11:22 -07:00
Sergio Benitez
bbbb927ac2 Update dependencies without observable breakages.
The following dependencies were updated:
  * `criterion` from 0.3 to 0.4
  * `deadpool-redis` from 0.10 to 0.11
  * `normpath` from 0.3 to 1
  * `cookie` from 0.16 to 0.17
2023-03-22 13:44:16 -07:00
Sergio Benitez
d628afddd0 Update UI tests for latest rustc. 2023-03-20 14:14:08 -07:00
Sergio Benitez
9377af5978 Make real IP header configurable via 'ip_header'.
Adds an `ip_header` configuration parameter that allows modifying the
header Rocket attempts to use to retrieve the "real IP" address of the
client via `Request` methods like `client_ip()`. Additionally allows
disabling the use of any such header.
2023-03-20 12:57:21 -07:00
Sergio Benitez
0c84af2ea7 Update UI test output for latest rustc. 2023-03-08 10:45:25 -08:00
Sergio Benitez
59ee2e0339 Migrate to maintained workflow toolchain action. 2023-01-31 12:17:42 -08:00
Jason Hinch
910994f982 Fix Result namespacing in FromFormField derive.
Previously, if a module used or defined a type alias for Result,
FromFormField derives would fail to compile as it would use the type
alias instead of the fully qualified type.
2023-01-31 11:19:57 -08:00
Sergio Benitez
e468a98333 Update UI tests for latest stable, nightly. 2023-01-30 16:10:59 -08:00
Sergio Benitez
0f1d141905 Use PCRE git grep to work around macOS git bug.
Git 2.39 on macOS contains a buggy `grep` implementation which, among
other things, fails to interpret the metasequence `\s` in extended regex
mode as space characters and instead interprets it as the literal `s`
character. To avoid this issue, this commit now uses `-P` instead of
`-E` when calling `git grep`, forcing use of PCRE instead.
2023-01-30 16:09:54 -08:00
Sergio Benitez
ca4b38c0d0 Allow UI tests to fail in CI.
This commit makes passing compile UI tests optional, allowing the CI to
succeed even when UI tests fail. This change was made because UI tests
are highly susceptible to false negatives due to benign rustc compiler
output changes. A failure resulting from such a benign change inhibits
progress in the main branch due to failing PR testing which would have
otherwise passed.
2023-01-30 16:06:18 -08:00
Sergio Benitez
162fafa0f1 Update UI tests for nightly. 2022-11-18 19:30:35 -08:00
Sergio Benitez
7e913eb8ac Report as many form errors as possible. 2022-11-12 04:11:18 -08:00
Sergio Benitez
8166ad0c7c Fix error field names in 'FromForm' derive.
Prior to this commit, the `FromForm` derive could pair the incorrect
field name with a failing validation. The bug was caused by using two
mismatched iterators in a `quote!()` invocation. Specifically, the first
iterator emitted validation calls for all fields that had validation
applied, while the second emitted field names for all fields,
irrespective of whether the field had any validation applied. The two
iterators were effectively zipped to create the final error, creating
the bug.

This commit fixes the issue by correctly matching field names with their
validators at the expense of an additional allocation, necessitated by
the `quote` crate's inability to access subfields in a repetition.

Fixes #2394.
2022-11-11 18:20:06 -08:00
Bonex
440a88ad27 Add failing form validation test cases. 2022-11-11 18:19:43 -08:00
Sergio Benitez
cd23885ee3 Update UI tests for latest nightly. 2022-11-11 18:19:33 -08:00
Sergio Benitez
1ed7a6e77e Fix log indentation.
Regression introduced in 885cdfd6 resulted in items in logs messages not
being properly indented.
2022-11-08 14:55:30 -08:00
Jacob Simpson
6c3d35e7e5 Update notify to 5.0.
Resolves #2337.
2022-09-18 01:49:15 -07:00
Sergio Benitez
682c2d9acf Update database driver version numbers in docs. 2022-09-18 01:27:36 -07:00
Tilen Pintarič
f0d678d464 Update diesel to 2.0, sqlx to 0.6.
Closes #2209.
Closes #2335.
Closes #2249.
2022-09-18 01:24:57 -07:00
Sergio Benitez
707936177a Update 'sync_db_pools' UI tests. 2022-09-14 13:59:32 -07:00
Sergio Benitez
f10a2d7d9c Include stable rust-src diagnostics. 2022-09-01 01:47:02 -07:00
Sergio Benitez
13732f8a6b Update UI tests for latest nightly, stable. 2022-08-31 13:52:40 -07:00
Sergio Benitez
885cdfd61c Always log launch message.
Users experience confusion when the server appears to do "nothing" when
compiled in release mode. In reality, the server has started, but it
offers no indication in that direction via log message. Often users
misconfigure the port or address, but that information isn't displayed.

This commit makes it such that only the final "Rocket has launched!"
log message is displayed, which includes the listening address, port,
and protocol.
2022-08-30 13:51:23 -07:00
Sergio Benitez
c08c39e16f Implement 'FromForm' for 'Arc<T>'. 2022-08-30 13:51:18 -07:00
Sergio Benitez
cbe4dcb4b5 Update 'rust-cache' GitHub action to v2. 2022-08-04 18:40:33 -07:00
Sergio Benitez
a34edc4de9 Silence false positive warnings.
Use `allow(deadcode)` on structs that exist solely to be debug-printed.
2022-08-04 17:45:53 -07:00
Kevin Wang
f7e703bc5e Fix 'Limits' deserialization.
Fixes #2268.
2022-08-01 13:11:02 -07:00
Doni Rubiagatra
b7c03ce2b5 Fix typo in getting started guide.
Replace 'installled' with 'installed'.
2022-08-01 11:35:42 -07:00
Charles-Axel Dein
e65f0ff494 Fix typo in configuration guide.
Replace 'demonstratation' with 'demonstration'.
2022-08-01 11:34:31 -07:00
Felix Suominen
ef5b7f89a5 Fix typo in production readiness FAQ.
Replace 'zero-downtown' with 'zero-downtime'.
2022-08-01 11:32:59 -07:00
Sergio Benitez
8e8dfc7d45 Clarify built-in request guard implementations. 2022-07-17 18:45:11 -07:00
Sergio Benitez
f64029f079 Fix links to upgrade guide.
Fixes #2267.
2022-07-14 12:14:15 -07:00
Sergio Benitez
0126163ca5 Enable 'rust-src' component in CI.
This fixes UI tests on Linux nightly. Without the `rust-src` component,
an error message pointing to the core libraries is not emitted as
expected. Presumably by making the sources available, the compiler has
somewhere to point to.

This commit also re-enables CI failures for the Linux debug target.
2022-07-13 20:26:34 -07:00
Sergio Benitez
8d8367e32b Update UI tests for latest nightly, stable. 2022-07-13 18:23:39 -07:00
Sergio Benitez
a933e7234d Gracefully shutdown database pools in 'db_pools'. 2022-07-13 14:16:14 -07:00
pennae
7275df9fdf Make data guards eligible to be sentinels.
Prior to this commit, data guards were not being considered as eligible
to be sentinels. This commit resolves that.
2022-06-23 16:15:11 -07:00
Sergio Benitez
ef2538f222 Temporarily ignore Linux nightly CI failures. 2022-06-21 15:36:50 -07:00
Sergio Benitez
dfea521eb6 Fix guide page names to match search slugs.
Resolves #2223.
2022-06-21 13:40:46 -07:00
Sergio Benitez
6e5568a155 Update UI tests for latest nightly. 2022-06-21 00:13:14 -07:00
Sergio Benitez
30b8a77fc9 Avoid dropping 'Error' inside '#[launch]' future.
Due to tokio-rs/tokio#4780, a panicking top-level future combined with
an uncooperative background task prevents runtime shutdown. To avoid
this in the case of `Rocket::launch()` returning an `Error`, which
panics on drop if it isn't inspected, we return the `Result` to the
caller (i.e., `main`) instead of the `block_on` future. This prevent the
panic from occuring inside of the `block_on` future and so the runtime
terminates even with uncooperative I/O.
2022-06-20 23:49:41 -07:00
Aaron Leopold
c8b8b2b022 Add several new known media types:
* CBZ: application/vnd.comicbook+zip, .cbz
  * CBR: application/vnd.comicbook-rar, .cbr
  * RAR: application/vnd.rar, .rar
  * EPUB: application/epub+zip, .epub
  * OPF: application/oebps-package+xml, .opf
  * XHTML: application/xhtml+xml, .xhtml
2022-06-13 15:29:32 -07:00
James Tai
2fc4b156eb Add MP3 (audio/mpeg) as a known media type. 2022-06-03 07:30:22 -07:00
Sergio Benitez
08ef285f37 Update 'sync_db_pools' UI tests for stable. 2022-05-24 21:36:32 -07:00
Sergio Benitez
04819d8cfd Add pool retrieval to sync_db_pools.
Generates a new method on attributed types, `pool()`, which returns an
opaque reference to a type that can be used to get pooled connections.

Also adds a code-generated example to the crate docs which includes
real, proper function signatures and fully checked examples.

Resolves #1884.
Closes #1972.
2022-05-24 16:47:09 -07:00
Matthew Pomes
5cb70ec58c Salvage everything viable from bad requests.
Co-authored-by: Sergio Benitez <sb@sergio.bz>
2022-05-23 23:47:53 -07:00
Matthew Pomes
47946cc55c Add 'max_blocking' threads config value. 2022-05-23 21:55:16 -07:00