Commit graph

281 commits

Author SHA1 Message Date
Ilmo Raunio
8a86701902 Allow path conflict resolution with :conflicting 2019-11-13 22:49:21 +02:00
Tommi Reiman
c23f591283 0.3.10 2019-10-08 10:28:25 +03:00
Alexander Kiel
a19849fe58 Make Map Destructuring of Namespaced Keys more Beautiful
It's possible to put the :keys keyword in the namespace of the keys one likes to
destructure. With that one can use symbols in the vector again. One advantage of
having symbols is, that Cursive grays them out if not used. I found two
occurrences of unused destructured keys.
2019-07-13 17:02:41 +03:00
Tommi Reiman
2e85f44a7e 0.3.9 2019-06-16 20:20:49 +03:00
Tommi Reiman
dd7a01b1bc 0.3.8 2019-06-15 11:49:45 +03:00
Tommi Reiman
46897f3927 Update docs 2019-06-09 20:46:20 +03:00
Tommi Reiman
c9281f0e89 support :parameter-syntax option in router 2019-06-09 20:29:03 +03:00
Tommi Reiman
12543b1c30 0.3.7 2019-05-25 16:00:45 +03:00
Tommi Reiman
a314e06887 0.3.6 2019-05-23 14:37:58 +03:00
Tommi Reiman
568dbad3a3 0.3.5 2019-05-22 21:25:56 +03:00
Tommi Reiman
4178acde5f Make Trie$Match immutable 2019-05-22 21:10:51 +03:00
Tommi Reiman
60ee39bd53 Trie$Match is mutable, fixes #277 2019-05-22 16:39:37 +03:00
Tommi Reiman
3381fe34e5 0.3.4 2019-05-20 20:14:14 +03:00
Tommi Reiman
32fced15e8 Release 0.3.3 2019-05-16 07:03:17 +03:00
Tommi Reiman
7e7b57c913 Add ex-message shim 2019-05-16 06:51:10 +03:00
Tommi Reiman
ad0bc7e013 Better errors for route-data merge errors 2019-05-15 22:54:35 +03:00
Tommi Reiman
2e7729349e 0.3.2 2019-05-13 17:06:37 +03:00
Tommi Reiman
419dd24316 Route-data validation docs 2019-05-11 22:31:58 +03:00
Tommi Reiman
e70837b140
Merge pull request #263 from metosin/north
Closed spec validation demoed in Clojure/North (WIP)
2019-05-10 14:28:39 +03:00
Tommi Reiman
a9bdceeeb6 reitit.spec/wrap spec-tools.spec/closed 2019-05-01 22:40:44 +03:00
Tommi Reiman
c8eaa955c3 Revert fast params in a Trie 2019-05-01 22:40:44 +03:00
Tommi Reiman
1326d76936 Faster params in Trie 2019-05-01 22:40:44 +03:00
Tommi Reiman
68d68402d9 Fix Java Trie example 2019-05-01 22:40:44 +03:00
Tommi Reiman
674b60a124 spell-spec 2019-04-28 17:06:50 +03:00
Valtteri Harmainen
f7332d3bc4 Fix empty query params map resulting in redundant '?' in path 2019-04-27 08:22:08 +03:00
Tommi Reiman
a0d833e645 0.3.1 2019-03-18 08:27:25 +02:00
Tommi Reiman
d21dd03dfa 0.3.0 2019-03-17 14:22:15 +02:00
Tommi Reiman
72a0ad2a5b Push ns-records into user ns 2019-03-07 10:54:01 +02:00
Tommi Reiman
36634abd39 :reitit.trie/parameters option takes sequence of keys 2019-03-07 10:45:16 +02:00
Tommi Reiman
1d5d5f663b Support Clojure 1.9.0 2019-03-07 08:49:26 +02:00
Tommi Reiman
e41a50cb80 20% faster wildcard parameters with records 2019-03-07 08:20:41 +02:00
Tommi Reiman
55a5133e85 Rename :reitit.core/trie-compiler -> :reitit.trie/trie-compiler 2019-03-07 08:19:28 +02:00
Tommi Reiman
5ab1f2829e Decode in single sweep, 8% faster 2019-03-07 08:17:17 +02:00
Tommi Reiman
5b19298803 CatchAll matcher catch with empty parameter, fixes #230 2019-03-06 19:49:27 +02:00
Tommi Reiman
850b47134a Don't reorder routes with :linear-router, fixes #229 2019-03-06 19:24:16 +02:00
Tommi Reiman
76b90d3598 Document spec-tools change + cause reasoning 2019-03-04 09:41:15 +02:00
Tommi Reiman
dc34720fee Fixed based on Miikka's review 2019-03-03 21:55:39 +02:00
Tommi Reiman
a2843dd097 New reitit-dev module for pretty errors 2019-03-03 20:54:21 +02:00
Tommi Reiman
59560860d8 Finalize Trie & cleanup 2019-03-03 20:20:34 +02:00
Tommi Reiman
a44267ba85 Fix reflection warnings 2019-03-01 22:16:29 +02:00
Tommi Reiman
998bf4a0d4 Empty colon-params are ignored 2019-03-01 22:12:11 +02:00
Miikka Koskinen
680414a209 Point each project.clj to the git directory
This way the released JARs should include the git commit they were built
from.
2019-03-01 13:20:43 +02:00
Tommi Reiman
251f547b88 rebase-error-fix 2019-02-28 12:16:51 +02:00
Tommi Reiman
f0a6ceb837 rename internals for clarity 2019-02-28 12:12:28 +02:00
Tommi Reiman
3aae55bd8c Welcome TrieCompiler 2019-02-28 12:12:28 +02:00
Tommi Reiman
778a8b97b9 Review small fixes 2019-02-28 12:12:28 +02:00
Tommi Reiman
d0cfdf304a Polish 2019-02-28 12:12:28 +02:00
Tommi Reiman
e60d176a2d Validate after route conflicts 2019-02-28 12:12:28 +02:00
Tommi Reiman
9422cd28c1 create empty path-parameters at creation time, 266ns->251ns (-6%) 2019-02-28 12:12:28 +02:00
Tommi Reiman
950fef88d2 Use exception/fail! in all creation-time exceptions
... to be companioned with a slick error printer
2019-02-28 12:12:28 +02:00
Tommi Reiman
ad92c437e6 More dead code 2019-02-28 12:11:05 +02:00
Tommi Reiman
d68e1b81fb FIx cljs, welcome reitit.exception! 2019-02-28 12:11:05 +02:00
Tommi Reiman
ae1a8f7919 Fail fast with multiple terminators. 2019-02-28 12:11:05 +02:00
Tommi Reiman
df38a0de05 Test bracket syntax + fix trie conflicting rules 2019-02-28 12:11:05 +02:00
Tommi Reiman
659aac7fd0 Much faster without transients 2019-02-28 12:11:05 +02:00
Tommi Reiman
81b9bdceef Small improvement
* Sort linear routes secondary with static path length
* Unwrap data-matchers from linear-router
* Simplify StaticMatcher impl
2019-02-28 12:11:05 +02:00
Tommi Reiman
c302f795ab Remove dead code 2019-02-28 12:11:05 +02:00
Tommi Reiman
54d5550fae cljs trie 2019-02-28 12:11:05 +02:00
Tommi Reiman
5b9f90d283 ifs -> switch. maybe faster? 2019-02-28 12:11:05 +02:00
Tommi Reiman
2eb4513447 Initial pure-clojure impl 2019-02-28 12:11:05 +02:00
Tommi Reiman
cecd6cf526 Start working on cljs trie 2019-02-28 12:11:05 +02:00
Tommi Reiman
c87bc099b0 char-array is faster, re-run tests 2019-02-28 12:10:01 +02:00
Tommi Reiman
34d8cb0f57 Test with String path 2019-02-28 12:10:01 +02:00
Tommi Reiman
6f902d118a Free from the regex! 2019-02-28 12:10:01 +02:00
Tommi Reiman
8755e19f78 Cleanup 2019-02-28 12:10:01 +02:00
Tommi Reiman
42d6d0c78d Priorize trie based on depth 2019-02-28 12:10:01 +02:00
Tommi Reiman
4c0d2fb285 mega-insert for trie! 2019-02-28 12:10:01 +02:00
Tommi Reiman
8628f0cec6 Remove segment-rouiter code 2019-02-28 12:10:01 +02:00
Tommi Reiman
ce80f83319 :segment-router -> :trie-router 2019-02-28 12:10:01 +02:00
Tommi Reiman
08edbe5b01 . 2019-02-28 12:10:01 +02:00
Tommi Reiman
eaee4ca38d Implement catch-all from trie 2019-02-28 12:10:01 +02:00
Tommi Reiman
fe0ea19e31 Better perf with transient parameters 2019-02-28 12:10:01 +02:00
Tommi Reiman
f2d131a897 wip 2019-02-28 12:10:01 +02:00
Tommi Reiman
b1bef1c1cc Fix #216 2019-02-19 19:40:26 +02:00
Tommi Reiman
16b6b8ad9f
Merge pull request #210 from nilern/toposort
Middleware/interceptor dependency resolution algorithm
2019-02-03 15:05:44 +02:00
Tommi Reiman
d2d5019d0f 0.2.13 2019-01-26 16:20:19 +02:00
Tommi Reiman
b2cd7f37e2 Fix #209 2019-01-26 16:17:13 +02:00
Pauli Jaakkola
b02ccdd53b #33 Add dependency reolution algorithm. 2019-01-25 16:45:46 +02:00
Vincent Cantin
fdf249a959 Apply a change suggested by Miikka Koskinen. 2019-01-22 08:25:58 +08:00
Vincent Cantin
b77115850f Rewrote reitit.core/path-conflicting-routes using transducers. 2019-01-21 23:28:14 +08:00
Tommi Reiman
7ec5c79cad Release 0.2.12 2019-01-18 08:56:23 +02:00
Tommi Reiman
1e7b118ce4 Fix reflection & boxed-math warning, fixes #207 2019-01-18 08:51:43 +02:00
Tommi Reiman
d203832667 0.2.11 2019-01-17 19:43:45 +02:00
Tommi Reiman
ff20260f5f Fix scanner for cljs 2019-01-17 08:18:35 +02:00
Tommi Reiman
95ebdfa6a4 linear-router is backed by a segment-router 2019-01-17 08:13:25 +02:00
Tommi Reiman
b8d8286265 Fixes for the SegmentTrie 2019-01-15 22:13:12 +02:00
Tommi Reiman
5bd933a10c docs 2019-01-15 22:04:50 +02:00
Tommi Reiman
393049a772 Oh My Java: safe guard against index overflows. 2019-01-14 21:08:20 +02:00
Tommi Reiman
ffc6ba8053 Simplied Java, based on review 2019-01-14 16:39:00 +02:00
Tommi Reiman
75065b56e3 Public docs for reitit.segment 2019-01-14 16:38:45 +02:00
Tommi Reiman
406386e0f6 encode -> decode 2019-01-14 10:45:27 +02:00
Tommi Reiman
36f1df3867 Dead code 2019-01-14 10:45:27 +02:00
Tommi Reiman
3168747540 Fix cljs 2019-01-14 10:45:27 +02:00
Tommi Reiman
16499cceb1 Single wild optimization 2019-01-14 10:45:27 +02:00
Tommi Reiman
5079daa8f3 WIP 2019-01-14 10:45:27 +02:00
Tommi Reiman
93bcc5dad8 Trie -> SegmentTrie 2019-01-14 10:45:27 +02:00
Tommi Reiman
54aded4442 Dead code 2019-01-14 10:45:27 +02:00
Tommi Reiman
80dea6cfef Snappier Trie 2019-01-14 10:45:27 +02:00
Tommi Reiman
3f86e24b89 faster split 2019-01-14 10:45:27 +02:00
Tommi Reiman
e1925c8462 . 2019-01-14 10:45:27 +02:00