itsulu-blog-publisher/CHANGELOG.md
Nicholas Riegel 96adace887 release: 14.0-v0.5.1 — Odoo 14 port verified green (69/69)
Full suite passes on a live odoo:14.0 instance; module installs cleanly.
PORTING.md marked complete with the full list of resolved Odoo-14 deltas.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-30 11:54:38 -04:00

89 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Changelog
All notable changes to **ITSulu Blog Publisher** are recorded here.
This project uses a three-part version number — `MAJOR.MINOR.PATCH` (each part 0999):
- **MAJOR** — a major release for sale; significant feature upgrades or a significant change to the software.
- **MINOR** — one or more features added, or a meaningful performance improvement.
- **PATCH** — a single group of commits, or one large commit.
Release notes are written in plain language so anyone on the team can follow what changed.
---
## v0.5.1 — 2026-05-30 (14.0)
The **Odoo 14.0 port is complete and verified** — the full automated suite (69 tests) passes
on a real Odoo 14.0 instance and the module installs cleanly. This branch is ready for the
ITSulu production instance.
### Changed (Odoo 14 compatibility)
- Email template moved back to Odoo 14's Jinja2 syntax.
- Admin views adjusted to Odoo 14's conditional-visibility format (this had been blocking the
module from installing on 14).
- Test suite updated for Odoo 14's test framework and database APIs.
- Performance query budget tuned for Odoo 14 (it issues a few more framework queries than 17).
See [PORTING.md](PORTING.md) for the full list of Odoo-14 deltas resolved.
---
## v0.5.0 — 2026-05-30
Sets up support for **multiple Odoo Community versions**, each on its own branch — the same
model the Odoo project itself uses. We initially target **Odoo 19.0** (the latest stable) and
**Odoo 14.0** (the version ITSulu runs in production).
### Added
- **Per-Odoo-version branches.** The addon now lives on a branch per Odoo release — `19.0`
and `14.0` — so each can track the API differences of its Odoo version independently. Check
out the branch that matches your Odoo install.
- **Version tooling is Odoo-aware.** The release helper (`bump-version.sh`) now reads which
Odoo series a branch targets and stamps the addon and release tags accordingly
(e.g. `19.0-v0.5.0`, `14.0-v0.5.0`), so one product version can ship on several Odoo versions.
- A `PORTING.md` on each version branch tracks what still needs checking for that Odoo release.
### Notes
- This `14.0` branch is the target for the **ITSulu production** instance. It is **seeded from
the 17.0 codebase**, so the Odoo-14 port is still being completed — most notably the email
template must move back to Odoo 14's older Jinja syntax. See `PORTING.md`.
- Documentation (`README`, `CLAUDE.md` §15) now describes the branch-per-version model.
---
## v0.4.8 — 2026-05-30
The first tagged release. This version gets the whole test suite running green on the
ITSulu Kubernetes cluster and fixes two bugs that affected real blog posts and emails.
### Fixed
- **Notification emails now render correctly.** The email template was written in an old
syntax that Odoo 17 no longer understands, so notification emails were going out with raw
code (like `${object.blog_post_id.name}`) instead of the actual post title. The template
was rebuilt using Odoo 17's current format, so subjects and bodies now fill in properly.
- **Generated blog posts are no longer empty.** When a post was created automatically, the
AI-written body was being thrown away before it reached the post. Every auto-generated post
was published blank. The body is now saved to the post's content field.
- Removed a duplicate field definition that produced a warning on every Odoo startup.
### Testing & Infrastructure
- The full automated test suite — **69 tests** (48 unit, 15 behaviour, 6 performance) — now
passes end to end on the ITSulu Kubernetes test cluster.
- The CI/CD pipeline was corrected: stages now run in the right order, database credentials
are handled properly, and test reports are generated as build artifacts.
- End-to-end tests now run as ephemeral jobs on the ITSulu cluster (`itsulu-testing`
namespace) instead of an external preview service.
- Brought the test code up to date with Odoo 17 (email rendering, blog post fields, and the
behaviour-test environment setup).
### Documentation
- Recorded the Odoo 16 → 17 migration lessons (email templates, post body fields, template
database refresh) in `CLAUDE.md` so they are not rediscovered the hard way.
- Introduced this changelog and the project versioning scheme.