diff --git a/caddy.go b/caddy.go index 0cd342abc..ea7ce78b3 100644 --- a/caddy.go +++ b/caddy.go @@ -1,3 +1,16 @@ +// Package caddy implements the Caddy server manager. +// +// To use this package: +// +// 1. Set the AppName and AppVersion variables. +// 2. Call LoadCaddyfile() to get the Caddyfile. +// Pass in the name of the server type (like "http"). +// 3. Call caddy.Start() to start Caddy. You get back +// an Instance, on which you can call Restart() to +// restart it or Stop() to stop it. +// +// You should call Wait() on your instance to wait for +// all servers to quit before your process exits. package caddy import ( diff --git a/caddyhttp/httpserver/plugin.go b/caddyhttp/httpserver/plugin.go index 881fd8127..9c8c57b06 100644 --- a/caddyhttp/httpserver/plugin.go +++ b/caddyhttp/httpserver/plugin.go @@ -343,6 +343,8 @@ var directives = []string{ "jsonp", // github.com/pschlump/caddy-jsonp "upload", // blitznote.com/src/caddy.upload "internal", + "pprof", + "expvar", "proxy", "fastcgi", "websocket", diff --git a/caddytls/tls.go b/caddytls/tls.go index 601556a11..a146004f5 100644 --- a/caddytls/tls.go +++ b/caddytls/tls.go @@ -1,6 +1,17 @@ // Package caddytls facilitates the management of TLS assets and integrates // Let's Encrypt functionality into Caddy with first-class support for -// creating and renewing certificates automatically. +// creating and renewing certificates automatically. It also implements +// the tls directive. +// +// This package is meant to be used by Caddy server types. To use the +// tls directive, a server type must import this package and call +// RegisterConfigGetter(). The server type must make and keep track of +// the caddytls.Config structs that this package produces. It must also +// add tls to its list of directives. When it comes time to make the +// server instances, the server type can call MakeTLSConfig() to convert +// a []caddytls.Config to a single tls.Config for use in tls.NewListener(). +// It is also recommended to call RotateSessionTicketKeys() when +// starting a new listener. package caddytls import ( diff --git a/dist/CHANGES.txt b/dist/CHANGES.txt index 520fa0a5d..51531c52f 100644 --- a/dist/CHANGES.txt +++ b/dist/CHANGES.txt @@ -1,7 +1,21 @@ CHANGES - -- ... +0.9 +- New core +- New experimental QUIC support with -quic flag (HTTPS only) +- New -type flag to specify other server type +- Moved ~/.caddy/letsencrypt to ~/.caddy/acme and re-organized assets +- Moved caddy package to top level folder, and pushed main to subfolder +- Changed -directives flag to -plugins +- Site addresses can have paths +- Site addresses can make some use of wildcards in domains +- Removed -restart option (all restarts happen in-process) +- markdown: Overhauled; removed site generation features +- proxy: More control of headers +- proxy: Specify multiple upstreams with optional port ranges +- tls: Support for ACME DNS challenge across 10 providers +- tls: Generate self-signed certificates in memory +- tls: Support for TLS-SNI challenge during restarts 0.8.3 (April 26, 2016) @@ -55,7 +69,7 @@ CHANGES - Dozens of bug fixes, improvements, and more tests across the board -0.8.0 (December 4, 2015) +0.8 (December 4, 2015) - HTTPS by default via Let's Encrypt (certs & keys are fully managed) - Graceful restarts (on POSIX-compliant systems) - Major internal refactoring to allow use of Caddy as library @@ -155,7 +169,7 @@ CHANGES - tls: Client authentication -0.7.0 (May 25, 2015) +0.7 (May 25, 2015) - New directive 'internal' to protect resources with X-Accel-Redirect - New -version flag to show program name and version - core: Fixed escaped backslash characters inside quoted strings @@ -173,7 +187,7 @@ CHANGES - Other internal improvements that are not user-facing (more tests, etc.) -0.6.0 (May 7, 2015) +0.6 (May 7, 2015) - New directive 'git' to automatically pull changes - New directive 'bind' to override host server binds to - New -root flag to specify root path to default site @@ -208,5 +222,5 @@ CHANGES - fastcgi: Fix for handling errors that come from responder -0.5.0 (April 28, 2015) +0.5 (April 28, 2015) - Initial release