Tuesday, December 19, 2023
32 changes · 17.0
Enhancements to existing features
List view column headers now have slightly less padding around their sort icon, giving labels more room to display. This reduces unnecessary truncation or hyphenation for fields such as Quantity and Unit Price, making lists easier to read.
Original PR description
List labels gets less hyphened Quant... > Quantity, Unit P... -> Unit Price The issue was more specific to float/integer fields, whose space was limited. So the padding around the arrow was utting a lot of space for he label. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Resolved issues and error corrections
Public visitors can now see booth category images on event pages without needing to log in. This fixes missing images for anonymous website users and helps event booth listings display correctly to all potential attendees or exhibitors.
Original PR description
[FIX] website_event_booth: make images of booth categories accessible by public user Currently, categories' images can only be seen while logged in. This fix will allow public user to have access to images. Description of the issue/feature this PR addresses: add access rights for booth category for public user Current behavior before PR: images of booths' are not loading if not logged in Desired behavior after PR is merged: images of booths' are loading regardless of the user opw-3625773 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Current behavior before PR: In project module when project form view opens there is a tiny horizontal scrollbar that doesn't seem necessary. Desired behavior after PR is merged: With this commit, I have fixed this issue and discard unnecessary tiny horizontal scrollbar in project form view. task: 3508251 Forward-Port-Of: odoo/odoo#137401
Original PR description
Current behavior before PR: In project module when project form view opens there is a tiny horizontal scrollbar that doesn't seem necessary. Desired behavior after PR is merged: With this commit, I have fixed this issue and discard unnecessary tiny horizontal scrollbar in project form view. task: 3508251 Forward-Port-Of: odoo/odoo#137401
This fix prevents a crash when opening certain mobile record creation flows that rely on the activity kanban view. It makes the view handle missing selection details safely, improving stability for customized screens.
Original PR description
When defining a selection field as field dependency, one must specify the options of that selection field (or at least an empty list if options don't matter). Because if that field isn't in the arch (which is the point of defining field dependencies), and the model has to process a value for that field, it will crash in `parseServerValue` (selection case). There's no scenario to reproduce this in standard, but one can build one: edit the project task form view arch, in the child_ids x2many, set mode="tree,kanban", but do not add the kanban nor the form view inline (s.t. default views are used). Then open the view in mobile and click to add a record in the relation. Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents an error from appearing when a user tries to replenish a product that has no replenishment rules configured. Users can now open the replenish action without disruption, improving reliability in stock workflows.
Original PR description
Currently traceback appears if no rules are available on the product. (Steps to reproduce: install sale and stock, but not purchase, go to the product and click "Replenish") Index is out of range because route_ids is an empty list. This fix will allow route_ids to be empty. Description of the issue/feature this PR addresses: Empty list of rules creates a situation where index becomes out of range in a wizard Current behavior before PR: Traceback appears when no rules are available Desired behavior after PR is merged: No traceback appears opw-3637054 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Users who enter an invalid context in a view will now see a validation error instead of a technical traceback. This helps administrators understand and correct configuration mistakes without encountering disruptive error pages.
Original PR description
This issue occurs when a customer passes an invalid context in the view, at that time this error will be generated. Steps To Produce:- - Go to `Settings >Technical >User Interface >Views` - Open any…
This issue occurs when a customer passes an invalid context in the view, at that time this error will be generated.
Steps To Produce:-
- Go to `Settings >Technical >User Interface >Views`
- Open any view
- pass invalid context like `context="{'search_default_demo': active_id}, 'search_default_x_stage_id':[3]}"`
- error will be generated
sentry traceback-
```
SyntaxError: unmatched '}' (<unknown>, line 1)
File "odoo/http.py", line 2157, in __call__
response = request._serve_db()
File "odoo/http.py", line 1732, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "odoo/service/model.py", line 133, in retrying
result = func()
File "odoo/http.py", line 1759, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 1960, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 207, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 722, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "home/odoo/src/enterprise/17.0/web_studio/controllers/main.py", line 755, in edit_view_arch
view.write({'arch': view_arch})
File "home/odoo/src/enterprise/17.0/web_studio/models/studio_mixin.py", line 33, in write
res = super(StudioMixin, self).write(vals)
File "odoo/addons/base/models/ir_ui_view.py", line 524, in write
res = super(View, self).write(self._compute_defaults(vals))
File "odoo/models.py", line 4422, in write
fields[0].determine_inverse(real_recs)
File "odoo/fields.py", line 1397, in determine_inverse
determine(self.inverse, records)
File "odoo/fields.py", line 101, in determine
return needle(*args)
File "odoo/addons/base/models/ir_ui_view.py", line 268, in _inverse_arch
view.write(data)
File "home/odoo/src/enterprise/17.0/web_studio/models/studio_mixin.py", line 33, in write
res = super(StudioMixin, self).write(vals)
File "odoo/addons/base/models/ir_ui_view.py", line 524, in write
res = super(View, self).write(self._compute_defaults(vals))
File "odoo/models.py", line 4412, in write
real_recs._validate_fields(vals, inverse_fields)
File "odoo/models.py", line 1449, in _validate_fields
check(self)
File "odoo/addons/base/models/ir_ui_view.py", line 384, in _check_xml
view._validate_view(combined_arch, view.model)
File "odoo/addons/base/models/ir_ui_view.py", line 1353, in _validate_view
self._validate_attributes(node, name_manager, node_info)
File "odoo/addons/base/models/ir_ui_view.py", line 1649, in _validate_attributes
vnames = get_expression_field_names(expr) - {'id'}
File "odoo/tools/view_validation.py", line 243, in get_expression_field_names
item_ast = ast.parse(expression.strip(), mode='eval').body
File "ast.py", line 50, in parse
return compile(source, filename, mode, flags,
```
after this commit, we can display Validation Errors to users instead of a traceback when they make mistakes in any UI view.
sentry-4684090820The multi-record selector dropdown now uses only the space it needs instead of taking up a full line. This makes forms cleaner and easier to scan, especially where several fields appear close together.
Original PR description
### Before: Previously, the multi-record selector dropdown occupied an entire line. ### After: This PR addresses this issue by applying the `flex: 1 0 1rem;` property to the auto-complete dropdown. This adjustment confines the dropdown to the necessary space. If the space available is less than `1rem`, it will wrap to a new line. Task ID: [3607067](https://www.odoo.com/web#id=3607067&cids=2&menu_id=4720&action=333&active_id=2328&model=project.task&view_type=form)
The Contacts help text no longer mentions the Private Address option, which was already removed from the product. This avoids confusion for users who could not find that address type in the contact form.
Original PR description
### Steps to reproduce issue: 1. Open Contacts 2. Select a contact 3. Choose: - Add an address - Only if contact is individual: Select drop-down menu next to Address fields in form 4. Private Address doesn't show in the options ### Explanation: Private Address was intentionally deleted from `res.partner.type` in *v16.4* (cf. b1f7e56f7938649c540cab8c2feec3c6407ae47d). ### Suggested change: Remove Private Address paragraph in `res.partner.type.help`, it should not exist anymore. opw-3602922
This update adjusts tests across several Odoo apps so they no longer depend on optional demo data being installed. That makes validation more consistent for deployments and reduces the risk of false test failures across accounting, CRM, calendar, authentication, and other business workflows.
Original PR description
Description of the issue/featureforum.post this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes the website editor so column count options update only after a user finishes resizing a column, rather than during the drag. The change makes the editor behave more consistently and avoids unreliable updates caused by unfinished background processing.
Original PR description
Since [commit 1], the columns count in the options is updated while dragging the width handle of a column. That behavior relies on asynchronous code which is not awaited. This commit corrects it to be in line with the behavior of all other options: the count is updated after releasing the drag. [commit 1]: https://github.com/odoo/odoo/commit/710d000f1872fd99b41d52ec3d6923756bba7cba task-3576046
This update fixes a test in the Planning module that was failing due to incorrect timezone configuration. The test now properly sets the employee's timezone to match the test requirements, ensuring the scheduling duplication feature works correctly when preserving local times across different timezones.
Original PR description
`test_duplication_should_preserve_local_time` calls `action_copy_previous_week` with a timezone in the context. The issue is that the method get the timezone from the employee or else the context, yet the employee has a tz 'UTC', so it crashes. We this commit, we set the desired tz on the employee. Forward-Port-Of: odoo/enterprise#52928
The "Average Rating" option has been removed from the Measures dropdown menu in the Helpdesk Ticket Analysis report. Since both "Average Rating" and "Rating (/5)" were providing duplicate rating information, removing the redundant option streamlines the reporting interface and reduces user confusion when selecting metrics to analyze.
Original PR description
Before this PR, within the "Measures" button, We have provided both the "Average Rating" and the "Rating (/5)" as both of measures representing rating values. Therefore, we don't need "Average Rating" in the "Measures" dropdown menu any further. In this PR: removed the "Average Rating" field from the "Measures" dropdown menu. task-3475975 Forward-Port-Of: odoo/enterprise#46458
If ecommerce was installed, website privacy setting "Customer Account" was hidden and replaced with another setting. Now both of these settings are shown. task-3321443 Forward-Port-Of: odoo/odoo#146208 Forward-Port-Of: odoo/odoo#139651
Original PR description
If ecommerce was installed, website privacy setting "Customer Account" was hidden and replaced with another setting. Now both of these settings are shown. task-3321443 Forward-Port-Of: odoo/odoo#146208 Forward-Port-Of: odoo/odoo#139651
Step to reproduce: - Create a mega menu - Enter edit mode and select it - You can duplicate the top level block (but not remove it) - If you duplicate it, you end up with a second top level block that you can't delete ever, even by deleting inner elements one by one. Technical details: 1. The remove button of the mega menu is already hidden thanks to commit [1] which used the `forceNoDeleteButton` editor option introduced with commit [2]. 2. The table of content snippet also need to hid
Original PR description
Step to reproduce: - Create a mega menu - Enter edit mode and select it - You can duplicate the top level block (but not remove it) - If you duplicate it, you end up with a second top level block…
Step to reproduce: - Create a mega menu - Enter edit mode and select it - You can duplicate the top level block (but not remove it) - If you duplicate it, you end up with a second top level block that you can't delete ever, even by deleting inner elements one by one. Technical details: 1. The remove button of the mega menu is already hidden thanks to commit [1] which used the `forceNoDeleteButton` editor option introduced with commit [2]. 2. The table of content snippet also need to hide both the delete and clone button. It was done in an "non-ideal" way with commit [3]. 3. The delete button removal for table of content snippet was actually improved to use the `forceNoDeleteButton` option of commit [2]. 4. It's also commit [1] which prevent the deletion of the top level block when deleting inner elements one by one: when the last one is deleted, it regenerates the whole block. This commit thus simply introduce a `forceNoCloneButton` option in the editor to mimick the `forceNoDeleteButton` option and uses it for the mega menu element. It also take the opportunity to use it in the table of content snippet. [1]: https://github.com/odoo/odoo/commit/97810a9c40396bb27cb5779937734849d185cf1f [2]: https://github.com/odoo/odoo/commit/7ef484377a493ebe558242480d0da6b542d6c247 [3]: https://github.com/odoo/odoo/commit/9fb2dad97cfbd412bee3cb5d1358a9835e721f60#diff-ea32a091d6b1a47aeea680fa39bbc9111260cbdaf07e9f388a9d04741806ea8fR128-R129 opw-3604033 opw-3627319 Forward-Port-Of: odoo/odoo#146015
Before this commit, the CSS properties defined by the `o_link_in_selection` class could be applied to a link outside the editable. In particular, the link preview in the LinkDialog widget would display the visual indicator of a link in selection, even though it is not editable nor selected (this happens because the link preview contains the classes of the original link being edited). As the styling provided by `.o_link_in_selection` is only meant to be applied to links inside the editable, th
Original PR description
Before this commit, the CSS properties defined by the `o_link_in_selection` class could be applied to a link outside the editable. In particular, the link preview in the LinkDialog widget would display the visual indicator of a link in selection, even though it is not editable nor selected (this happens because the link preview contains the classes of the original link being edited). As the styling provided by `.o_link_in_selection` is only meant to be applied to links inside the editable, this commit makes sure the CSS rule is specific about that. task-3580546 Forward-Port-Of: odoo/odoo#145386 Forward-Port-Of: odoo/odoo#140996
Prior to this commit, a user was able to modify the commercial fields of a partner in the POS. This is not wanted and not possible in the backend. This commit adapts it to the backend behavior. task-id: 2810741 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#146289
Original PR description
Prior to this commit, a user was able to modify the commercial fields of a partner in the POS. This is not wanted and not possible in the backend. This commit adapts it to the backend behavior. task-id: 2810741 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#146289
The "Remaining Days/Hours on so" field wasn't displayed on the portal tasks view, because of an issue with two templates having the same id. In the view file sale_timesheet_portal_templates.xml, the portal_timesheet_table_inherit template is now depreciated and its content was moved into the project_portal_templates.xml file. task-3595003 Forward-Port-Of: odoo/odoo#142020
Original PR description
The "Remaining Days/Hours on so" field wasn't displayed on the portal tasks view, because of an issue with two templates having the same id. In the view file sale_timesheet_portal_templates.xml, the portal_timesheet_table_inherit template is now depreciated and its content was moved into the project_portal_templates.xml file. task-3595003 Forward-Port-Of: odoo/odoo#142020
Since [1], messages received out of focus are notified to the user via the tab title. In order to do so, the title service is used. This service changes the tab title according to its internal state. When the live chat is embed on a page, the original title of the page is not coming from the title service. When the service state changes, the title is replaced without taking into account the original title. This behavior is not correct. In practice, this functionality is only used in b
Original PR description
Since [1], messages received out of focus are notified to the user via the tab title. In order to do so, the title service is used. This service changes the tab title according to its internal state. When the live chat is embed on a page, the original title of the page is not coming from the title service. When the service state changes, the title is replaced without taking into account the original title. This behavior is not correct. In practice, this functionality is only used in by the `web` bundle. The error occurs because the code handling this behavior is placed in the common bundle while it should not. This PR fixes this issue by moving this code to the `web` bundle. task-3644431 [1]: https://github.com/odoo/odoo/pull/145216 Forward-Port-Of: odoo/odoo#146664
**Current behaviour before commit:** -When creating a link, the 'unlink' button is not getting appeared in the toolbar. -When removing a link through 'unlink' button, the 'unlink' button is not getting disappeared in toolbar. -Before this commit, `_updateEditorUI` method is responsible for hiding/ showing create-link button. **Desired behaviour after commit:** -Now, When creating a link, the 'unlink' button gets appeared in the toolbar. -When removing link through 'u
Original PR description
**Current behaviour before commit:** -When creating a link, the 'unlink' button is not getting appeared in the toolbar. -When removing a link through 'unlink' button, the 'unlink' button is not getting disappeared in toolbar. -Before this commit, `_updateEditorUI` method is responsible for hiding/ showing create-link button. **Desired behaviour after commit:** -Now, When creating a link, the 'unlink' button gets appeared in the toolbar. -When removing link through 'unlink' button, the 'unlink' button gets disappeared in toolbar. -This commit ensures that `_updateToolbar` method is responsible for hiding/ showing the create-link and unlink button. task-3514639 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#140262
Currently it's not possible to send facturae invoices through FACe, since we did not include administrative centers in the XML. This commit fixes that by: - Introducing a new partner type for Administrative Centers, with the necessary fields - Adding all Administrative Centers linked to a partner on the facturae electronic invoice Since often the three required Administrative Centers (Fiscal, Receiver and Payer) are the same, we allow the user to specify multiple roles on an Administra
Original PR description
Currently it's not possible to send facturae invoices through FACe, since we did not include administrative centers in the XML. This commit fixes that by: - Introducing a new partner type for Administrative Centers, with the necessary fields - Adding all Administrative Centers linked to a partner on the facturae electronic invoice Since often the three required Administrative Centers (Fiscal, Receiver and Payer) are the same, we allow the user to specify multiple roles on an Administrative Center. [task-3599447](https://www.odoo.com/web#id=3599447&cids=1&menu_id=4720&action=333&active_id=967&model=project.task&view_type=form) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#142935
The new, refactored method `_compute_tax_id` caches the results of `account.fiscal.position.map_tax()` to improve performances; however, this makes it nearly impossible to customize the behavior of this method in case other elements are added to the workflow of taxes computation. Every sale order line with the same fiscal position, company and product taxes have their taxes mapped in the same manner This commit adds a hook to allow custom modules to specify additional custom cache keys. F
Original PR description
The new, refactored method `_compute_tax_id` caches the results of `account.fiscal.position.map_tax()` to improve performances; however, this makes it nearly impossible to customize the behavior of this method in case other elements are added to the workflow of taxes computation. Every sale order line with the same fiscal position, company and product taxes have their taxes mapped in the same manner This commit adds a hook to allow custom modules to specify additional custom cache keys. Forward-Port-Of: odoo/odoo#146271
Before this commit, pasting a URL as plain text followed by picking "Embed Youtube Video" in the command bar failed to embed the video, inserting the following text instead: "[object Promise]". This happened because [1], which is the result of a forward-port, failed to `await` the call to getYoutubeVideoElement, which is an async function since version 15.2. [1]: https://github.com/odoo/odoo/commit/c2f0519fec40dcf529218f39829e0a09c0f7af69 task-3611566 Forward-Port-Of:
Original PR description
Before this commit, pasting a URL as plain text followed by picking "Embed Youtube Video" in the command bar failed to embed the video, inserting the following text instead: "[object Promise]". This happened because [1], which is the result of a forward-port, failed to `await` the call to getYoutubeVideoElement, which is an async function since version 15.2. [1]: https://github.com/odoo/odoo/commit/c2f0519fec40dcf529218f39829e0a09c0f7af69 task-3611566 Forward-Port-Of: odoo/odoo#146323 Forward-Port-Of: odoo/odoo#143866
This pull request addresses three key changes in the hr_holidays module for improving user interface and access rights. Specifically, it corrects the logic to show/hide "Approve/Refuse" buttons based on HR app permissions, adds spacing between dates for better readability, and renames the UI title for clarity. task-3507942 Forward-Port-Of: odoo/odoo#136128
Original PR description
This pull request addresses three key changes in the hr_holidays module for improving user interface and access rights. Specifically, it corrects the logic to show/hide "Approve/Refuse" buttons based on HR app permissions, adds spacing between dates for better readability, and renames the UI title for clarity. task-3507942 Forward-Port-Of: odoo/odoo#136128
Steps to reproduce: ------------------- - modify the company calendar to get an other value than 8 average hour per day; - add this calendar to two employees (A and B); - create a type of leave for the current company; - create an allocation for the employee A for this type with X hours without saving; - add the employee B; Issue: ------ The number of hours is modified. Cause: ------ There is an inconsistency between `_compute_number_of_hours_display` and `_compute_from_holiday_s
Original PR description
Steps to reproduce: ------------------- - modify the company calendar to get an other value than 8 average hour per day; - add this calendar to two employees (A and B); - create a type of leave for…
Steps to reproduce: ------------------- - modify the company calendar to get an other value than 8 average hour per day; - add this calendar to two employees (A and B); - create a type of leave for the current company; - create an allocation for the employee A for this type with X hours without saving; - add the employee B; Issue: ------ The number of hours is modified. Cause: ------ There is an inconsistency between `_compute_number_of_hours_display` and `_compute_from_holiday_status_id` methods. In the `_compute_from_holiday_status_id` the number of hours is determined according to order: employee calendar --> company calendar --> constant (8 hours) In the `_compute_number_of_hours_display` the number of hours directly falls back on the constant if we don't find an employee for a type of leave that is employee. In the case of multiple employees, we will always use this constant, whereas we use the company calendar in the other method. Solution: --------- Keep the company calendar if you don't have an employee before falling back on a constant. opw-3617281 Forward-Port-Of: odoo/odoo#145783
Before this commit: there was no stat button 'publish' displayed for payment provider 'pay in store'. Reason: The stat button is shown when the module is installed but there was no connected module on the 'payment_provider_onsite' record. With this commit the module_id is added. Forward-Port-Of: odoo/odoo#146282
Original PR description
Before this commit: there was no stat button 'publish' displayed for payment provider 'pay in store'. Reason: The stat button is shown when the module is installed but there was no connected module on the 'payment_provider_onsite' record. With this commit the module_id is added. Forward-Port-Of: odoo/odoo#146282
This commit fixes a crash that would happen on file upload in the project sharing portal chatter. This crash was caused by the file size check in the uploadFiles method of the FileInput component due to the fact that the PortalFileInput calls this method once per file instead of once for all files. The fix therefore ensures that the file size check will be correctly applied in the case of a single file parameter instead of a files array. Steps to reproduce: - Access the portal (with the /my
Original PR description
This commit fixes a crash that would happen on file upload in the project sharing portal chatter. This crash was caused by the file size check in the uploadFiles method of the FileInput component due to the fact that the PortalFileInput calls this method once per file instead of once for all files. The fix therefore ensures that the file size check will be correctly applied in the case of a single file parameter instead of a files array. Steps to reproduce: - Access the portal (with the /my route) - Go to Projects - Open the AGR - S00064 - Sales Order project - Open any task in the kanban view - Send an attachment in the chatter - Before the fix, a traceback occurs on file upload opw-3628996 Forward-Port-Of: odoo/odoo#146072 Forward-Port-Of: odoo/odoo#145918
Current behaviour: --- Wrong format used when importing dates Steps to reproduce: --- 1. Change your language to German 2. Go to Sales > Orders 3. Export to XLSX 4. Change to dates to german format (ie: 10.09.2023) 5. Favorites > import records > Upload file 6. Click on Test 7. "does not match format '%Y-%m-%d'" Cause of the issue: --- Only default formats were taken into account because options are empty. opw-3540715 --- I confirm I have signed the CLA and read the PR
Original PR description
Current behaviour: --- Wrong format used when importing dates Steps to reproduce: --- 1. Change your language to German 2. Go to Sales > Orders 3. Export to XLSX 4. Change to dates to german format (ie: 10.09.2023) 5. Favorites > import records > Upload file 6. Click on Test 7. "does not match format '%Y-%m-%d'" Cause of the issue: --- Only default formats were taken into account because options are empty. opw-3540715 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#141283
Steps to produce: - Go to sales application and create a product with a type service and create order with project & task - Select a customer and the product and then confirm - click on project stat button then sales and then task Issue: Missing active record Solution:In the context, id should be used instead of active_id because it gets false. task-3549489 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is
Original PR description
Steps to produce:
- Go to sales application and create a product with a type service and create order with project & task
- Select a customer and the product and then confirm
- click on project stat button then sales and then task
Issue: Missing active record
Solution:In the context, id should be used instead of active_id
because it gets false.
task-3549489
Description of the issue/feature this PR addresses:
Current behavior before PR:
Desired behavior after PR is merged:
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#140683Translate l10n_cz to Czech
Original PR description
Translate l10n_cz to Czech
The Content-Security-Policy[^1] http header was only set on the response generated by controllers but it was missing from the `/<module>/static/` route. It is not strictly necessary to set that header on the responses comming from that routes as it is not possible to add new static files or edit existing ones via the interface (not even as admin). Only the developers and system administrator can access those files. It is also worth mentionning that using the Odoo internal web server to del
Original PR description
The Content-Security-Policy[^1] http header was only set on the response generated by controllers but it was missing from the `/<module>/static/` route. It is not strictly necessary to set that header on the responses comming from that routes as it is not possible to add new static files or edit existing ones via the interface (not even as admin). Only the developers and system administrator can access those files. It is also worth mentionning that using the Odoo internal web server to deliver static files is suboptimal. Outside of a dev environment, those files will typically be delivered via a web server[^2] and sysadmins should configure their web server to set the CSP header on static images. [^1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP [^2]: https://www.odoo.com/documentation/master/administration/install/deploy.html#serving-static-files-and-attachments Forward-Port-Of: odoo/odoo#131700
This PR attempts to clean up some of the inconsistencies for the sequence_id/sequence_code for picking types. Specifically: - revert the python restriction that blocks picking types from having a duplicated `sequence_id` name. This was too restrictive and caused many other issues as a result - revert the linking of the sequence_id between a duplicate picking types since it can easily result in inconsistent `sequence_code` vs `sequence_id.prefix` values when changing the `sequence_code` of on
Original PR description
This PR attempts to clean up some of the inconsistencies for the sequence_id/sequence_code for picking types. Specifically: - revert the python restriction that blocks picking types from having a…
This PR attempts to clean up some of the inconsistencies for the sequence_id/sequence_code for picking types. Specifically: - revert the python restriction that blocks picking types from having a duplicated `sequence_id` name. This was too restrictive and caused many other issues as a result - revert the linking of the sequence_id between a duplicate picking types since it can easily result in inconsistent `sequence_code` vs `sequence_id.prefix` values when changing the `sequence_code` of only 1 of the picking types - adds in a different fix for the 2 reverts where we: 1. only give a warning if the user attempts to reuse an existing `sequence_code` 2. Add "copy" to the end of a duplicated picking type's `sequence_code` so that the user will see the warning if they attempt to reuse the existing one and the picking type will still have a unique `sequence_id` (unless the user changes it themselves) See the individual commit messages for more lengthy explanations. Also note that some additional broken things with the sequences logic were noticed during the work on this PR, but were purposely not addressed because they seem minor enough for now (see last commit message for more details). Additionally there is an extra bug(s?) that need to be deeply investigated to determine how picking types are sometimes automatically being duplicated --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#146277 Forward-Port-Of: odoo/odoo#143848
Anlytic distribution models did not apply to bank recon entries. The corresponding enterprise PR activates the feature, however due to dependencies on non-precomputed fields, the attribute is removed OPW-3558060 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#143330
Original PR description
Anlytic distribution models did not apply to bank recon entries. The corresponding enterprise PR activates the feature, however due to dependencies on non-precomputed fields, the attribute is removed OPW-3558060 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#143330