v2.0.0

caddyserver/caddyv2.0.0May 4, 2020by github-actions[bot]

AI Summary

This is the stable production release of Caddy 2, focusing on stability and documentation while requiring Go modules for source builds.

Key Highlights

  • Production-ready Caddy 2 with a focus on stability.
  • Requirement for Go modules to build Caddy from source.
  • Improved access logging and listener overlap detection fixes.

Breaking Changes

  • Go modules are now required to build Caddy from source.

New Features

  • Split path for file matcher
  • Access logging improvements
  • Listener overlap detection fix
  • TLS parsing improvements

Full Release Notes

šŸŽ‰ It's here! Caddy 2 is ready for production. **[Check out the v2 landing page!](https://caddyserver.com/v2)**

šŸ’š **Please consider [sponsoring](https://github.com/sponsors/mholt) - I work on this full-time, and it would not be possible without continued company and individual sponsors, thank you!**
 
We recommend all users begin to [upgrade](https://caddyserver.com/docs/v2-upgrade). Please spend time in the [documentation](https://caddyserver.com/docs/). We've worked hard to make everything as clear and simple as possible. Once you have tested Caddy 2, deploy it into production. We think you'll be very pleased with the results.

Keep in mind that this is just the beginning: "2.0" does not mean the software is perfect, only that it is stable. Its readiness is guided by your feedback! We will continue to develop features, quality-of-life improvements, and bug fixes (2.1 is already slated to have [30+ improvements](https://github.com/caddyserver/caddy/milestone/36))

Thank you to everyone in the community who helpfully reported bugs and contributed over the past year!

**[See all commits since RC 3 here.](https://github.com/caddyserver/caddy/compare/v2.0.0-rc.3...v2.0.0)**

### Support:

- [Community forum](https://caddy.community/) to ask questions, get community support, and lend your help
- [Issue tracker](https://github.com/caddyserver/caddy/issues) for bug reports and dev discussion

### Resources:

- [Getting Started](https://caddyserver.com/docs/getting-started)
- [Full documentation](https://caddyserver.com/docs/)
- [List of community modules](https://caddy.community/t/list-of-caddy-2-modules/7839?u=matt)
- [Extending Caddy](https://caddyserver.com/docs/extending-caddy)


## Changelog

9a572635 admin: Close admin endpoint when shutting down (fixes #3269)
f5ccb904 admin: Disable host checking if wildcard interface is specified
5ae1a561 caddyhttp: Add split_path to file matcher (used by php_fastcgi) (#3302)
f931c26f caddyhttp: Better duration logging
ebf07f85 caddyhttp: Fix auto redirects for catch-all HTTPS sites
bacf50a5 caddyhttp: Fix common_log format's user ID placeholder (#3300)
83c85c53 caddyhttp: Fix listener overlap detection on Linux
026937fa caddyhttp: Fix trailers when recording responses (fixes #3236)
10db5702 caddyhttp: General improvements to access logging (#3301)
a1796c2f caddytls: Adjust DNS challenge structure; clarify some docs
8e426610 caddytls: Finish upgrading to libdns DNS providers for ACME challenges
86a4f2c9 caddytls: Fix namespace tls.dns -> dns.providers
c11d0e47 cmd: Clean up, simplify reverse proxy command; fix some edge cases
100d19e3 dangit, of course I would bork my git commit
1fa8c185 go.mod: Remove DNSProviderMaker interface; update to lego 3.6
2609a728 go.mod: Update dependencies including CertMagic (fixes #3202)
97ed9e11 httpcaddyfile: Add nil check to prevent panic, fix validation logic
829e36d5 httpcaddyfile: Don't lowercase placeholder contents (fixes #3264)
bca610fb httpcaddyfile: Minor fixes to parsing storage options
a77bd1d8 httpcaddyfile: Update tls parsing for DNS providers
295604d6 httpcaddyfile: Why was this code repeated??
0798459e readme: Fix broken links (#3283)
1b061815 reverseproxy: Don't forget to provision embedded headers handler
a507a5bb reverseproxy: Remove circuitbreaker module (see #3331)
76bbb473 reverseproxy: Set X-Forwarded-Proto (closes #3275) (#3276)
da8686c4 reverseproxy: always set req.URL.Host with upstream (#3297)