Skip to content

Releases: vapor/routing-kit

4.9.1 - Remove unnecessary `mutating` behavior from `Parameters.getCatchall()`

05 May 21:49
8c9a227
Compare
Choose a tag to compare

What's Changed

Remove unnecessary mutating behavior from Parameters.getCatchall() by @gwynne in #130

Parameters.getCatchall() has historically been mutating, in order to delay the removal of percent encoding from matched catchall values until it is called for the first time. This was an unnecessary optimization which just adds confusion to the behavior of the API and makes it harder to use. We now remove the percent encoding immediately when setCatchall() is called instead.

Additional changes:

  • Minimum Swift version updated to 5.8
  • set(_:to:) now falls back to the original value if removing percent encoding fails, matching the existing behavior of the catchall logic. This should have no impact in real systems, as an invalid input of this kind should never reach the routing logic.

(N.B.: While it is an API break for a previously non-mutating method to become mutating, the reverse is not the case, so this is a patch-level change.)

This patch was released by @gwynne

Full Changelog: 4.9.0...4.9.1

4.9.0 - Conform PathComponent to Hashable and Equatable

22 Dec 09:47
2a92a7e
Compare
Choose a tag to compare

What's Changed

Conform PathComponent to Hashable and Equatable by @marius-se in #129

Conforms PathComponent to Equatable. Related to this PR

New Contributor

This patch was released by @gwynne

Full Changelog: 4.8.2...4.9.0

4.8.2 - Initial Sendable Work

06 Nov 18:13
17a7a3f
Compare
Choose a tag to compare

What's Changed

Initial Sendable Work by @0xTim in #128

Conform Parameters, PathComponent and ConfigurationOption to Sendable.

This patch was released by @0xTim

Full Changelog: 4.8.1...4.8.2

4.8.1 - Improve multiply-defined route error message

13 Oct 17:06
88077f2
Compare
Choose a tag to compare

What's Changed

Improve multiply-defined route error message by @gwynne in #127

The log message that appears when a route with the same path and method has been specified more than once is now more understandable.

This patch was released by @gwynne

Full Changelog: 4.8.0...4.8.1

4.8.0 - Use a Logger instead of `print()`

16 Aug 10:54
e0539da
Compare
Choose a tag to compare

What's Changed

Use a Logger instead of print() by @gwynne in #126

Fixes #125

Reviewers

Thanks to the reviewers for their help:

This patch was released by @gwynne

Full Changelog: 4.7.2...4.8.0

Make Parameters.allNames more compatible

28 Mar 14:36
611bc45
Compare
Choose a tag to compare
This patch was authored and released by @gwynne.

Apparently, the use of some Collection<String> is broken with some versions of Swift on macOS. This fix specifies an explicit concrete type instead, which is not API-breaking.

Add missing platform specifiers

21 Mar 21:56
bdc9c25
Compare
Choose a tag to compare
This patch was authored and released by @gwynne.

Match Vapor's support

Make set of found parameter names from a route more easily accessible

20 Mar 12:03
80d9235
Compare
Choose a tag to compare

4.6.0

29 Jun 14:35
ffac7b3
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 4.5.0...4.6.0

Pass a `Logger` to `Parameters`

18 May 11:37
9e181d6
Compare
Choose a tag to compare
This patch was authored by @BennyDeBock and released by @0xTim.

Adds SwiftLog as a dependency.

Adds a Logger to Parameters and a new initialiser to pass in your own Logger. This allows errors to be logged out.