zeekay
d02a70442d
migrate: pocketbase/dbx → hanzoai/dbx v1.12.0
...
Drop-in replacement — same API, same package name (dbx).
75 Go files updated. Zero pocketbase references in imports.
2026-03-02 13:54:55 -07:00
zeekay
6759ac456c
Rebrand PocketBase imports to Hanzo Base across all Go files
...
Replace github.com/pocketbase/pocketbase with github.com/hanzoai/base
in 106 Go source files. Keep pocketbase/dbx and pocketbase/tygoja as-is
(upstream dependencies). Add compiled binary to .gitignore. Include
realtime DX design document inspired by Convex patterns.
2026-02-27 09:43:39 -08:00
zeekay
4b229fae5b
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# core/record_field_resolver_multi_match.go
# ui/dist/assets/AuthMethodsDocs-ChShXLwE.js
# ui/dist/assets/AuthMethodsDocs-Cqvl0T_l.js
# ui/dist/assets/AuthMethodsDocs-DIqhS7qY.js
# ui/dist/assets/AuthRefreshDocs-CHakkNnn.js
# ui/dist/assets/AuthRefreshDocs-DLb1qree.js
# ui/dist/assets/AuthRefreshDocs-DXgrlMdk.js
# ui/dist/assets/AuthWithOAuth2Docs-Bl8VRxNv.js
# ui/dist/assets/AuthWithOAuth2Docs-DVBOel22.js
# ui/dist/assets/AuthWithOAuth2Docs-I213UiJ7.js
# ui/dist/assets/AuthWithOtpDocs-B9tL6gIN.js
# ui/dist/assets/AuthWithOtpDocs-C2PPm9-Z.js
# ui/dist/assets/AuthWithOtpDocs-qEMoMG3D.js
# ui/dist/assets/AuthWithPasswordDocs-B8JWDbPL.js
# ui/dist/assets/AuthWithPasswordDocs-BTHeYJwE.js
# ui/dist/assets/AuthWithPasswordDocs-D9rqgLpO.js
# ui/dist/assets/BatchApiDocs-BV4PYYXn.js
# ui/dist/assets/BatchApiDocs-DXa997am.js
# ui/dist/assets/BatchApiDocs-Di2Qe2dV.js
# ui/dist/assets/DeleteApiDocs-C3IINRwz.js
# ui/dist/assets/DeleteApiDocs-LfmVp4Uf.js
# ui/dist/assets/DeleteApiDocs-SU4XdGhJ.js
# ui/dist/assets/EmailChangeDocs-COx1USU5.js
# ui/dist/assets/EmailChangeDocs-D-qNHT_P.js
# ui/dist/assets/EmailChangeDocs-DpfXIE_V.js
# ui/dist/assets/FieldsQueryParam-BYe9ZK-G.js
# ui/dist/assets/FieldsQueryParam-L8vpHeF4.js
# ui/dist/assets/FieldsQueryParam-z0dGQ6uY.js
# ui/dist/assets/ListApiDocs-BCTT-AOz.js
# ui/dist/assets/ListApiDocs-C0_GwI7k.js
# ui/dist/assets/ListApiDocs-T9_aO-pW.js
# ui/dist/assets/PageInstaller-B22bivaN.js
# ui/dist/assets/PageInstaller-C0BBhyBx.js
# ui/dist/assets/PageInstaller-IYSwJhZW.js
# ui/dist/assets/PageOAuth2RedirectFailure-BjbpqlFj.js
# ui/dist/assets/PageOAuth2RedirectFailure-COyNF79R.js
# ui/dist/assets/PageOAuth2RedirectFailure-DPmGG9zv.js
# ui/dist/assets/PageOAuth2RedirectSuccess-6cMXLFAX.js
# ui/dist/assets/PageOAuth2RedirectSuccess-CdkCarGH.js
# ui/dist/assets/PageOAuth2RedirectSuccess-DSEIHeQL.js
# ui/dist/assets/PageRecordConfirmEmailChange-BYW-6ASg.js
# ui/dist/assets/PageRecordConfirmEmailChange-Bm1CIYvq.js
# ui/dist/assets/PageRecordConfirmEmailChange-BpaqOT4u.js
# ui/dist/assets/PageRecordConfirmPasswordReset--wx_u2lI.js
# ui/dist/assets/PageRecordConfirmPasswordReset-CoeY2Z_C.js
# ui/dist/assets/PageRecordConfirmPasswordReset-Ptya5bfe.js
# ui/dist/assets/PageRecordConfirmVerification-6xjF3T0O.js
# ui/dist/assets/PageRecordConfirmVerification-C1UTIIJh.js
# ui/dist/assets/PageRecordConfirmVerification-C4LixXvA.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-19z2IFg4.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-DwNi0ugQ.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-SMnDTRNi.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-BpDW217f.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-DK63qE6z.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-bG02qLIM.js
# ui/dist/assets/PasswordResetDocs-CE67mLC0.js
# ui/dist/assets/PasswordResetDocs-CHAK0vma.js
# ui/dist/assets/PasswordResetDocs-Dap-N4rx.js
# ui/dist/assets/RealtimeApiDocs-BooTSQCb.js
# ui/dist/assets/RealtimeApiDocs-CoHmYVEx.js
# ui/dist/assets/RealtimeApiDocs-D7ds3fHt.js
# ui/dist/assets/VerificationDocs-B42AIoCQ.js
# ui/dist/assets/VerificationDocs-BS7b11zH.js
# ui/dist/assets/VerificationDocs-ZhkdFVIl.js
# ui/dist/assets/ViewApiDocs-BXmRLHZ1.js
# ui/dist/assets/ViewApiDocs-DM5JJQjh.js
# ui/dist/assets/ViewApiDocs-DRpxcuJR.js
# ui/public/fonts/source-sans-pro/source-sans-pro-v18-latin_cyrillic-700.woff2
# ui/public/fonts/ubuntu-mono/ubuntu-mono-v17-cyrillic_latin-700.woff2
2026-02-22 01:17:16 -08:00
Gani Georgiev
cfcf4adea8
[ #6689 ] updated to automatically routes raw write SQL statements to the nonconcurrent db pool
2025-05-02 10:27:41 +03:00
Gani Georgiev
1eb4103faa
[ #6607 ] allowed manually changing the password from the create/update hooks
2025-04-05 13:36:31 +03:00
zeekay
ef90d0c4c4
Use base
2025-02-10 11:58:49 -06:00
Gani Georgiev
eee5a40d65
added record.SetRandomPassword() helper and updated oauth2 autogenerated password handling
2024-12-26 13:24:03 +02:00
Gani Georgiev
fdee3e425d
[ #6073 ] added poc implementation for the dry submit removal
2024-12-11 18:43:48 +02:00
Gani Georgiev
55862a4534
updated checkOldPassword validator
2024-11-23 10:28:31 +02:00
Gani Georgiev
1d4fa61617
merge v0.23.0-rc changes
2024-09-29 21:09:46 +03:00
Gani Georgiev
026b5e274a
fixed RecordUpsert.RemoveFiles godoc example
2024-02-02 09:21:41 +02:00
Gani Georgiev
765680ac33
added support for loading a serialized json payload as part of multipart/form-data request
2024-01-14 22:20:46 +02:00
Gani Georgiev
d6d4c69c66
logs refactoring
2023-11-26 13:33:17 +02:00
Gani Georgiev
6389e06ccc
[ #3697 ] allowed hyphens in usernames
2023-11-11 12:19:33 +02:00
Gani Georgiev
d09661f9d9
renamed record upsert local requestInfo to requestData to distinguish better from models.RequestInfo
2023-10-08 22:52:14 +03:00
Gani Georgiev
5ec04e4e82
added action arg to the before Dao hook to allow skipping the default persist behavior
2023-07-29 19:52:36 +03:00
Gani Georgiev
62ee7c3171
soft deprecated apis.RequestData(c) in favor of apis.RequestInfo(c) and updated jsvm bindings
2023-07-17 23:13:39 +03:00
Gani Georgiev
2b4f4a076b
[ #2868 ] fixed unique validator detailed error message not being returned when camelCase field name is used
2023-07-06 23:14:18 +03:00
Gani Georgiev
a18cd7f8f0
Merge branch 'master' into develop
2023-04-14 12:58:03 +03:00
Gani Georgiev
5f10c1deb0
[ #2287 ] fixed unique field detailed error not being returned on DrySubmit failure
2023-04-13 22:37:10 +03:00
Gani Georgiev
a60d0e35c6
added extra table name checks in the overwritten dao hooks in case of duplicated ids
2023-04-12 16:46:08 +03:00
Gani Georgiev
db69b3a03e
[ #2277 ] added check for nil dao hooks
2023-04-12 16:09:35 +03:00
Gani Georgiev
19df6097b4
updated the record file handling for the before update hook too
2023-04-01 12:51:00 +03:00
Gani Georgiev
60f9704d77
fix realtime events firing before files upload completion
2023-04-01 11:47:01 +03:00
Gani Georgiev
7457ed82ec
revert record upsert changes on upload failure
2023-03-26 22:49:18 +03:00
Gani Georgiev
c8ab7ec6d8
(no tests) collection indexes scaffoldings
2023-03-19 16:18:33 +02:00
Gani Georgiev
4594b003cd
fixed formatting and typos
2023-02-23 21:51:42 +02:00
Gani Georgiev
c3538790f1
[ #1896 ] run files upload after record save
2023-02-22 22:06:59 +02:00
Gani Georgiev
a5ce0cc3cb
fixed godoc formatting
2023-02-20 13:31:03 +02:00
Gani Georgiev and Marc Singer
ab90949fcb
[ #1377 ] added Authentik OAuth2 provider
...
Co-authored-by: Marc Singer <[email protected] >
2023-01-16 11:50:45 +02:00
Gani Georgiev
8e14bce371
[ #1240 ] added dedicated before/after auth hooks and refactored the submit interceptors
2023-01-15 17:00:28 +02:00
Gani Georgiev
9ea767fb1a
added unique id validator error
2023-01-11 22:29:48 +02:00
Gani Georgiev
5a500692a6
filter enhancements
2023-01-07 22:27:11 +02:00
Gani Georgiev
46882b4bef
[ #1291 ] added condition to switch between the db pools in case of dry submit
2022-12-18 11:32:15 +02:00
Gani Georgiev
c477e58433
[ #1291 ] fixed nested tx deadlock when creating new user with OAuth2
2022-12-18 11:11:34 +02:00
Gani Georgiev
e956bf82d1
[ #356 ] trigger password validators when any of the password related fields is set
2022-12-12 12:42:15 +02:00
Gani Georgiev
c4f4982cbd
[ #1194 ] refactored forms.RecordUpsert to allow easier file upload
2022-12-11 01:01:15 +02:00
Gani Georgiev
dd65f1bc41
abstract rest.UploadedFile to allow loading local files
2022-12-10 16:47:45 +02:00
Gani Georgiev
45e102c8b9
[ #1187 ] move file upload and delete out of the record save transaction
2022-12-06 12:26:29 +02:00
Gani Georgiev
714b99a5fa
added custom goja field mapper to handle all caps identifiers and allowed errors unwrapping
2022-11-30 17:23:41 +02:00
Gani Georgiev
9581866dd3
[ #961 ] updated min username length and added tests
2022-11-08 12:55:18 +02:00
Gani Georgiev
943c47a441
initial v0.8 pre-release
2022-10-30 10:28:14 +02:00
Gani Georgiev
1bc1b06aee
synced with master
2022-08-31 21:33:17 +03:00
Gani Georgiev
59b94df5cb
[ #367 ] fixed wildcard multiple file upload deletion and added support to delete a single file by its name
2022-08-31 20:33:07 +03:00
Gani Georgiev
945a767c0d
[ #276 ] added support for linking external auths by provider id
2022-08-31 13:38:31 +03:00
Gani Georgiev
4227a09364
added custom insertion id regex check
2022-08-11 10:29:01 +03:00
Gani Georgiev
360e5e2389
updated tests
2022-08-08 19:16:33 +03:00
Gani Georgiev
03428c4b54
added WithConfig factory to all forms
2022-08-07 15:38:21 +03:00
Gani Georgiev
3942b0e80a
updated admin and user upsert forms
2022-08-06 22:16:58 +03:00
Gani Georgiev
7bccaa1217
added debug log for the invalid uploaded file(s)
2022-07-30 14:11:08 +03:00