Skip to content

New features and improvements

Choose a tag to compare

@litnimax litnimax released this 11 Mar 10:55

Release Notes (since v1.10.1)

New Features

  • CLI: run-instance command, --version and --instance flags — run a named instance directly from CLI with version info support (0094369)
  • CLI: systemd-install / systemd-uninstall commands — install/remove Oduflow as a systemd service, plus uv installation docs (d266ca9)
  • Per-environment PostgreSQL credentials — each environment now gets its own isolated database role and password (e4949b0)
  • Two-tier database sanitization — system-wide sanitization scripts plus per-repo .odoo_sanitize/ folder support (cd0b9ec)
  • MCP tool: read_file_in_odoo — read files and list directories inside Odoo containers without shell commands (abcc525)
  • MCP tool: reset_admin_password — reset the admin user password in any environment's database (608b476)
  • Extra repos: fetch summary and propagationupdate_extra_repo now returns a summary of fetched branches and propagates updates to running environments (a80ba53)

Dashboard

  • Interactive SQL console (psql) — run SQL queries directly from the web dashboard (15d0e59)
  • Interactive Odoo shell console — access Odoo shell via the web dashboard (894f1ea)
  • Colored logs rendering — dashboard shows ANSI-colored logs; MCP tools receive clean stripped output (2e3989b)
  • Detailed sync results popup — sync operations show detailed results in a popup instead of a plain toast (ade3ee6)
  • Editable restore service dialog — service restore dialog now shows editable preset values before confirming (4eac120)
  • Wider logs modal — logs modal expanded to 80vw with horizontal scroll (e9d0273)

Bug Fixes

  • Database ownership on template clone — fixed ownership reassignment for tables, sequences, views, and materialized views; switched to GRANT role approach (31df320, afb66d0, 5c7b737)
  • Environment deletion — drop database before role to avoid dependency errors (4b28e9e, f67951c)
  • Strip db_password from odoo.conf — ensures the Docker entrypoint uses environment variables instead (f9f89d5)
  • Template publish — prevent self-copy in reload_template, scope publish to environments matching the template (b92631a)
  • Git sync — replace git pull --rebase with fetch + reset --hard for reliable sync; use explicit refspec in pull_repo (d57ee7e, 74ef53d)
  • Load extra_addons from template metadata in create_environment (3d629e6)
  • Dump restoration — handle gzip files and verify table count (7ef7a02)
  • Fallback data dir — fallback ODUFLOW_HOME to ~/oduflow_data_{id} when /srv is read-only (d45307c)
  • Test teardown — clean up all environments, not just "18.0" (b794035)

Refactoring & Configuration

  • Rename ODUFLOW_HOMEODUFLOW_DATA_DIR with instance subdirectories (52224cb)
  • Move odoo.conf and odoo_sanitize from etc/ to instance data directory (dbfc969)
  • Configurable etc_dir via ODUFLOW_ETC_DIR env var; workspaces_dir is now a computed property (14681839, d854900)
  • Require explicit branch for extra_addons — format is now name:branch (9254169)
  • chown_recursive() helper — replaces manual os.chown loops with macOS fallback support (872059d)
  • Rename get_environment_statusget_environment_info with comprehensive details (20e4abf)
  • Rename get_agent_guideget_agent_skill with self-caching instruction (8625790)
  • Rename MCP tools for clarity (fbbcf54)
  • Soften publish_as_template messaging and report affected environments (2ec6b22)
  • Use REASSIGN OWNED BY instead of per-type ownership loops (c6878e4)

Documentation

  • Add missing features to documentation, fix inaccuracies (e0c3bc3, 1aaa6a5)
  • Add llms-full.txt for complete LLM-consumable documentation (e330ad4)
  • Add screenshots to documentation pages (8726d01)
  • Add macOS vs Linux file ownership section (ac4a7a8)
  • Add CLAUDE.md with project architecture and dev commands (008d43f)
  • Add sync_env.py script for syncing environment to current git branch (edde30f)