Releases: canonical/pebble
v1.22.2: update golang.org/x packages
This release updates the golang.org/x to quiet security advisories (GHSA-qxp5-gwg8-xv66 may affect Pebble as it uses HTTP). Thanks @miketonks for the contribution (#630).
Full Changelog: v1.22.1...v1.22.2
v1.19.2: avoid panic when Pebble restarts after stop-checks
This is a bugfix release on the 1.19-maintenance branch that prevents a panic when the Pebble daemon restarts after a stop-checks operation (#625).
Full Changelog: v1.19.1...v1.19.2
v1.22.1: avoid panic when Pebble restarts after stop-checks
This is a bugfix release that prevents a panic when the Pebble daemon restarts after a stop-checks operation (#625).
It also includes a minor change to the client
package to always add Content-Type: application/json
to requests (#619), and an update to the docs starter pack and build scripts (#615).
Full Changelog: v1.22.0...v1.22.1
v1.22.0: fix pruning of changes and notices, TLS infra
In addition to a fix for how old changes and notices are pruned, this release adds support for identity keys, TLS key pairs, and basic HTTPS support for the pebble run
server. Note that at this point the TLS features are primarily behind-the-scenes changes intended for projects that use Pebble -- you can use Pebble itself over HTTPS with curl -k
, but not properly with domain/certificate verification.
What's Changed
- feat(idkey): add identity key [1/4]in #605
- feat(tls): add TLS keypair manager [2/4] in #596
- feat(https): add https API server [3/4] in #599
- feat(client): add TLS and basic auth support [4/4] in #604
- feat: add https-address to /v1/system-info response in #622
- fix: when pruning changes preserve referential integrity for notices in #613
- test: fix tests when run on timezones west of UTC in #616
- docs: document how to check health based on logs in #607
- docs: page auto and system dark mode in #617
Full Changelog: v1.21.0...v1.22.0
v1.19.1: fix to prune notices along with changes
This patch release includes #613, a fix to also prune notices when pruning changes, keeping referential integrity within the state JSON.
Full Changelog: v1.19.0...v1.19.1
v1.21.0: http-address in /v1/system-info
This release adds the http-address
to the /v1/system-info
API, as well as several small fixes and doc improvements:
- feat: add http-address to /v1/system-info in #606
- fix: tighten permissions of --create-dirs directory from 0o755 to 0o700 in #600
- docs: document how to tail file logs in #598
Full Changelog: v1.20.0...v1.21.0
v1.20.0: PEBBLE_VERBOSE, pebble check --refresh, Go 1.24
This release adds several new features:
PEBBLE_VERBOSE
to enablepebble run
orpebble enter
's verbose mode with an environment variable instead of only the command-line option. This is equivalent to--verbose
, but for when you don't have the ability to modify the command line. #576- The
pebble check
command, with a--refresh
option to run a health check immediately. This is useful for diagnosing an individual check. #574 and #577 - A new plan section called
workloads
, primarily for projects that import Pebble. #571
The release also fixes a panic in HTTP-based health checks with invalid URLs (#580), and adds several documentation and testing improvements.
This release also updates the Go version to Go 1.24 now that 1.22 is end-of-life. #585
Full Changelog: v1.19.0...v1.20.0
v1.19.0: metrics endpoint, basic auth, start/stop checks
This is a minor release with some useful new features:
- A
startup
field for checks, and the ability to start and stop checks (#560) - A new
basic
type identity for Basic HTTP authentication (#563) - A metrics endpoint at
/v1/metrics
in OpenMetrics/Prometheus format, providing metrics for services and checks (#519)
Full Changelog: v1.18.0...v1.19.0
v1.18.0: ExternalMode, UID-only form
This release adds a few minor features:
ExternalMode
reboot, added by @anpep in #529.- Support UID-only form in
NormalizeUidGid
for services and exec, added by @james-garner-canonical in #553. This was James' first contribution to Pebble -- thanks!
In addition, @IronCore864 refactored client code and tests to use the Requester
interface in #549
This release also includes many documentation improvements from @IronCore864 and @dwilding. See our documentation site.
Full Changelog: v1.17.0...v1.18.0
v1.17.0: restart services that fail within 1s "okay delay", and more
The main user-facing feature this release adds is that Pebble will now auto-restart services that fail to start within the 1-second "okay delay" time window. Previously the user would have to re-start
these manually. The API (and CLI) still returns an error in this case, with a message indicating it will restart, for example "service start attempt: exited quickly with code 1, will restart".
The release also adds support for customisable plan sections (for projects that import and build on top of Pebble).
It also fixes several bugs, including a panic during start with certain configurations.
All changes:
-
feat(planstate): add plan section support by @flotter in #489
-
feat(plan): add plan sub-directory support by @flotter in #509
-
feat: set home when user is set by @IronCore864 in #521
-
feat: restart services failed within okay delay by @IronCore864 in #520
-
fix: allow stopping services in "starting" state by @IronCore864 in #503
-
fix: ring buffer deadlock by @IronCore864 in #511
-
fix: allow stopping services in the starting state by @IronCore864 in #512
-
fix: mapping service to lanes when services are in random order by @IronCore864 in #528
-
test: make root tests easier to run by @IronCore864 in #501
-
test: add integration tests for "pebble run" by @IronCore864 in #497
-
chore: bump the snapcore/action-build action version by @tonyandrewmeyer in #505
-
chore: vuln scan failure workaround by @IronCore864 in #507
-
chore: revert changes introduced by allowing stopping services in starting state by @IronCore864 in #510
-
chore(client): fix typo in AutoStart doc comment by @benhoyt in #515
-
docs: add a security policy document by @tonyandrewmeyer in #504
-
docs: remove reusable content from search result by @IronCore864 in #516
-
docs: fix tutorial by including a status check after stopping http-server by @dwilding in #523
-
docs: make landing pages more informative by @dwilding in #524
-
docs: add snap as an installation method by @dwilding in #526
New Contributors
Full Changelog: v1.16.0...v1.17.0