Skip to content

Releases: ibraheemdev/matchit

0.8.3

30 Jun 21:32
Compare
Choose a tag to compare
  • Implemented ExactSizeIterator for ParamsIter (#54)

0.8.2

28 Apr 19:23
Compare
Choose a tag to compare
  • Add Router::remove.

0.8.1

28 Apr 19:22
Compare
Choose a tag to compare
  • Implement Debug for Router.

0.8.0

10 Mar 21:50
Compare
Choose a tag to compare

This a large release containing a number of new features and breaking changes.

  • The syntax for route parameters has been changed. Named parameters are now marked by {x} and catch-all parameters with {*x}. This allows for more flexibility and support for more complex routes in the future.
  • The { and } characters can be escaped with {{ and }} in static routes.
  • Trailing slash redirect support has been removed. Routes like /foo and /foo/ are now treated as completely disconnected. To achieve redirect behavior, routes must be registered twice, with and without a trailing slash.
  • Catch-all parameters without a leading slash are now supported (#42).

0.7.3

22 Sep 02:28
Compare
Choose a tag to compare
  • Better support for overlapping route parameters. The name of a route parameter no longer has any affect on conflicts, meaning routes like /user/:filter/search and /user/:id no longer overlap. (#13).

0.7.2

03 Aug 21:46
Compare
Choose a tag to compare
  • Fix false negative with overlapping wildcard/non-wildcard routes (#31).

0.7.1

03 Aug 21:45
Compare
Choose a tag to compare
  • Fix cargo license metadata.

0.7.0

09 Nov 03:36
Compare
Choose a tag to compare
  • Router::fix_path was removed
  • False positive MatchError::ExtraTrailingSlash bug was fixed (#22)

0.6.0

15 Jun 16:52
Compare
Choose a tag to compare
  • Routes like /*foo and /bar are now allowed to overlap, with /bar prioritized (#18)
  • The route /foo/ no longer matches /foo/*bar, and is allowed to exist on it's own
  • Route parameters for catchall routes no longer include the /, e.g. /foo.js will match /*filepath with a value of foo.js, not /foo.js
  • Error::MalformedPath was removed in favor of Error::InvalidCatchAll

0.5.0

09 Mar 02:40
Compare
Choose a tag to compare
  • Renamed Node to Router
  • Renamed Node::path_ignore_case to Router::fix_path
  • MatchError is now an enum, with more detailed trailing slash information.