Edouard Vanbelle
|
e357caf43b
|
feat(ui): add a logger to change log level and permit better diagnostics
in this case logs are added in the delta upload worker
you can increase verbosity from console via:
```javascript
// Usage:
oxi.setLogLevel('oxi:upload', 'debug') // deep dive
oxi.setLogLevel('oxi:upload', 'warn') // quiet
oxi.log.setLevel('debug') // everything to debug
```
values are stored in localstorage
example:
```
oxi.setLogLevel('oxi:upload', 'debug');
'oxi:upload → debug'
deltaUpload.ts:120 [f32ce1] delta start {file: 'Revue de presseg.odp', size: 23658927}
deltaUpload.ts:185 [f32ce1] worker: worker start {file: 'Revue de presseg.odp', size: 23658927}
deltaUpload.ts:186 [f32ce1] worker: wasm loaded
deltaUpload.ts:186 [f32ce1] worker: hashed — blake3=150edbc35f3475a0bdeecd15fe5278dda305ce3b27e53e9c40515a69f0b883f3 (76 chunks)
deltaUpload.ts:186 [f32ce1] worker: negotiate: 76 hashes → 76 missing, 0 dedup'd
deltaUpload.ts:186 [f32ce1] worker: chunk PUT: 28 chunks, 8825338 bytes
deltaUpload.ts:186 [f32ce1] worker: chunk PUT: 29 chunks, 8950230 bytes
deltaUpload.ts:186 [f32ce1] worker: chunk PUT: 19 chunks, 5883663 bytes
deltaUpload.ts:186 [f32ce1] worker: ✅ committed — uploaded 23 658 927 B (no dedup, blake3=150edbc35f3475a0bdeecd15fe5278dda305ce3b27e53e9c40515a69f0b883f3)
deltaUpload.ts:185 [f32ce1] worker: commit HTTP 201 {blake3: '150edbc35f3475a0bdeecd15fe5278dda305ce3b27e53e9c40515a69f0b883f3', uploadedBytes: 23658927, reusedBytes: 0, totalBytes: 23658927, attempt: 0}
deltaUpload.ts:213 [f32ce1] delta done {file: 'Revue de presseg.odp', blake3: '150edbc35f3475a0bdeecd15fe5278dda305ce3b27e53e9c40515a69f0b883f3', savedBytes: 0, uploadedBytes: 23658927}
```
|
2026-08-14 01:52:03 +02:00 |
|
Edouard Vanbelle
|
1104a4cb06
|
fix(user-pref): permit edition of user prefs for OIDC account
|
2026-08-13 20:39:55 +02:00 |
|
Dionisio Pozo
|
b1493e2d0e
|
Merge pull request #671 from EdouardVanbelle/i18n/context-translation
|
2026-08-13 16:58:42 +02:00 |
|
Dionisio Pozo
|
aa0f12cd26
|
Merge pull request #670 from EdouardVanbelle/chore/dot-env-example
|
2026-08-13 16:58:34 +02:00 |
|
Edouard Vanbelle
|
27ab392a35
|
i18n: fix uncontexted strings
For example jobs where translated into "employment" in other language
Remove english text in other languages
|
2026-08-13 00:30:55 +02:00 |
|
Edouard Vanbelle
|
c61bc818b1
|
doc: listen to 0.0.0.0 as example for Docker
consider that many user will use docker to test Oxicloud
|
2026-08-12 20:53:16 +02:00 |
|
Dionisio Pozo
|
06aff99fa3
|
Merge pull request #635 from swissiety/rfc-6868-param-encoding
fix(vcard): add RFC 6868 parameter value encoding
|
2026-08-12 10:32:26 +02:00 |
|
Edouard Vanbelle
|
555bf82a16
|
doc(dpop): update dpop status
|
2026-08-12 00:11:17 +02:00 |
|
Edouard Vanbelle
|
5a82aa1511
|
feat(session): UI: improve admin > sessions view
|
2026-08-11 23:50:43 +02:00 |
|
Dionisio Pozo
|
60ae6b4565
|
Merge pull request #662 from EdouardVanbelle/chore/i18n
i18n: update all languages
|
2026-08-10 00:10:42 +02:00 |
|
Edouard Vanbelle
|
2be2928ddc
|
i18n: update all languages
|
2026-08-09 20:37:09 +02:00 |
|
Dionisio Pozo
|
779005055c
|
Merge pull request #664 from EdouardVanbelle/feat/openapi
|
2026-08-09 19:46:44 +02:00 |
|
Dionisio Pozo
|
5baac919c8
|
Merge pull request #661 from EdouardVanbelle/feat/dpop
|
2026-08-09 19:46:30 +02:00 |
|
Edouard Vanbelle
|
f78ed08e92
|
chore(test): increase rate limit to permit more tests
|
2026-08-09 18:03:19 +02:00 |
|
Edouard Vanbelle
|
e0654cd848
|
feat(openapi): implement missing routes
Admin:
- /api/admin/drives, /api/admin/drives/{id}, /api/admin/drives/{id}/members, /api/admin/drives/{id}/members/{kind}/{sid}
- /api/admin/jobs/{name}/pause, /api/admin/jobs/{name}/runs/{id}/findings, /api/admin/jobs/runs/purge
- /api/admin/smtp/info, /api/admin/smtp/test
- /api/admin/storage/entries/{name}/rotate
- /api/admin/users/{id}/promote-to-internal
Auth:
- /api/auth/dpop/bind
- /api/auth/magic-link/send
- /api/auth/me/profile
- /api/auth/upgrade-to-internal
Drives / grants / trash / users / dedup:
- /api/drives/{id}, /api/drives/{id}/members (get + delete), /api/drives/{id}/policies, /api/drives/{id}/quota
- /api/grants/{id}/notify
- /api/trash/drive/{drive_id}
- /api/users/{id}
- /api/dedup/check-batch
Faces
- /api/people — cluster list (PersonDto[])
- /api/people/{id}/photos — file ids for one person
- /api/people/{id} — rename (or clear name)
- /api/people/merge — merge two clusters
- /api/people/recluster — re-run clustering
- /api/people/data — nuke all face data
- /api/people/faces/{file_id} — face boxes per photo (FaceBoxDto[])
|
2026-08-09 17:58:06 +02:00 |
|
Edouard Vanbelle
|
4739506698
|
fix(ci): fx the db migration check
|
2026-08-09 17:20:50 +02:00 |
|
Edouard Vanbelle
|
d1436077f2
|
feat(dpop): wire audit event on dpop bound to session
|
2026-08-09 17:14:53 +02:00 |
|
Edouard Vanbelle
|
bbc1e77e33
|
test(jobs): remove hardcoded number of jobs in tests
|
2026-08-09 17:03:27 +02:00 |
|
Edouard Vanbelle
|
c61341b890
|
test(login): fix login logout test
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
3b11b804e2
|
docs: add DPoP and Opaque on main page
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
a34da40ce9
|
feat(sessions): clean expired sessions (exp > 3month)
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
d638566d04
|
feat(openapi): add sessions + opaque
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
a7df46f8f8
|
feat(sessions): show session origin in admin panel + test
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
763ee82028
|
security(session): do not expose 'sid' from OIDC
prefer exposing origin of the session: passwod, opaque, magic_link, oidc, unknown
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
c28eb9b42e
|
fix(oidc): stamp id_token + sid to session
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
950c8c0f38
|
feat(dpop): provide nonce on immediate login
provide the DPoP nonce via cookie on login, this reduce the amount of API call
and prevent having any first call returning in 401
|
2026-08-09 16:36:42 +02:00 |
|
Edouard Vanbelle
|
2eb1e8a1d5
|
feat(logout): improve logout flow
|
2026-08-09 16:36:19 +02:00 |
|
Edouard Vanbelle
|
321f3ad733
|
i18n(session): add missing translations
|
2026-08-09 14:04:42 +02:00 |
|
Edouard Vanbelle
|
bbef8afb7b
|
fix(logout): reduce unwanted API call during logout
- stop trying to refresh session
- display "successfully signed out" rather "your session is expired"
|
2026-08-09 13:51:35 +02:00 |
|
Edouard Vanbelle
|
f4e923e381
|
fix(test): fix CRC error in png samples
|
2026-08-09 13:26:40 +02:00 |
|
Edouard Vanbelle
|
6a0911d560
|
fix(thumbnail): prevent upsampling
|
2026-08-09 13:26:09 +02:00 |
|
Edouard Vanbelle
|
a9eaa3fd74
|
fix(test): fix playwright to suport OPAQUE+DPOP
|
2026-08-09 13:10:09 +02:00 |
|
Edouard Vanbelle
|
9e94cb398c
|
test(dpop): OPAQUE + DPOP required for e2e tests
|
2026-08-09 12:31:39 +02:00 |
|
Edouard Vanbelle
|
11c7f9440e
|
chore(e2e): remove old playwright test (wired to vanilla JS)
|
2026-08-09 12:27:31 +02:00 |
|
Edouard Vanbelle
|
69c57e1e24
|
feat(dpop): client now aware if session if bound
this prevent client to try binding and creating
- unnecessary call
- unnecessary warning in server log
|
2026-08-09 12:05:56 +02:00 |
|
Edouard Vanbelle
|
df9a6babbb
|
fix(tests): prevent playwrigt test to load default .env
|
2026-08-09 11:46:53 +02:00 |
|
Edouard Vanbelle
|
107dbfc731
|
fix(login): fix race in autofocus
|
2026-08-09 11:46:53 +02:00 |
|
Edouard Vanbelle
|
69c342f2ed
|
refactor(dpop): apply typescript prettier
|
2026-08-09 11:46:53 +02:00 |
|
Edouard Vanbelle
|
6a434aebe6
|
refactor(dpop): apply clippy
|
2026-08-09 11:46:51 +02:00 |
|
Edouard Vanbelle
|
62475193ff
|
feat(admin): improve admin panel
normalise admin > users, sessions, drives
|
2026-08-09 10:41:34 +02:00 |
|
Edouard Vanbelle
|
10d831b204
|
feat(session): ensure dpop even with OIDC
|
2026-08-09 10:41:34 +02:00 |
|
Edouard Vanbelle
|
bee856fbd0
|
feat(session): handle sessions for admin
|
2026-08-09 10:41:34 +02:00 |
|
Edouard Vanbelle
|
1b9d812175
|
feat(telemetry): add /metrics prommetheus exporter
|
2026-08-09 10:41:34 +02:00 |
|
Edouard Vanbelle
|
80f2f67db6
|
feat(dpop): server request dpop on all /api/*
|
2026-08-09 10:35:52 +02:00 |
|
Edouard Vanbelle
|
93eb67f99b
|
feat(dpop): add service worker to sign requests
this will permit GET to resources and then to remove directly signing requests
|
2026-08-09 04:18:20 +02:00 |
|
Edouard Vanbelle
|
7529914e32
|
feat(dpop): test XHR request + test session refresh
|
2026-08-09 02:25:43 +02:00 |
|
Edouard Vanbelle
|
a218199a02
|
plan(dpop): remind the choice of opened GET path
|
2026-08-09 02:18:31 +02:00 |
|
Edouard Vanbelle
|
d0712817c5
|
refactor(dpop): apply clippy
|
2026-08-09 02:18:02 +02:00 |
|
Edouard Vanbelle
|
97a56899df
|
refactor(dpop): apply prettier
|
2026-08-09 02:09:31 +02:00 |
|
Edouard Vanbelle
|
34d80d70b8
|
feat(dpop): release route that must not dpop protected (temp version)
|
2026-08-09 01:56:13 +02:00 |
|