summaryrefslogtreecommitdiff
path: root/replacer.go
AgeCommit message (Collapse)Author
2020-02-25v2: 'log' directive for Caddyfile, and debug mode (#3052)Matt Holt
* httpcaddyfile: Begin implementing log directive, and debug mode For now, debug mode just sets the log level for all logs to DEBUG (unless a level is specified explicitly). * httpcaddyfile: Finish 'log' directive Also rename StringEncoder -> SingleFieldEncoder * Fix minor bug in replacer (when vals are empty)
2019-12-29Export Replacer and use concrete type instead of interfaceMatthew Holt
The interface was only making things difficult; a concrete pointer is probably best.
2019-12-17core: Add ReplaceFunc method to Replacer to allow dynamic replacementsMatthew Holt
2019-11-11core: Add tests to Replacer; fix panic (fixes #2852)Matthew Holt
2019-10-28v2: Logging! (#2831)Matt Holt
* logging: Initial implementation * logging: More encoder formats, better defaults * logging: Fix repetition bug with FilterEncoder; add more presets * logging: DiscardWriter; delete or no-op logs that discard their output * logging: Add http.handlers.log module; enhance Replacer methods The Replacer interface has new methods to customize how to handle empty or unrecognized placeholders. Closes #2815. * logging: Overhaul HTTP logging, fix bugs, improve filtering, etc. * logging: General cleanup, begin transitioning to using new loggers * Fixes after merge conflict
2019-10-10Miscellaneous cleanups / commentsMatthew Holt
2019-07-21Tests for replacer (#2675)Johannes Hörmann
* Tests for Replacer: Replacer.Set and Replacer.Delete * update replacer test to new implementation * fix replacer: counted position wrong if placeholder was found * fix replacer: found placeholder again, if it was a non-existing one * test with spaces between the placeholders as this could have a different behaviour * Tests for Replacer.Map * Tests for Replacer.Set: check also for something like {l{test1} This should be replaced as {lTEST1REPLACEMENT * fix replacer: fix multiple occurrence of phOpen sign * Tests for Replacer: rewrite Set and ReplaceAll tests to use implementation not interface * Tests for Replacer: rewrite Delete test to use implementation not interface * Tests for Replacer: rewrite Map tests to use implementation not interface * Tests for Replacer: add test for NewReplacer * Tests for Replacer: add test for default replacements * Tests for Replacer: fixed and refactored tests * Tests for Replacer: moved default replacement tests to New-test as new should return a replace with provider which defines global replacements
2019-07-16Performance improvements to Replacer implementation (placeholders) (#2674)Matt Holt
Closes #2673
2019-07-03Lowercase env var names in replacerMatthew Holt
2019-06-30Add licenseMatthew Holt
2019-06-14Rename caddy2 -> caddyMatthew Holt
Removes the version from the package name
2019-05-20Implement most of static file server; refactor and improve ReplacerMatthew Holt