Releases: pocketbase/pocketbase
v0.24.3 Release
v0.24.2 Release
To update the prebuilt executable you can run
./pocketbase update
.
- Fixed display fields extraction when there are multiple "Presentable"
relation
fields in a single related collection (#6229).
v0.24.1 Release
To update the prebuilt executable you can run
./pocketbase update
.
-
Added missing time macros in the UI autocomplete.
-
Fixed JSVM types for structs and functions with multiple generic parameters.
v0.24.0 Release
To update the prebuilt executable you can run
./pocketbase update
.
-
β οΈ Removed the "dry submit" when executing the collections Create API rule
(you can find more details why this change was introduced and how it could affect your app in https://github.com/pocketbase/pocketbase/discussions/6073).
For most users it should be non-breaking change, BUT if you have Create API rules that uses self-references or view counters you may have to adjust them manually.
With this change the "multi-match" operators are also normalized in case the targeted collection doesn't have any records
(or in other words,@collection.example.someField != "test"
will result totrue
ifexample
collection has no records because it satisfies the condition that all available "example" records mustn't havesomeField
equal to "test").
As a side-effect of all of the above minor changes, the record create API performance has been also improved ~4x times in high concurrent scenarios (500 concurrent clients inserting total of 50k records - old (58.409064001s) vs new (13.580098262s)). -
β οΈ Changed the type definition ofstore.Store[T any]
tostore.Store[K comparable, T any]
to allow support for custom store key types.
For most users it should be non-breaking change, BUT if you are callingstore.New[any](nil)
instances you'll have to specify the store key type, aka.store.New[string, any](nil)
. -
Added
@yesterday
and@tomorrow
datetime filter macros. -
Added
:lower
filter modifier (e.g.title:lower = "lorem"
). -
Added
mailer.Message.InlineAttachments
field for attaching inline files to an email (aka.cid
links). -
Added cache for the JSVM
arrayOf(m)
,DynamicModel
, etc. dynamicreflect
created types. -
Added auth collection select for the settings "Send test email" popup (#6166).
-
Added
record.SetRandomPassword()
to simplify random password generation usually used in the OAuth2 or OTP record creation flows.
The generated ~30 chars random password is assigned directly as bcrypt hash and ignores thepassword
field plain value validators like min/max length or regex pattern. -
Added option to list and trigger the registered app level cron jobs via the Web API and UI.
-
Added extra validators for the collection field
int64
options (e.g.FileField.MaxSize
) restricting them to the max safe JSON number (2^53-1). -
Added option to unset/overwrite the default PocketBase superuser installer using
ServeEvent.InstallerFunc
. -
Added
app.FindCachedCollectionReferences(collection, excludeIds)
to speedup records cascade delete almost twice for projects with many collections. -
Added
tests.NewTestAppWithConfig(config)
helper if you need more control over the test configurations likeIsDev
, the number of allowed connections, etc. -
Invalidate all record tokens when the auth record email is changed programmatically or by a superuser (#5964).
-
Eagerly interrupt waiting for the email alert send in case it takes longer than 15s.
-
Normalized the hidden fields filter checks and allow targetting hidden fields in the List API rule.
-
Fixed "Unique identify fields" input not refreshing on unique indexes change (#6184).
v0.23.12 Release
v0.23.11 Release
To update the prebuilt executable you can run
./pocketbase update
.
- Upgraded
golang.org/x/net
to 0.33.0 to fix CVE-2024-45338.
PocketBase uses the vulnerable functions primarily for the auto html->text mail generation, but most applications shouldn't be affected unless you are manually embedding unrestricted user provided value in your mail templates.
If you are extending PocketBase with Go and upgrading with go get -u
make sure to manually set in your go.mod the modernc.org/libc
indirect dependency to v1.55.3, aka. the exact same version the modernc.org/sqlite
driver is using.
v0.22.29 Release
- (Backported from v0.23.11) Upgraded
golang.org/x/net
to 0.33.0 to fix CVE-2024-45338.
PocketBase uses the vulnerable functions primarily for the auto html->text mail generation, but most applications shouldn't be affected unless you are manually embedding unrestricted user provided value in your mail templates.
v0.23.10 Release
To update the prebuilt executable you can run
./pocketbase update
.
-
Renew the superuser file token cache when clicking on the thumb preview or download link (#6137).
-
Upgraded
modernc.org/sqlite
to 1.34.3 to fix "disk io" error on arm64 systems.
If you are extending PocketBase with Go and upgrading withgo get -u
make sure to manually set in your go.mod themodernc.org/libc
indirect dependency to v1.55.3, aka. the exact same version the driver is using.
v0.22.28 Release
-
(Backported from v0.23.10) Renew the superuser file token cache when clicking on the thumb preview or download link (#6137).
-
(Backported from v0.23.10) Upgraded
modernc.org/sqlite
to 1.34.3 to fix "disk io" error on arm64 systems.
If you are extending PocketBase with Go and upgrading withgo get -u
make sure to manually set in your go.mod themodernc.org/libc
indirect dependency to v1.55.3, aka. the exact same version the driver is using.
v0.23.9 Release
To update the prebuilt executable you can run
./pocketbase update
.
- Replaced
strconv.Itoa
withstrconv.FormatInt
to avoid the int64->int conversion overflow on 32-bit platforms (#6132).