Scott Mebberson
72e7edda1f
map: Clarified how destination values should be formatted ( #5156 )
2022-10-18 18:14:53 -06:00
Matt Holt
5e52bbb136
map: Remove infinite recursion check ( #5094 )
...
It was not accurate. Placeholders could be used in outputs that are
defined in the same mapping as long as that placeholder does not do the
same.
A more general solution would be to detect it at run-time in the
replacer directly, but that's a bit tedious
and will require allocations I think.
A better implementation of this check could still be done, but I don't
know if it would always be accurate. Could be a "best-effort" thing?
But I've also never heard of an actual case where someone configured
infinite recursion...
2022-09-29 12:46:38 -06:00
Will Norris
61822f129b
caddyhttp: replace placeholders in map defaults ( #5081 )
...
This updates the map directive to replace placeholders in default values
in the same way as matched values.
2022-09-28 13:38:20 -06:00
Matthew Holt
73d4a8ba02
map: Coerce val to string, fix #4987
...
Also prevent infinite recursion, and enforce placeholder syntax.
2022-09-01 21:15:44 -06:00
Francis Lavoie
141872ed80
chore: Bump up to Go 1.19, minimum 1.18 ( #4925 )
2022-08-02 16:39:09 -04:00
Francis Lavoie
f7be0ee101
map: Prevent output destinations overlap with Caddyfile shorthands ( #4657 )
2022-05-06 10:25:31 -06:00
Matthew Holt
55b4c12e04
map: Evaluate placeholders in output vals ( #4650 )
2022-03-21 17:05:38 -06:00
Francis Lavoie
c5fffb4ac2
caddyfile: Support for raw token values; improve map
, expression
( #4643 )
...
* caddyfile: Support for raw token values, improve `map`, `expression`
* Applied code review comments
* Rename RawVal to ValRaw
Co-authored-by: Matthew Holt <mholt@users.noreply.github.com>
2022-03-18 15:08:23 -06:00
Matthew Holt
93c99f6734
map: Support numeric and bool types with Caddyfile
...
Based on caddyserver/website#221
2022-03-17 17:53:32 -06:00
Matthew Holt
a2119c09e9
map: Fix 95c03506
(avoid repeated expansions)
2021-10-19 12:25:36 -06:00
Matthew Holt
95c035060f
map: Fix regex mappings
...
It didn't really make sense how we were doing them before. See https://caddy.community/t/map-directive-and-regular-expressions/13866/6?u=matt
2021-10-13 17:58:20 -06:00
Rajat Jain
802f80c382
map: Accept regex substitution in outputs ( #3991 )
...
* Replace placeholders with regex groups
* using Matcher methods
* test added
* linting fix
* Revert "linting fix"
This reverts commit cafd7296f4
.
* Revert "test added"
This reverts commit 3a76cc7b0b
.
* Revert "using Matcher methods"
This reverts commit cc34337b8e
.
* tests added
2021-03-10 14:22:33 -07:00
Matthew Holt
58e83a811b
map: Add missing json struct tag
2021-01-16 09:56:06 -07:00
Matthew Holt
ef8a372a1c
map: Bug fixes; null literal with hyphen in Caddyfile
2020-10-02 16:08:28 -06:00
Matthew Holt
0fc47e8357
map: Apply default if mapped output is nil
2020-10-02 15:23:52 -06:00
Matthew Holt
25d2b4bf29
map: Reimplement; multiple outputs; optimize
2020-10-02 14:23:56 -06:00
Mark Sargent
6004d3f779
caddyhttp: Add 'map' handler ( #3199 )
...
* inital map implementation
* resolve the value during middleware execution
* use regex instead
* pr feedback
* renamed mmap to maphandler
* refactored GetString implementation
* fixed mispelling
* additional feedback
2020-06-26 15:12:37 -06:00