PocketBase v0.16.0stable Released May 21, 2023
Impact Score: 5/10

PocketBase: v0.16.0 Release

Source available โ€” automated, not human-reviewed

Component: pocketbase ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Compatibility not verified โ€” check source notes
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

PocketBase v0.16.0. Source highlight: Added automated backups (_+ cron rotation_) APIs and UI for the `pb_data` directory.

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โœจ New Features & Capabilities (6)

  • Added automated backups (_+ cron rotation_) APIs and UI for the `pb_data` directory.
  • Added option to limit the returned API fields using the `?fields` query parameter.
  • Added new `./pocketbase update` command to selfupdate the prebuilt executable (with option to generate a backup of your `pb_data`).
  • Added new `./pocketbase admin` console command:
  • Added `apis.Serve(app, options)` helper to allow starting the API server programmatically.
  • Added new `tools/archive` helper subpackage for managing archives (_currently works only with zip_).
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
- Added automated backups (_+ cron rotation_) APIs and UI for the `pb_data` directory. The backups can be also initialized programmatically using `app.CreateBackup("backup.zip")`. There is also experimental restore method - `app.RestoreBackup("backup.zip")` (_currently works only on UNIX systems as it relies on execve_). The backups can be stored locally or in external S3 storage (_it has its own configuration, separate from the file uploads storage filesystem_). - Added option to limit the returned API fields using the `?fields` query parameter. The "fields picker" is applied for `SearchResult.Items` and every other JSON response. For example: ```js // original: {"id": "RECORD_ID", "name": "abc", "description": "...something very big...", "items": ["id1", "id2"], "expand": {"items": [{"id": "id1", "name": "test1"}, {"id": "id2", "name": "test2"}]}} // output: {"name": "abc", "expand": {"items": [{"name": "test1"}, {"name": "test2"}]}} const result = await pb.collection("example").getOne("RECORD_ID", { expand: "items", fields: "name,expand.items.name", }) ``` - Added new `./pocketbase update` command to selfupdate the prebuilt executable (with option to generate a backup of your `pb_data`). - Added new `./pocketbase admin` console command: ```sh // creates new admin account ./pocketbase admin create [email protected] 123456890 // changes the password of an existing admin account ./pocketbase admin update [email protected] 0987654321 // deletes single admin account (if exists) ./pocketbase admin delete [email protected] ``` - Added `apis.Serve(app, options)` helper to allow starting the API server programmatically. - Updated the schema fields Admin UI for "tidier" fields visualization. - Updated the logs "real" user IP to check for `Fly-Client-IP` header and changed the `X-Forward-For` header to use the first non-empty leftmost-ish IP as it the closest to the "real IP". - Added new `tools/archive` helper subpackage for managing archives (_currently works only with zip_). - Added new `tools/cron` helper subpackage for scheduling task using cron-like syntax (_this eventually may get exported in the future in a separate repo_). - Added new `Filesystem.List(prefix)` helper to retrieve a flat list with all files under the provided prefix. - Added new `App.NewBackupsFilesystem()` helper to create a dedicated filesystem abstraction for managing app data backups. - Added new `App.OnTerminate()` hook (_executed right before app termination, eg. on `SIGTERM` signal_). - Added `meta.isNew` to the OAuth2 auth JSON response to indicate a newly OAuth2 created PocketBase user. - Added `accept` file field attribute with the field MIME types ([#2466](https://github.com/pocketbase/pocketbase/pull/2466); thanks @Nikhil1920). - Added support for multiple files sort in the Admin UI ([#2445](https://github.com/pocketbase/pocketbase/issues/2445)). - Added support for multiple relations sort in the Admin UI.