-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(deps): update module github.com/pocketbase/pocketbase to v0.22.17 #42
Conversation
564be5e
to
4641076
Compare
4641076
to
f9ea798
Compare
f9ea798
to
4991fce
Compare
4991fce
to
28a6dc4
Compare
5507e41
to
ae1d2bf
Compare
ae1d2bf
to
4ed4e2d
Compare
55b5501
to
31d3ef6
Compare
0ffa802
to
c199353
Compare
c199353
to
6b3e243
Compare
9946bb7
to
b8d2f6d
Compare
4c9c1d9
to
db6c193
Compare
db6c193
to
251d150
Compare
251d150
to
02726d6
Compare
02726d6
to
0cb4582
Compare
c34b6d6
to
ff4d890
Compare
ff4d890
to
0e8c03b
Compare
ℹ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
d829946
to
fce0dd5
Compare
fce0dd5
to
1b62c14
Compare
1b62c14
to
b7ff315
Compare
b7ff315
to
c8f16eb
Compare
c8f16eb
to
040dd1e
Compare
|
040dd1e
to
d295177
Compare
d295177
to
5a396df
Compare
This PR contains the following updates:
v0.16.10
->v0.22.17
Release Notes
pocketbase/pocketbase (github.com/pocketbase/pocketbase)
v0.22.17
Compare Source
Updated the
editor
field to use the latest TinyMCE 6.8.4 and enabledconvert_unsafe_embeds:true
by default per the security advisories.The Admin UI shouldn't be affected by the older TinyMCE because we don't use directly the vulnerable options/plugins and we have a default CSP, but it is recommended to update even just for silencing the CI/CD warnings.
Disabled mouse selection when changing the sidebar width.
This should also fix the reported Firefox issue when the sidebar width "resets" on mouse release out of the page window.
Other minor improvements (updated the logs delete check and tests, normalized internal errors formatting, updated Go deps, etc.)
v0.22.16
Compare Source
Note that the previous versions correctly delete only the logs older than the configured setting but due to the typo the delete query is invoked unnecessary on each logs batch write.
v0.22.15
Compare Source
Added mutex to
tests.TestMailer()
to minimize tests data race warnings (#5157).Updated goja and the other Go dependencies.
Bumped the min Go version in the GitHub release action to Go 1.22.5 since it comes with
net/http
security fixes.v0.22.14
Compare Source
Added OAuth2 POST redirect support (in case of
response_mode=form_post
) to allow specifying scopes for the Apple OAuth2 integration.Note 1: If you are using the "Manual code exchange" flow with Apple (aka.
authWithOAuth2Code()
), you need to either update your customredirect handler to accept POST requests OR if you want to keep the old behavior and don't need the Apple user's email - replace in the Apple authorization url
response_mode=form_post
back toresponse_mode=query
.Note 2: Existing users that have already logged in with Apple may need to revoke their access in order to see the email sharing options as shown in this screenshot.
If you want to force the new consent screen you could register a new Apple OAuth2 app.
Just to be safe I've also published a GitHub security advisory (may take some time to show up in the related security databases).
In order to be exploited you must have both OAuth2 and Password auth methods enabled.
A possible attack scenario could be:
To prevent this for happening we now reset the password for this specific case if the previously created user wasn't verified (an exception to this is if the linking is explicit/manual, aka. when you send
Authorization:TOKEN
with the OAuth2 auth call).Additionally to warn users we now send an email alert in case the user has logged in with password but has at least one OAuth2 account linked. It looks something like:
Hello,
Just to let you know that someone has logged in to your Acme account using a password while you already have OAuth2 GitLab auth linked.
If you have recently signed in with a password, you may disregard this email.
If you don't recognize the above action, you should immediately change your Acme account password.
Thanks,
Acme team
The flow will be further improved with the ongoing refactoring and we will start sending emails for "unrecognized device" logins (OTP and MFA is already implemented and will be available with the next v0.23.0 release in the near future).
v0.22.13
Compare Source
Fixed rules inconsistency for text literals when inside parenthesis (#5017).
Updated Go deps.
v0.22.12
Compare Source
Fixed calendar picker grid layout misalignment on Firefox (#4865).
Updated Go deps and bumped the min Go version in the GitHub release action to Go 1.22.3 since it comes with some minor security fixes.
v0.22.11
Compare Source
v0.22.10
Compare Source
Updated the uploaded filename normalization to take double extensions in consideration (#4824)
Added Collection models cache to help speed up the common List and View requests execution with ~25%.
This was extracted from the ongoing work on #4355 and there are many other small optimizations already implemented but they will have to wait for the refactoring to be finalized.
v0.22.9
Compare Source
v0.22.8
Compare Source
Fixed '~' auto wildcard wrapping when the param has escaped
%
character (#4704).Other minor UI improvements (added
aria-expanded=true/false
to the dropdown triggers, added contrasting border around the default mail template btn style, etc.).Updated Go deps and bumped the min Go version in the GitHub release action to Go 1.22.2 since it comes with some
net/http
security and bug fixes.v0.22.7
Compare Source
Replaced the default
s3blob
driver with a trimmed vendored version to reduce the binary size with ~10MB.It can be further reduced with another ~10MB once we replace entirely the
aws-sdk-go-v2
dependency but I stumbled on some edge cases related to the headers signing and for now is on hold.Other minor improvements (updated GitLab OAuth2 provider logo #4650, normalized error messages, updated npm dependencies, etc.)
v0.22.6
Compare Source
role
,aria-label
,aria-hidden
attributes to some of the elements in attempt to better assist screen readers.v0.22.5
Compare Source
Minor test helpers fixes (#4600):
OnTerminate
hook onTestApp.Cleanup()
.tests.NewTestApp()
.Added more elaborate warning message when restoring a backup explaining how the operation works.
Skip irregular files (symbolic links, sockets, etc.) when restoring a backup zip from the Admin UI or calling
archive.Extract(src, dst)
because they come with too many edge cases and ambiguities.More details
This was initially reported as security issue (thanks Harvey Spec) but in the PocketBase context it is not something that can be exploited without an admin intervention and since the general expectations are that the PocketBase admins can do anything and they are the one who manage their server, this should be treated with the same diligence when using
scp
/rsync
/rclone
/etc. with untrusted file sources.It is not possible (or at least I'm not aware how to do that easily) to perform virus/malicious content scanning on the uploaded backup archive files and some caution is always required when using the Admin UI or running shell commands, hence the backup-restore warning text.
Or in other words, if someone sends you a file and tell you to upload it to your server (either as backup zip or manually via scp) obviously you shouldn't do that unless you really trust them.
PocketBase is like any other regular application that you run on your server and there is no builtin "sandbox" for what the PocketBase process can execute. This is left to the developers to restrict on application or OS level depending on their needs. If you are self-hosting PocketBase you usually don't have to do that, but if you are offering PocketBase as a service and allow strangers to run their own PocketBase instances on your server then you'll need to implement the isolation mechanisms on your own.
v0.22.4
Compare Source
Removed conflicting styles causing the detailed codeblock log data preview to not visualize properly (#4505).
Minor JSVM improvements:
$filesystem.fileFromUrl(url, optSecTimeout)
helper.FormData
interface and added support for sendingmultipart/form-data
requests with$http.send()
(#4544).v0.22.3
Compare Source
Fixed the z-index of the current admin dropdown on Safari (#4492).
Fixed
OnAfterApiError
debug lognil
error reference (#4498).Added the field name as part of the
@request.data.someRelField.*
join to handle the case when a collection has 2 or more relation fields pointing to the same place (#4500).Updated Go deps and bumped the min Go version in the GitHub release action to Go 1.22.1 since it comes with some security fixes.
v0.22.2
Compare Source
nullifyMisingField
resolver option to the query.v0.22.1
Compare Source
Updated the
editor
field to use the latest TinyMCE 6.8.4 and enabledconvert_unsafe_embeds:true
by default per the security advisories.The Admin UI shouldn't be affected by the older TinyMCE because we don't use directly the vulnerable options/plugins and we have a default CSP, but it is recommended to update even just for silencing the CI/CD warnings.
Disabled mouse selection when changing the sidebar width.
This should also fix the reported Firefox issue when the sidebar width "resets" on mouse release out of the page window.
Other minor improvements (updated the logs delete check and tests, normalized internal errors formatting, updated Go deps, etc.)
v0.22.0
Compare Source
Added Planning Center OAuth2 provider (#4393; thanks @alxjsn).
Admin UI improvements:
Added support for back/indirect relation
⚠️ To avoid excessive joins, the nested relations resolver is now limited to max 6 level depth (the same as
filter
/sort
(single and multiple).The syntax to reference back relation fields is
yourCollection_via_yourRelField.*
.expand
).Note that in the future there will be also more advanced and granular options to specify a subset of the fields that are filterable/sortable.
Added support for multiple back/indirect relation
expand
and updated the keys to use the_via_
reference syntax (yourCollection_via_yourRelField
).To minimize the breaking changes, the old parenthesis reference syntax (
yourCollection(yourRelField)
) will still continue to work but it is soft-deprecated and there will be a console log reminding you to change it to the new one._via_
in their name to avoid collisions with the back/indirect relation reference syntax.Added
jsvm.Config.OnInit
optional config function to allow registering custom Go bindings to the JSVM.Added
@request.context
rule field that can be used to apply a different set of constraints based on the API rule execution context.For example, to disallow user creation by an OAuth2 auth, you could set for the users Create API rule
@request.context != "oauth2"
.The currently supported
@request.context
values are:default
realtime
protectedFile
oauth2
Adjusted the
cron.Start()
to start the ticker at the00
second of the cron interval (#4394).Note that the cron format has only minute granularity and there is still no guarantee that the scheduled job will be always executed at the
00
second.Fixed auto backups cron not reloading properly after app settings change (#4431).
Upgraded to
⚠️ If you are using S3 for uploaded files or backups, please verify that you have a green check in the Admin UI for your S3 configuration (I've tested the new version with GCS, MinIO, Cloudflare R2 and Wasabi).
aws-sdk-go-v2
and added special handling for GCS to workaround the previous GCS headers signature issue that we had with v2.This should also fix the SVG/JSON zero response when using Cloudflare R2 (#4287, #2068, #2952).
Added
:each
modifier support forfile
andrelation
type fields (previously it was supported only forselect
type fields).Other minor improvements (updated the
ghupdate
plugin to use the configured executable name when printing to the console, fixed the error reporting ofadmin update/delete
commands, etc.).v0.21.3
Compare Source
Ignore the JS required validations for disabled OIDC providers (#4322).
Allow
HEAD
requests to the/api/health
endpoint (#4310).Fixed the
editor
field value when visualized inside the View collection preview panel.Manually clear all TinyMCE events on editor removal (workaround for tinymce#9377).
v0.21.2
Compare Source
Fixed
@request.auth.*
initialization side-effect which caused the current authenticated user email to not being returned in the user auth response (#2173).The current authenticated user email should be accessible always no matter of the
emailVisibility
state.Fixed
RecordUpsert.RemoveFiles
godoc example.Bumped to
NumCPU()+2
thethumbGenSem
limit as some users reported that it was too restrictive.v0.21.1
Compare Source
v0.21.0
Compare Source
Added Bitbucket OAuth2 provider (#3948; thanks @aabajyan).
Mark user as verified on confirm password reset (#4066).
If the user email has changed after issuing the reset token (eg. updated by an admin), then the
verified
user state remains unchanged.Added support for loading a serialized json payload for
multipart/form-data
requests using the special@jsonPayload
key.This is intended to be used primarily by the SDKs to resolve js-sdk#274.
Added graceful OAuth2 redirect error handling (#4177).
Previously on redirect error we were returning directly a standard json error response. Now on redirect error we'll redirect to a generic OAuth2 failure screen (similar to the success one) and will attempt to auto close the OAuth2 popup.
The SDKs are also updated to handle the OAuth2 redirect error and it will be returned as Promise rejection of the
authWithOAuth2()
call.Exposed
$apis.gzip()
and$apis.bodyLimit(bytes)
middlewares to the JSVM.Added
TestMailer.SentMessages
field that holds all sent test app emails until cleanup.Optimized the cascade delete of records with multiple
relation
fields.Updated the
serve
andadmin
commands error reporting.Minor Admin UI improvements (reduced the min table row height, added option to duplicate fields, added new TinyMCE codesample plugin languages, hide the collection sync settings when the
Settings.Meta.HideControls
is enabled, etc.)v0.20.7
Compare Source
v0.20.6
Compare Source
Fixed JSVM types generation for functions with omitted arg types (#4145).
Updated Go deps.
v0.20.5
Compare Source
v0.20.4
Compare Source
json
field changes that was causing View collection column expressions recognized asjson
to fail to resolve (#4072).v0.20.3
Compare Source
Fixed the
json
field query comparisons to work correctly with plain JSON values likenull
,bool
number
, etc. (#4068).Since there are plans in the future to allow custom SQLite builds and also in some situations it may be useful to be able to distinguish
NULL
from''
,for the
json
fields (and for any other future non-standard field) we no longer applyCOALESCE
by default, aka.:Dataset:
1) data: json(null)
2) data: json('')
Minor Go tests improvements
v0.20.2
Compare Source
Added
sleep(milliseconds)
JSVM binding.It works the same way as Go
time.Sleep()
, aka. it pauses the goroutine where the JSVM code is running.Fixed multi-line text paste in the Admin UI search bar (#4022).
Fixed the monospace font loading in the Admin UI.
Fixed various reported docs and code comment typos.
v0.20.1
Compare Source
Added
--dev
flag and its accompanyingapp.IsDev()
method (in place of the previously removed--debug
) to assist during development (#3918).The
--dev
flag prints in the console "everything" and more specifically:app.Logger().*
logs (debug, info, warning, error, etc.), no matter of the logs persistence settings in the Admin UIMinor Admin UI fixes:
error
label text wrapping.referer
(when it is from a different source) anddetails
labels in the logs listing.CAST(x as bool)
expressions.Replaced the default API tests timeout with a new
ApiScenario.Timeout
option (#3930).A negative or zero value means no tests timeout.
If a single API test takes more than 3s to complete it will have a log message visible when the test fails or when
go test -v
flag is used.Added timestamp at the beginning of the generated JSVM types file to avoid creating it everytime with the app startup.
v0.20.0
Compare Source
Added
expand
,filter
,fields
, custom query and headers parameters support for the realtime subscriptions.Requires JS SDK v0.20.0+ or Dart SDK v0.17.0+.
Generalized the logs to allow any kind of application logs, not just requests.
The new
app.Logger()
implements the standardlog/slog
interfaces available with Go 1.21.For better performance and to minimize blocking on hot paths, logs are currently written with
debounce and on batches:
Some notable log related changes:
_requests
table in favor of the generalized_logs
.Note that existing logs will be deleted!
Dao
log methods:app.IsDebug()
and the--debug
flag.This was done to avoid the confusion with the new logger and its debug severity level.
If you want to store debug logs you can set
-4
as min log level from the Admin UI.Refactored Admin UI Logs:
Added new
filesystem/System.Copy(src, dest)
method to copy existing files from one location to another.This is usually useful when duplicating records with
file
field(s) programmatically.Added
filesystem.NewFileFromUrl(ctx, url)
helper method to construct a*filesystem.BytesReader
file from the specified url.OAuth2 related additions:
Added new
PKCE()
andSetPKCE(enable)
OAuth2 methods to indicate whether the PKCE flow is supported or not.The PKCE value is currently configurable from the UI only for the OIDC providers.
This was added to accommodate OIDC providers that may throw an error if unsupported PKCE params are submitted with the auth request (eg. LinkedIn; see #3799).
Added new
displayName
field for eachlistAuthMethods()
OAuth2 provider item.The value of the
displayName
property is currently configurable from the UI only for the OIDC providers.Added
expiry
field to the OAuth2 user response containing the optional expiration time of the OAuth2 access token (#3617).Allow a single OAuth2 user to be used for authentication in multiple auth collection.
⚠️ Because now you can have more than one external provider with
collectionId-provider-providerId
pair,Dao.FindExternalAuthByProvider(provider, providerId)
method was removed in favour of the more genericDao.FindFirstExternalAuthByExpr(expr)
.Added
onlyVerified
auth collection option to globally disallow authentication requests for unverified users.Added support for single line comments (ex.
// your comment
) in the API rules and filter expressions.Added support for specifying a collection alias in
@collection.someCollection:alias.*
.Soft-deprecated and renamed
app.Cache()
withapp.Store()
.Minor JSVM updates and fixes:
Updated
$security.parseUnverifiedJWT(token)
and$security.parseJWT(token, key)
to return the token payload result as plain object.Added
$apis.requireGuestOnly()
middleware JSVM binding (#3896).Use
IS NOT
instead of!=
as not-equal SQL query operator to handle the cases when comparing with nullable columns or expressions (eg.json_extract
overjson
field).Based on my local dataset I wasn't able to find a significant difference in the performance between the 2 operators, but if you stumble on a query that you think may be affected negatively by this, please report it and I'll test it further.
Added
MaxSize
json
field option to prevent storing large json data in the db (#3790).Existing
json
fields are updated with a system migration to have a ~2MB size limit (it can be adjusted from the Admin UI).Fixed negative string number normalization support for the
json
field type.Trigger the
app.OnTerminate()
hook onapp.Restart()
call.A new bool
IsRestart
field was also added to thecore.TerminateEvent
event.Fixed graceful shutdown handling and speed up a little the app termination time.
Limit the concurrent thumbs generation to avoid high CPU and memory usage in spiky scenarios (#3794; thanks @t-muehlberger).
Currently the max concurrent thumbs generation processes are limited to "total of logical process CPUs + 1".
This is arbitrary chosen and may change in the future depending on the users feedback and usage patterns.
If you are experiencing OOM errors during large image thumb generations, especially in container environment, you can try defining the
GOMEMLIMIT=500MiB
env variable before starting the executable.Slightly speed up (~10%) the thumbs generation by changing from cubic (
CatmullRom
) to bilinear (Linear
) resampling filter (the quality difference is very little).Added a default red colored Stderr output in case of a console command error.
You can now also silence individually custom commands errors using the
cobra.Command.SilenceErrors
field.Fixed links formatting in the autogenerated html->text mail body.
Removed incorrectly imported empty
local('')
font-face declarations.v0.19.4
Compare Source
Fixed TinyMCE source code viewer textarea styles (#3715).
Fixed
text
field min/max validators to properly count multi-byte characters (#3735).Allowed hyphens in
username
(#3697).More control over the system fields settings will be available in the future.
Updated the JSVM generated types to use directly the value type instead of
* | undefined
union in functions/methods return declarations.v0.19.3
Compare Source
Added the release notes to the console output of
./pocketbase update
(#3685).Added missing documentation for the JSVM
$mails.*
bindings.Relaxed the OAuth2 redirect url validation to allow any string value (#3689; thanks @sergeypdev).
Note that the redirect url format is still bound to the accepted values by the specific OAuth2 provider.
v0.19.2
Compare Source
v0.19.1
Compare Source
Fixed
tokenizer.Scan()/ScanAll()
to ignore the separators from the default trim cutset.An option to return also the empty found tokens was also added via
Tokenizer.KeepEmptyTokens(true)
.This should fix the parsing of whitespace characters around view query column names when no quotes are used (#3616).
Fixed the
:excerpt(max, withEllipsis?)
fields
query param modifier to properly add space to the generated text fragment after block tags.v0.19.0
Compare Source
Added Patreon OAuth2 provider (#3323; thanks @ghostdevv).
Added mailcow OAuth2 provider (#3364; thanks @thisni1s).
Added support for
:excerpt(max, withEllipsis?)
fields
modifier that will return a short plain text version of any string value (html tags are stripped).This could be used to minimize the downloaded json data when listing records with large
editor
html values.Several Admin UI improvements:
date
field tooltip on hover.editor
field values by initially fetching only a partial of the records data (the complete record data is loaded on record preview/update).editor
field..woff
and.ttf
fonts and keep only.woff2
.Removed the explicit
Content-Type
charset from the realtime response due to compatibility issues with IIS (#3461).The
Connection:keep-alive
realtime response header was also removed as it is not really used with HTTP2 anyway.Added new JSVM bindings:
new Cookie({ ... })
constructor for creating*http.Cookie
equivalent value.new SubscriptionMessage({ ... })
constructor for creating a custom realtime subscription payload.$os.exec()
in favour of$os.cmd()
to make it more clear that the call only prepares the command and doesn't execute it.v0.18.10
Compare Source
Added global
raw
template function to allow outputting raw/verbatim HTML content in the JSVM templates (#3476).{{.description|raw}}
Trimmed view query semicolon and allowed single quotes for column aliases (#3450).
Single quotes are usually not a valid identifier quote characters, but for resilience and compatibility reasons SQLite allows them in some contexts where only an identifier is expected.
Bumped the GitHub action to use min Go 1.21.2 (the fixed issues are not critical as they are mostly related to the compiler/build tools).
v0.18.9
Compare Source
Fixed empty thumbs directories not getting deleted on Windows after deleting a record img file (#3382).
Updated the generated JSVM typings to silent the TS warnings when trying to access a field/method in a Go->TS interface.
v0.18.8
Compare Source
created
andupdated
fields asN/A
when the view query doesn't have them.v0.18.7
Compare Source
Fixed JS error in the Admin UI when listing records with invalid
relation
field value (#3372).This could happen usually only during custom SQL import scripts or when directly modifying the record field value without data validations.
Updated Go deps and the generated JSVM types.
v0.18.6
Compare Source
Return the response headers and cookies in the
$http.send()
result (#3310).Added more descriptive internal error message for missing user/admin email on password reset requests.
Updated Go deps.
v0.18.5
Compare Source
v0.18.4
Compare Source
\
) support in the Admin UI to allow usingselect
field values with comma (#2197).v0.18.3
Compare Source
Exposed a global JSVM
readerToString(reader)
helper function to allow reading Goio.Reader
values (#3273).Bumped the GitHub action to use min Go 1.21.1 for the prebuilt executable since it contains some minor
html/template
andnet/http
security fixes.v0.18.2
Compare Source
Prevent breaking the record form in the Admin UI in case the browser's localStorage quota has been exceeded when uploading or storing large
editor
values (#3265).Updated docs and missing JSVM typings.
Exposed additional crypto primitives under the
$security.*
JSVM namespace (#3273):v0.18.1
Compare Source
Added global
raw
template function to allow outputting raw/verbatim HTML content in the JSVM templates (#3476).{{.description|raw}}
Trimmed view query semicolon and allowed single quotes for column aliases (#3450).
Single quotes are usually not a valid identifier quote characters, but for resilience and compatibility reasons SQLite allows them in some contexts where only an identifier is expected.
Bumped the GitHub action to use min Go 1.21.2 (the fixed issues are not critical as they are mostly related to the compiler/build tools).
v0.18.0
Compare Source
Simplified the
serve
command to accept domain name(s) as argument to reduce any additional manual hosts setup that sometimes previously was needed when deploying on production (#3190).Added
fields
wildcard (*
) support.Added option to upload a backup file from the Admin UI (#2599).
Registered a custom Deflate compressor to speedup (nearly 2-3x) the backups generation for the sake of a small zip size increase.
Based on several local tests,
pb_data
of ~500MB (from which ~350MB+ are several hundred small files) results in a ~280MB zip generated for ~11s (previously it resulted in ~250MB zip but for ~35s).Added the application name as part of the autogenerated backup name for easier identification (#3066).
Added new
SmtpConfig.LocalName
option to specify a custom domain name (or IP address) for the initial EHLO/HELO exchange (#3097).This is usually required for verification purposes only by some SMTP providers, such as on-premise Gmail SMTP-relay.
Added
NoDecimal
number
field option.editor
field improvements:false
for new content).Added option to auto generate admin and auth record passwords from the Admin UI.
Added JSON validation and syntax highlight for the
json
field in the Admin UI (#3191).Added datetime filter macros:
// all macros are UTC based
@second - @now second number (0-59)
@minute - @now minute number (0-59)
@hour - @now hour number (0-23)
@weekday - @now weekday number (0-6)
@day - @now day number
@month - @now month number
@year - @now year number
@todayStart - beginning of the current day as datetime string
@todayEnd - end of the current day as datetime string
@monthStart - beginning of the current month as datetime string
@monthEnd - end of the current month as datetime string
@yearStart - beginning of the current year as datetime string
@yearEnd - end of the current year as datetime string
Added cron expression macros (#3132):
@yearly - "0 0 1 1 *"
@annually - "0 0 1 1 *"
@monthly - "0 0 1 * *"
@weekly - "0 0 * * 0"
@daily - "0 0 * * *"
@midnight - "0 0 * * *"
@hourly - "0 * * * *"
Dao.FindRecordsByFilter(collection, filter, sort, limit, offset, [params...])
.If you don't need an offset, you can set it to
0
.To minimize the footguns with
Dao.FindFirstRecordByFilter()
andDao.FindRecordsByFilter()
, the functions now supports an optional placeholder params argument that is safe to be populated with untrusted user input.The placeholders are in the same format as when binding regular SQL parameters.
Added JSVM
$mails.*
binds for the corresponding Go mails package functions.Added JSVM helper crypto primitives under the
$security.*
namespace:RelationOptions.DisplayFields
in favor of the newSchemaField.Presentable
option to avoid the duplication when a single collection is referenced more than once and/or by multiple other collections.LastVerificationSentAt
andLastResetSentAt
fields only after a successfull email send (#3121).fields
json transformations for non 20x responses (#3176).tests.ApiScenario
struct:The
ApiScenario.AfterTestFunc
now receive as 3rd argument*http.Response
pointer instead of*echo.Echo
as the latter is not really useful in this context.The
ApiScenario.TestAppFactory
now accept the test instance as argument and no longer expect an error as return result (#3025).Returning a
nil
app instance from the factory results in test failure. You can enforce a custom test failure by callingt.Fatal(err)
inside the factory.Bumped the min required TLS version to 1.2 in order to improve the cert reputation score.
Reduced the default JSVM prewarmed pool size to 25 to reduce the initial memory consumptions (you can manually adjust the pool size with
--hooksPool=50
if you need to, but the default should suffice for most cases).Update
gocloud.dev
dependency to v0.34 and explicitly set the newNoTempDir
fileblob option to prevent the cross-device link error introduced with v0.33.Other minor Admin UI and docs improvements.
v0.17.7
Compare Source
Fixed the autogenerated
down
migrations to properly revert the old collection rules in case a change was made inup
(#3192; thanks @impact-merlinmarek).Existing
down
migrations can't be fixed but that should be ok as usually thedown
migrations are rarely used against prod environments since they can cause data loss and, while not ideal, the previous old behavior of always setting the rules tonull/nil
is safer than not updating the rules at all.Updated some Go deps.
v0.17.6
Compare Source
require()
file path error when using Windows-style path delimiters (#3163).v0.17.5
Compare Source
v0.17.4
Compare Source
Fixed Views record retrieval when numeric id is used (#3110).
With this fix we also now properly recognize
CAST(... as TEXT)
andCAST(... as BOOLEAN)
astext
andbool
fields.Fixed
relation
"Cascade delete" tooltip message (#3098).Fixed jsvm error message prefix on failed migrations (#3103; thanks @nzhenev).
Disabled the initial Admin UI admins counter cache when there are no initial admins to allow detecting externally created accounts (eg. with the
admin
command) (#3106).Downgraded
google/go-cloud
dependency to v0.32.0 until v0.34.0 is released to prevent theos.TempDir
cross-device link
errors as too many users complained about it.v0.17.3
Compare Source
Fixed Docker
cross-device link
error when creatingpb_data
backups on a local mounted volume (#3089).Fixed the error messages for relation to views (#3090).
Always reserve space for the scrollbar to reduce the layout shifts in the Admin UI records listing due to the deprecated
overflow: overlay
.Enabled lazy loading for the Admin UI thumb images.
v0.17.2
Compare Source
Soft-deprecated
$http.send({ data: object, ... })
in favour of$http.send({ body: rawString, ... })
to allow sending non-JSON body with the request (#3058).
The existing
data
prop will still work, but it is recommended to usebody
instead (to send JSON you can useJSON.stringify(...)
as body value).Added
core.RealtimeConnectEvent.IdleTimeout
field to allow specifying a different realtime idle timeout duration per client basis (#3054).Fixed
apis.RequestData
deprecation log note (#3068; thanks @gungjodi).v0.17.1
Compare Source
Use relative path when redirecting to the OAuth2 providers page in the Admin UI to support subpath deployments (#3026; thanks @sonyarianto).
Manually trigger the
OnBeforeServe
hook fortests.ApiScenario
(#3025).Trigger the JSVM
cronAdd()
handler only on appserve
to prevent unexpected (and eventually duplicated) cron handler calls when custom console commands are used (#3024).The
console.log()
messages are now written to thestdout
instead ofstderr
.v0.17.0
Compare Source
*If you find any typos or issues with the docs please report them in
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.