Diocrafts
c0cb86c273
docs: migrate legacy docs to official site
2026-04-22 07:50:41 +02:00
Diocrafts
e10a908f07
chore(release): bump version to 0.5.6
2026-04-21 18:41:21 +02:00
Diocrafts
36f7602d3f
new images
2026-04-20 21:30:27 +02:00
Diocrafts
d18bf0d1ce
new images
2026-04-20 21:09:30 +02:00
Dionisio Pozo
5288e692f0
Merge pull request #308 from lesgrandsvoisins/main
2026-04-19 12:31:59 +02:00
Chris Mann
afffe3d0a1
Corrected sso to oauth2 in config
2026-04-19 11:47:23 +02:00
Dionisio Pozo
5caa6894db
Merge pull request #307 from lesgrandsvoisins/main
2026-04-19 11:41:41 +02:00
Chris Mann
fd4153b332
Added the starts of a new Nixos Package
2026-04-19 11:33:53 +02:00
Dionisio Pozo
265d5abaf8
Merge pull request #305 from bobo-xxx/clawoss/fix/oidc-username-validation
2026-04-18 09:38:26 +02:00
BillionClaw
0c4290261e
fix(auth): sanitize claims.sub when padding/truncating OIDC usernames
...
When OIDC providers (e.g. Keycloak) use email addresses as usernames or
when claims.sub contains @ or other invalid characters, the username
padding and collision-suffix logic could introduce invalid characters.
The fix filters claims.sub through the same allowed-character filter
before using it in username construction.
Fixes DioCrafts/OxiCloud#259
2026-04-18 07:26:36 +00:00
Dionisio Pozo
c1878ec263
Merge pull request #304 from bobo-xxx/clawoss/docs/fix-docker-image-reference
2026-04-18 00:05:42 +02:00
BillionClaw
f99e8be94f
docs: fix docker image reference from oxicloud to diocrafts/oxicloud
2026-04-17 21:52:59 +00:00
Dionisio Pozo
f4f2418b69
Merge pull request #302 from bobo-xxx/clawoss/fix/oidc-email-username-259
2026-04-17 20:12:51 +02:00
BillionClaw
b2f0cec6bc
fix(auth): handle email-style usernames in OIDC JIT provisioning
2026-04-17 18:10:17 +00:00
Dionisio Pozo
f8e3524c9e
Merge pull request #301 from EdouardVanbelle/fix/recent-section
2026-04-17 14:04:33 +02:00
Edouard Vanbelle
e2f8e8513f
fix(navigation): correct recent section
2026-04-17 13:46:24 +02:00
Dionisio Pozo
09f8fd2f62
Merge pull request #300 from EdouardVanbelle/feat/show-shared
2026-04-17 00:03:04 +02:00
Edouard Vanbelle
ceff552736
feat(shared): show in classic view if an item is shared
2026-04-16 23:13:08 +02:00
Edouard Vanbelle
c8e67f77ea
fix(frontent): remove default section to avoid blink when hash in url is not 'file'
2026-04-16 23:13:08 +02:00
Dionisio Pozo
8c49cb347c
Merge pull request #299 from EdouardVanbelle/fixes
2026-04-16 06:00:26 +02:00
Edouard Vanbelle
9073274e69
fix(list-view/select-all-checkbox): avoid multiple listener on select all checkbox
2026-04-16 01:06:09 +02:00
Edouard Vanbelle
c8dbcd2409
fix(multi-select/action bar): keep large bar
2026-04-16 00:58:11 +02:00
Edouard Vanbelle
8e18e0c848
fix(section/favorite): ensure select-all-checkbox is wired
2026-04-16 00:57:01 +02:00
Dionisio Pozo
3276da366c
Merge pull request #298 from EdouardVanbelle/feat/buttons
2026-04-16 00:46:39 +02:00
Dionisio Pozo
2a1e771355
Merge pull request #294 from EdouardVanbelle/chore/add-script-to-populate-icons
2026-04-16 00:13:21 +02:00
Dionisio Pozo
0cb0983b84
Merge pull request #297 from EdouardVanbelle/refactor/section
2026-04-16 00:03:46 +02:00
Edouard Vanbelle
7bb4ed0940
refactor(frontend/sections): remove app.is{Xxx}View and use only app.currentSection
2026-04-16 00:01:50 +02:00
Edouard Vanbelle
33165c6d5a
feat(frontand/buttons): move multiselect into buttons = keep visible card/list selector
2026-04-15 23:49:20 +02:00
Edouard Vanbelle
30fffbdd33
refactor(music): use music icon rather svg
2026-04-15 08:49:17 +02:00
Edouard Vanbelle
4c327b3fe1
fix(icons): add missing referenced icons
...
- icons added via tools/check-icons.py
2026-04-15 08:49:17 +02:00
Edouard Vanbelle
372a2a91bc
chore(tools): add a script to populate static/js/core/icons.js
2026-04-15 08:49:17 +02:00
Diocrafts
b1827c9f3d
fix(docker): switch Azure crates to rustls, drop OpenSSL dependency
...
Azure SDK crates (azure_core, azure_storage, azure_storage_blobs) were
enabling reqwest/default-tls → native-tls → openssl-sys via their
default 'enable_reqwest' feature. This breaks the Alpine musl Docker
build which lacks libssl.a/libcrypto.a.
- Set default-features = false on all 3 Azure crates
- Enable 'enable_reqwest_rustls' + 'hmac_rust' (pure Rust, no OpenSSL)
- Pin reqwest to ^0.12 (azure_core 0.21 requires reqwest ^0.12)
- openssl-sys is now fully eliminated from the dependency tree
2026-04-15 08:04:36 +02:00
Dionisio Pozo
4d0ad666bd
Merge pull request #296 from EdouardVanbelle/fix/music
2026-04-15 06:01:56 +02:00
Dionisio Pozo
152a1aa51e
Merge pull request #295 from EdouardVanbelle/style/front-format
2026-04-15 06:01:21 +02:00
Edouard Vanbelle
0b27c3b400
fix(navigation): correct hash url and navigation to music
2026-04-15 00:39:37 +02:00
Edouard Vanbelle
6e3d87c27e
style(front): correct format
2026-04-15 00:15:53 +02:00
Diocrafts
761d159a92
feat(dedup): CDC sub-file deduplication with FastCDC + parallel chunk storage + dedup skip
...
- Replace whole-file SHA-256 dedup with FastCDC 2020 content-defined chunking
(min 64KB, avg 256KB, max 1MB) + BLAKE3 hashing
- Add chunk_manifests table (file_hash → chunk_hashes[] + chunk_sizes[])
- Add put_blob_from_bytes to BlobStorageBackend trait (all 7 backends)
- 3-phase store_chunks pipeline:
Phase 0: batch-check existing chunks (single PG query)
Phase 1: selective disk read (skip existing chunks entirely)
Phase 2: parallel upload with buffer_unordered(8)
- CDC-aware read_blob_stream and read_blob_range_stream with legacy fallback
- Transactional manifest + chunk ref-count cascade on remove_reference
- 12 CDC tests (determinism, reassembly, contiguity, sub-file dedup, etc.)
- Update deduplication.md to reflect new architecture
2026-04-14 23:17:39 +02:00
Diocrafts
cd3733b459
feat: pluggable storage backends (S3, Azure, local) with admin UI
...
Implement 4-phase external storage backends architecture:
Phase 1 - Foundation:
- BlobStorageBackend trait (application/ports/blob_storage_ports.rs)
- LocalBlobBackend: extracted all tokio::fs ops from DedupService
- S3BlobBackend: AWS SDK with custom endpoint support (MinIO, R2, B2)
- DedupService refactored to use Arc<dyn BlobStorageBackend>
Phase 2 - Admin Panel:
- StorageSettingsService with DB persistence + env override
- Storage tab in admin panel (backend selector, S3 form, provider presets)
- GET/PUT/POST endpoints for storage settings + connection test
- i18n keys (en/es) and BEM CSS
Phase 3 - Migration:
- MigrationBlobBackend decorator (dual-read: target-first + source fallback)
- Background migration job with parallel transfers + progress tracking
- Migration UI (progress bar, ETA, pause/resume/verify/complete)
- 6 admin API endpoints for migration lifecycle
Phase 4 - Enterprise Extras:
- CachedBlobBackend: LRU disk cache for remote backends
- EncryptedBlobBackend: AES-256-GCM at-rest encryption
- AzureBlobBackend: Azure Blob Storage support
- RetryBlobBackend: exponential backoff for transient errors
- Decorator composition in DI: retry → encryption → cache
All 223 tests passing, clippy clean, fmt verified.
2026-04-14 21:33:38 +02:00
Dionisio Pozo
6fc632af7e
Merge pull request #291 from EdouardVanbelle/refactor/js-import-export
2026-04-14 19:39:10 +02:00
Edouard Vanbelle
62a7713af5
refactor(server): apply fmt + lint recos
2026-04-14 19:05:01 +02:00
Edouard Vanbelle
af23c56486
refactor(build.rs): can now bundle .js modules (flatten import/export)
2026-04-14 19:05:01 +02:00
Edouard Vanbelle
c139ba3e3b
refactor(build.rs): support of module + minimify each .js files (temp solution)
2026-04-14 19:05:01 +02:00
Edouard Vanbelle
6f4abfcec4
refactor(js): avoid use of window.XXX and move to import/export
...
- change worker: do not cache html pages (not necessary)
- remove use of window.XXX and maximize import/export,
this will provide more clarety,
show circular dependencies + you will benefit IDE help
2026-04-14 19:05:01 +02:00
Edouard Vanbelle
a2e5cfce24
chore(biome): JS check: error on undeclared variables/function
2026-04-14 19:03:54 +02:00
Dionisio Pozo
6a6c29033b
Merge pull request #293 from EdouardVanbelle/refactor/css-color
2026-04-14 18:15:53 +02:00
Edouard Vanbelle
2061f8808b
style(front): apply biome recos
2026-04-14 13:33:55 +02:00
Edouard Vanbelle
d01b2c6ec4
refactor(css): use variable rather direct color
2026-04-14 13:33:51 +02:00
Edouard Vanbelle
08884f3b6d
refactor(css): track use of undeclared CSS variables
2026-04-14 12:43:51 +02:00
Dionisio Pozo
5677089f43
Merge pull request #292 from EdouardVanbelle/chore/css-rules
2026-04-14 01:20:50 +02:00
Edouard Vanbelle
11973cae2a
chore(css): ensure css are not using direct colors
2026-04-14 01:10:34 +02:00