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
157b7127ab
security: fix critical and high findings from red team review
...
- C1: add orgId field to _tasks/_workflows, filter all queries by org
- C2: validate spaceID/orgID with regex before Temporal visibility queries
- H1: add sync.RWMutex to orgClients map (prevent concurrent map panic)
- H2: atomic FailTask with CASE expression (eliminate TOCTOU race)
- H4: extractCreator uses authenticated user ID, not raw headers
- Add orgId to collection schemas, store methods, and API filters
2026-03-02 01:02:45 -07:00
zeekay
cf0252a28e
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# apis/record_auth_with_otp.go
# core/base_backup.go
# go.mod
# go.sum
# plugins/jsvm/internal/types/generated/types.d.ts
# tools/router/rereadable_read_closer_test.go
# ui/dist/assets/AuthMethodsDocs-C2aSYmNv.js
# ui/dist/assets/AuthRefreshDocs-BapWJLRK.js
# ui/dist/assets/AuthWithOAuth2Docs-Ck_pnbL8.js
# ui/dist/assets/AuthWithOtpDocs-D8uWq_C5.js
# ui/dist/assets/AuthWithPasswordDocs-BQyMhAeO.js
# ui/dist/assets/BatchApiDocs-rvUuWLZE.js
# ui/dist/assets/CodeEditor-DrMyw8z_.js
# ui/dist/assets/CreateApiDocs-XWzcGuMB.js
# ui/dist/assets/DeleteApiDocs-CScE0aw3.js
# ui/dist/assets/EmailChangeDocs-CxOtrB4s.js
# ui/dist/assets/FieldsQueryParam-BzNUQIb5.js
# ui/dist/assets/FilterAutocompleteInput-Dm2G2coC.js
# ui/dist/assets/Leaflet-DyumpnOc.js
# ui/dist/assets/ListApiDocs-CdOzMZnr.js
# ui/dist/assets/PageInstaller-vIXdffAJ.js
# ui/dist/assets/PageOAuth2RedirectFailure-ClpyaW_B.js
# ui/dist/assets/PageOAuth2RedirectSuccess-BLZml1eK.js
# ui/dist/assets/PageRecordConfirmEmailChange-Cm3O2YD1.js
# ui/dist/assets/PageRecordConfirmPasswordReset-D0XfuL45.js
# ui/dist/assets/PageRecordConfirmVerification-CYyNYH_v.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-BvlQ0_9t.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-gUPMclJZ.js
# ui/dist/assets/PasswordResetDocs-DMF1vqE0.js
# ui/dist/assets/RealtimeApiDocs-CNVij_C2.js
# ui/dist/assets/UpdateApiDocs-CwQ3ZhFQ.js
# ui/dist/assets/VerificationDocs-DUeWWjrS.js
# ui/dist/assets/ViewApiDocs-gocWxbTE.js
# ui/dist/assets/index-CWGqJiyp.js
# ui/dist/index.html
2026-03-01 19:27:21 -07:00
Gani Georgiev
9feb83cdad
applied lint typo fixes
2026-03-02 22:31:27 +02: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
d3b0cb8ae5
[ #6835 ] fixed json_each/json_array_length normalizations to properly check for array values
2025-05-13 21:26:33 +03:00
Gani Georgiev
5ae804b176
added new geoPoint field
2025-04-02 11:52:50 +03:00
zeekay
ef90d0c4c4
Use base
2025-02-10 11:58:49 -06:00
Gani Georgiev
cc11b381ba
soft-deprecated Record.GetUploadedFiles in favour of Record.GetUnsavedFiles
2025-01-10 11:45:55 +02:00
Gani Georgiev
7b6425a3cf
changed store.Store to accept generic key type
2024-12-23 15:44:00 +02:00
Gani Georgiev
e61ce45408
[ #5964 ] refresh the token key on email change
2024-12-17 11:44:27 +02:00
Gani Georgiev
4b0f7e8c52
synced with master
2024-12-16 16:03:51 +02:00
Gani Georgiev
70d2280f8e
[ #6122 ] fixed model->record and model->collection events sync
2024-12-16 14:49:24 +02:00
Gani Georgiev
7e4dbc23c7
speedup records cascade delete
2024-12-12 22:55:55 +02:00
Gani Georgiev
d59bfd0182
moved unnecessary reassignment
2024-12-12 12:11:47 +02:00
Gani Georgiev
fdee3e425d
[ #6073 ] added poc implementation for the dry submit removal
2024-12-11 18:43:48 +02:00
Gani Georgiev
d93dba724d
minimized repeated field.GetName calls
2024-11-29 11:30:54 +02:00
Gani Georgiev
0d58c9e070
[ #5973 ] fixed Record.Fresh and Record.Clone method not properly copying the record fields
2024-11-28 23:19:21 +02:00
Gani Georgiev
3f1dfb060a
added explicit errors when trying to truncate view collections or deleting view records
2024-10-09 12:04:25 +03:00
Gani Georgiev
1d4fa61617
merge v0.23.0-rc changes
2024-09-29 21:09:46 +03:00