Monday, January 16, 2023
14 changes · master
Enhancements to existing features
The system now warns developers when database constraint names could exceed PostgreSQL length limits, helping prevent future installation or upgrade issues. One existing constraint name in the account EDI proxy client was shortened to stay compatible with database limits.
Original PR description
Warn when constrains name combine with table name will be more than 63 characters. This is to avoid case like the one fixed in #103148 Unlike index, since constrains name are defined in the code, we prefer to avoid automatic truncate and add a warning since devs can chose an appropriate short-enough name. The linked fixes will just truncate the name to the max length to match the name in existing databases. Renaming could be done in other pull requests with upgrade scripts to avoid constrains re-computation. Linked to odoo/enterprise#35424
This change adds reusable Python-based helpers for downloading and unzipping files in the IoT hardware drivers area. It reduces reliance on bash scripts, making future IoT setup and maintenance easier on Windows machines.
Original PR description
Description of the issue/feature this PR addresses: Before, we were using bash scripts to download files from url's. [Example](https://github.com/odoo/enterprise/blob/5e50de9f977e8c09a0c06a9601c541f2f79cdacd/iot/iot_handlers/lib/load_worldline_library.sh#L9) This poses an issue on IoT Windows as it makes the code less portable This pr implements a 'download_from_url' and 'unzip_file' methods in Python which allows to do the same. This allows for the code to be compatible on Windows machines Current behavior before PR: Bash scripts are the only option used to download files from. Desired behavior after PR is merged: We have the option to download and unzip files directly through Python, which will allow us to remove bash scripts in the future [Task 3116299](https://www.odoo.com/web#id=3116299&cids=1&menu_id=4720&action=333&active_id=1428&model=project.task&view_type=form) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update makes placeholder images in the eLearning website area use one consistent built-in method. This should make course and lesson pages easier to maintain and help ensure placeholder visuals behave consistently across the site.
Original PR description
Before this commit placeholder images were generated in multiple different ways in website_slide. This commit makes use of _get_placeholder_filename function and standardizes the way these placeholder images are generated for website_slide. Task-2908029 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Timesheet create and edit access checks are now handled in separate reusable steps instead of being embedded directly in save logic. This makes it easier for businesses and implementers to customize timesheet approval and access rules without disrupting core behavior.
Original PR description
_* = project_timesheet_holidays Before this PR checking validation for creating and writing on timesheet done in create and write method which makes customization difficult for user. So, in this PR check validation for creating and writing on timesheet done in separate method _check_can_create and _check_can_write respectively for timesheet. task-2928942
Sales and Website settings now show documentation links for shipping connectors, matching the guidance already available in Inventory settings. This makes it easier for users to find setup instructions when configuring delivery integrations.
Original PR description
before this commit, the documentation link was missing for shipping connectors in the sales and website settings. after this commit, the documentation link will be shown for each connectors as it is currently displayed in the inventory settings. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The system’s master release version has been updated to 16.2 alpha. This prepares the project for the next development cycle and helps align future work with the correct upcoming release version.
This update simplifies how customized website and portal routes inherit settings from their base routes. It reduces the risk of future changes being accidentally overridden and adds automated checks to prevent the issue from returning.
The Geo Localization provider settings now have a dedicated, better-structured form instead of relying on a generic default layout. This makes the setup screen clearer and easier to use for administrators configuring location services.
Original PR description
**Description of the issue/feature this PR addresses:** currently there is no form view defined for the model base.geo_provider, and thus accessing the form view of this model, odoo is providing the default form view, which is not aligned properly. 1. Install base_geolocalize 2. Settings -> General Settings 3. Under Integration Section, open any record from Geo Localization  **Current behavior before PR:** missing form view for the model. **Desired behavior after PR is merged:** add form view for the model and update string of the field. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Read-only Knowledge articles now display with extra body padding so their layout stays consistent with editable articles that show action buttons. This creates a cleaner, more balanced reading experience without changing article content or behavior.
Original PR description
This commit adds padding to the readonly articles' body so that there is the same space as if the articles buttons were present in the view. task-3080921
Several spreadsheet dashboard template files were reformatted to make them easier to read and maintain. This does not change business functionality, but it should make future updates easier to review and less error-prone.
Original PR description
before this commit, the readability of the json files of documents_spreadsheet_account and documents_spreadsheet_crm is very less as the files are not properly aligned. after this commit, the readability will increase and later some one make any updates in these files, it is easy to understand the changes. https://github.com/odoo/enterprise/pull/35204/files : This is a previous commit made in one of this files and the difference is not properly showing by git and also less readable.
Timesheet creation and editing checks have been moved into separate reusable methods. This makes it easier for businesses with custom workflows to adapt timesheet validation rules without changing the core create or edit process.
Original PR description
Before this PR checking validation for creating and writing on timesheet done in create and write method which makes customization difficult for user. So, in this PR check validation for creating and writing on timesheet done in separate method _check_can_create and _check_can_write respectively for timesheet. task-2928942
The IoT Kanban view now uses a standard always-visible header button for key actions. This makes important actions easier to find and keeps the interface consistent with newer Odoo view behavior.
The Documents spreadsheet component was updated to align with the latest spreadsheet engine changes. This helps keep chart-related behavior reliable and maintains compatibility with ongoing improvements in spreadsheet features.
Original PR description
adapt tests following https://github.com/odoo/o-spreadsheet/commit/bf97a1e4 [IMP] registries: always populate chart/figure registries
The Knowledge app now shows a specific confirmation button label when moving an article, such as moving to a workspace, private area, or shared area. This helps users better understand the destination before confirming the action.
Original PR description
**PURPOSE** Currently, while moving an article from one category to another, the confirmation dialog shows the 'OK' label of the button. So it does not clarify where the article is actually being moved. **SPECIFICATIONS** For better clarification, the confirm label(OK) will be replaced by 'MOVE TO WORKSPACE/PRIVATE/SHARED' depending on the move. **Task**-3102492
Original PR description
When overriding an existing controller route, developers can easily c/p the route definition and call super() in the overridden method. ```python # website_sale @route(path, type='http',…
When overriding an existing controller route, developers can easily c/p the route definition and call super() in the overridden method.
```python
# website_sale
@route(path, type='http', website=True, sitemap=False)
def my_route(self, *args, **kw):
# do sthg
# website_sale_something
@route(path, type='http', website=False, sitemap=False)
def my_route(self, *args, **kw):
super().my_route(*args, **kw)
# do sthg else
```
when the route attributes are automatically deducted by odoo from the parent route.
```python
# website_sale_something
@route(path, website=False)
def my_route(self, *args, **kw):
super().my_route(*args, **kw)
# do sthg else
```
Removing those redefined attributes simplifies the routes definition, clearly highlighting what's changed by the override.
Also reduces unexpected behavior when modifying the base route without noticing/considering the redefined attributes in a overridden route, which overrides the changes made to the base route when the sub-module is installed.
This PR/commit adds a test to catch routes attributes redefinition, and clean existing routes.
Enterprise PR: https://github.com/odoo/enterprise/pull/35176
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr