github AtalayaLabs/OxiCloud v0.4.2
v0.4.2 — Trash & Delete Fixes + Frontend Refactoring

latest releases: v0.5.6, v0.5.5, v0.5.4...
2 months ago

🎉 OxiCloud v0.4.2

🐛 Bug Fixes

  • Fix folder trash operation — Added missing RECURSIVE keyword in move_to_trash and restore_from_trash SQL CTEs, which caused relation "descendants" does not exist errors when trying to delete folders.
  • Fix folder permanent delete — Resolved duplicate key violates unique constraint "idx_files_unique_name_at_root" by explicitly deleting descendant files before removing folders.
  • Fix schema FK constraint — Changed files.folder_id foreign key from ON DELETE SET NULL to ON DELETE CASCADE to prevent orphaned file records.
  • Fix OIDC admin settings — Admin panel now correctly populates OIDC/SSO settings from environment variables.
  • Fix database schema startup — Schema is now always applied on startup to ensure consistency.
  • Fix upload filename sanitization — Properly sanitize multipart filenames for folder uploads (#121).
  • Fix CSS selectors for SVG icons — Updated sidebar navigation CSS selectors to work with SVG icons.

✨ Improvements

  • Simplified trash model — Folders are now the only element marked as trashed; child files are implicitly hidden since navigation queries filter NOT is_trashed. The trash_items view now only shows top-level trashed items, so the trash bin displays the folder itself instead of hundreds of individual child files.
  • Trash view icons — Folders and files in the trash now display the same visual icons (yellow folder icon, PDF icon, etc.) as in the main files view.
  • Frontend modular architecture — Reorganized all JavaScript into a clean modular folder structure: app/, core/, features/, views/.
  • Extract inline CSS/JS — Moved all inline <style> and <script> blocks from admin.html and profile.html into dedicated external files (admin.css, profile.css, admin.js, profile.js).
  • CSS class-based visibility — Replaced all style.display JavaScript assignments and inline style="" attributes with CSS utility classes (hidden, show-block, show-flex).
  • Dutch translations — Added complete Dutch (NL) language support.
  • Brotli + Gzip compression — Enabled Brotli compression for API and static files, plus Cache-Control headers for static assets.
  • UI rendering optimizations — Improved rendering performance and event lifecycle management.
  • SVG icon system — Frontend optimizations: SVG icons, unified rendering, scoped translatePage.

👏 Thanks to Our Amazing Contributors

A huge thank you to all the incredible users who contributed to this release — you are the best users in the world! 🌟 Your contributions, bug reports, and ideas make OxiCloud better every day.

We truly appreciate every single contribution. Keep being awesome! ❤️

Full Changelog: v0.4.1...v0.4.2

What's Changed

  • Enable brotli compression for API and static files by @gbw in #125
  • feat: add Dutch translations by @zjean in #130
  • fix: always apply database schema on startup by @gbw in #127
  • fix(admin): populate OIDC settings in admin panel from environment variables by @gbw in #128

New Contributors

Full Changelog: v0.4.1...v0.4.2

Don't miss a new OxiCloud release

NewReleases is sending notifications on new releases.