package routes
Typed routing for OCaml applications
Install
Dune Dependency
Authors
Maintainers
Sources
routes-0.7.0.tbz
sha256=0b67b3837302ccea4c0d42e463f2edbde6408d651b5e65e74cd694656d44f0be
sha512=775b7037cda4f784b31942df2c96787f64c56ab95d9399ac6a59426958abb19b830e974daeae6a4e53c6d04f5f6673006af5e7cefd4db5a27b2bf66ce2ac17d6
doc/CHANGES.html
0.7.0
This is a breaking release:
- Reduce the number of combinators to two. '/' and '/?' (#80)
- Routes are now bi-directional. They can be used for matching, and for printing via a sprintf style function (#80)
- Its now possible to configure trailing slash on individual routes (#89)
- Remove HTTP method handling (#92)
- dune version needs to be >= 2.1
0.6.0
- Improve mdx test tules (#73, @NathanReb)
- Use github actions instead of travis ci (#70, #72)
- Get human readable route pattern from a route (#64, #74)
- Allow writing custom path match patterns (#76)
0.5.2
- Support custom HTTP methods via
Other of string
(#58 , @sazarkin)
0.5.1
- Allow user to decide if they want to keep or ignore trailing slash (#50)
0.5.0
- Flatten nested skip-left actions.
- Group routes based on the HTTP verb.
- Use a trie based path matcher.
- Add micro-benchmark suite.
0.4.2
- Specialize apply for
SkipLeft
parsers. - Re-write routes for better matches.
0.4.1
- Remove
stdcompat
(#33) - Add example using opium (#34)
0.4.0
- Switch to using an applicative functor as parser. (#27)
- Have a version of matching without HTTP methods. (#27)
- Tokenize the path parameters into list of strings. (#27)
- Add more tests for matchers. (#28)
s
now returns the string it matches, instead of discarding it. (#29)
0.3.0
- Extract string operations to its own module (#14)
- Drop dependency on astring (#16)
- Add pretty printers for utop (#18)
- Accept a request that is in-turn forwarded to handlers (#22)
- Use
mdx
to test examples in the readme file (#23)
0.2.0
- Switched to a GADT representation of routes
- Add support for using the same route type for both parsing and a sprintf like function
0.1.0
- Initial version of router
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>