Wednesday, November 19, 2025
5 changes · 17.0
Resolved issues and error corrections
This update keeps Odoo working with newer code-quality checks by adjusting a few internal patterns and test files. It also reduces false alarms during validation, helping teams run maintenance checks more smoothly and reliably.
Original PR description
- astroid 4 deprecates toplevel exports of nodes, thankfully that was never actually necessary so we can just import that unconditionally - remove support for pre-jammy pylint / astroid, specifically `astroid.nodes` was added in astroid 2.7.0 and `astroid.node_classes` deprecated then and removed in 3.0, this can affect Bullseye users as it shipped with astroid 2.5 - Astroid 4 changes `spec.Finder.find_module` in order to cache it (pylint-dev/astroid#2509), we can just make our method static for all versions as we don't need `self` anyway. - The mail test triggers `function-redefined` (E0102), fix it. - Skip the escpos script thing which triggers a bunch of `undefined-variable` (E0602) false positives.
This change removes repeated method definitions in a few enterprise modules. It does not add new user-facing features, but it helps keep the codebase cleaner and reduces the risk of maintenance issues later.
Original PR description
found by pylint 4
Odoo now uses the updated official code for Odisha in India, replacing the older code. This keeps contact and sales information aligned with current government standards and helps avoid mismatches when creating customer records and sales orders.
Original PR description
**Steps to reproduce:** 1. Install the `Contacts` module. 2. Go to Contacts > Create a new contact. 3. Select country India, and state Odisha. 4. Create a sales order using the newly created contact. **Issue:** As per [Government of India](https://www.iso.org/obp/ui/#iso:code:3166:IN), the state code was officially changed from "OR" to "OD" in 2023. However, Odoo still uses the outdated code. <img width="407" height="163" alt="image" src="https://github.com/user-attachments/assets/1631a831-f455-4a51-886f-7e4ed691add0" /> **Solution:** Update the name of the state from "OR" to "OD" in state records. **opw-4935633**
Blog post paragraphs will now inherit the font size set in the website theme. This makes blog content match the site’s design settings and keeps formatting consistent across the page.
Original PR description
Previously, changing the paragraph font size in the theme (Website > Edit > Theme > Paragraph > Font Size) did not affected the paragraphs within blog posts. This was because blog post paragraphs used a static font size, overriding the theme's setting. This PR removes the overriding style, allowing blog post paragraphs to inherit the font size defined in the theme. task-4167716
When users search on website pages, the system now checks whether the current page exists for that search. If the user is beyond the last available page, they are automatically redirected to the final valid page so results and pagination display correctly.
Original PR description
Scenario: - enable website_studio - go to contact -> open studio -> website - add a listing and open it on website - go to page 2 and search a specific terms with less than 20 results Result: we see "5 results" in the search bar, but no result are shown and the pager is hidden. Cause: the pager is hidden since there is only one page, and we are currently displaying the records of page 2 that do not exist. Fix: if we detect that we are on a page over the last page, redirect to the last page. Eg. if there is 2 pages and we are in page 500, redirect to page 2. opw-5008556