Thursday, January 21, 2021
27 changes · master
Enhancements to existing features
The accounting bill upload tour now stores its needed attachment information directly instead of relying on another model relationship. This is an internal simplification that should make the code easier to maintain without changing the user experience.
Original PR description
account_tour_upload_bill is using an inherits only to use a single m2m field. This will remove the inherits and simply add the field directly into the account_tour_upload_bill model. task id #2339702 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Resolved issues and error corrections
This update removes outdated custom activity code from the online courses area because it is no longer needed. This helps keep the feature easier to maintain and reduces the chance of conflicts with current platform behavior, with no expected change for everyday users.
Original PR description
task-2429670
Features or functions removed from Odoo
This change cleans up empty placeholder files left behind after the Jabberwock editor rollback. It reduces confusion in the codebase and keeps website and email editor assets aligned with the reverted functionality, with no expected visible impact for users.
Original PR description
*: mass_mailing, website The revert of Jabberwock at [1] was made reverting all the commits that happened during and after the Jabberwock merge. This missed a preparation commit [2] which added empty asset files a few days earlier. This reverts that commit. [1]: https://github.com/odoo/odoo/commit/e5572c317a7775a58675ed73efc89b5c9f6c0c39 [2]: https://github.com/odoo/odoo/commit/55f10ac9a0bb574a893e84c3ee6237e1d439750b
Code cleanup and technical improvements
This update reorganizes the internal structure of Mail and Discuss channel code and related views, separating large components into clearer files. It is intended to make future improvements to groups, channels, and moderation easier to deliver, with no expected change to day-to-day user behavior.
Original PR description
PURPOSE Reorganize and lint mail.channel code. Purpose is to ease future modifications linked to groups and channels in mail / Discuss. SPECIFICATIONS Move mail.channel.partner and mail.moderation…
PURPOSE
Reorganize and lint mail.channel code. Purpose is to ease future modifications
linked to groups and channels in mail / Discuss.
SPECIFICATIONS
Move mail.channel.partner and mail.moderation models into their own file.
This makes some noise in diff but as channel is quite an heavy model let us
do this once for all.
Move mail.channel.partner views in their own file, as for python models.
Also containing
* separate and reorganize fields by main definition;
* separate and reorganize methods by categories, notably CRUD + orm, members
management, moderation, mailing, IM, commands;
* reorganize compute section: compute (by field order), constraints then
onchanges;
Reorganize and lint mail.channel code. Purpose is to ease future modifications
linked to groups and channels in mail / Discuss.
Some tools methods do not necessarily require to be public.
Cleanup a bit mail addon by moving menu definitions in their own file
according to guidelines.
No functional change should be involved in this PR as only some code move
and light renaming has been performed.
LINKS
Prepares Task ID-2070632 (Discuss channel task)
Prepares Task ID-2419762 (SM channel task)
COM PR #64862Miscellaneous changes
Steps: - Go to "Website" > "Go to Website" - Click Edit in the top right corner - Click Options - Select "Add a Google Font" in the Font Family field - Insert an erroneous Google Font link (e.g. https://fonts.google.com/specimen/Robotoj ) - Save & Reload - Click Edit again Bug: The Edit button is not responding anymore Explanation: We try to `@import` the link in multiple files. For example, here: https://github.com/odoo/odoo/blob/70eb39b0cf30c1acf9a7116e109874b60e27aa2c/addons/w
Original PR description
Steps: - Go to "Website" > "Go to Website" - Click Edit in the top right corner - Click Options - Select "Add a Google Font" in the Font Family field - Insert an erroneous Google Font link (e.g.…
The Planning app’s main action buttons now appear together on a single line in the Gantt view. This fixes a visual layout issue, making the controls easier to scan and use without changing business logic.
Original PR description
Before this commit, in the Planning app, the main buttons are not displayed on one line. After this commit, all the main buttons of the Planning app displayed on the same line Task-Id: 2428377 PR: #15833
This update makes certain manufacturing work order and quality fields read-only when they should not be edited directly. This helps prevent unnecessary background data updates that can slow performance or create unintended changes.
Original PR description
- Clean related fields of mrp_workorder odoo/odoo#64357 odoo/upgrade#2074 task-2424248
This fixes how the Documents Spreadsheet test files are grouped so they are included in the intended test bundle. It helps keep automated testing organized and reliable, with no expected impact on regular users.
Original PR description
The test files where included in the `web.qunit_suite` assets. They should be in `web.qunit_suite_test `
This update removes outdated activity customizations in the Approvals app that are no longer needed. It helps keep the approval workflow aligned with the current system behavior and reduces the chance of confusing or inconsistent activity displays.
Original PR description
task-2429670
This update fixes an internal automated test so it matches the current system behavior after date formatting began loading language settings. It helps keep payroll and leave-related quality checks reliable without changing day-to-day user workflows.
Original PR description
…idays https://github.com/odoo-dev/odoo/commit/2e54c3f225369486bf25047211a353b4dbf435bf From this commit, format_datetime method called and it fetch the language. Due to that query count of the test case is increases. So in this commit we increase the query count for system. LINKS PR: #15694 Task-Id:2339411
Steps: - Go to "Website" > "Go to Website" - Click Edit in the top right corner - Click Options - Select "Add a Google Font" in the Font Family field - Insert an erroneous Google Font link (e.g. https://fonts.google.com/specimen/Robotoj ) - Save & Reload - Click Edit again Bug: The Edit button is not responding anymore Explanation: We try to `@import` the link in multiple files. For example, here: https://github.com/odoo/odoo/blob/70eb39b0cf30c1acf9a7116e109874b60e27aa2c/addons/website/static/src/scss/website.scss#L10 An erroneous font family results in an error 400 from the Google Fonts server. This prevents parts of the JS to load and makes it impossible to enter the edition mode. `EditPageMenu` handles the behavior when clicking on the Edit button. This menu depends on `website.compiled_assets_wysiwyg` as seen here: https://github.com/odoo/odoo/blob/b02a99bec709b5a6dc4dabb6cb81435dadc24e7e/addons/website/static/src/js/menu/edit.js#L10-L14 Since there is an error generating the file, the Promise fails but the error is not handled: https://github.com/odoo/odoo/blob/70eb39b0cf30c1acf9a7116e109874b60e27aa2c/addons/web/static/src/js/core/ajax.js#L164-L168 This commit prevents CSS loading errors from silently failing. The crash screen will only show up if the user is logged in and has edition rights. This commit also prevents the user from posting the form if the font is not accessible. At the moment, querying an unknown Google font from a script will result in a CORS error. A valid one will pass just fine. In case Google changes the behavior of these queries and allows the 400 to be sent, the fix also checks if the query returned an `ok` status code. opw:2439073 Forward-Port-Of: odoo/odoo#64695
- When trying to timesheet on a task that is linked to a sale order line from a different company than the user's current one. An error is triggered due multi company access rights issue. This is due to two computed fields that are not computed in sudo mode. They make more sense as `computed_sudo` fields as they are only computed stats and are not leaking private data. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr For
Original PR description
- When trying to timesheet on a task that is linked to a sale order line from a different company than the user's current one. An error is triggered due multi company access rights issue. This is due to two computed fields that are not computed in sudo mode. They make more sense as `computed_sudo` fields as they are only computed stats and are not leaking private data. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#64822
Issue - Connect on smartphone (or use chrome debug mode to switch to mobile view) - Install "Ecommerce" module - Add a delivery method D with a price on product P and publish it - Go to shop and add product P to your cart - Go to payment and switch delivery method Total amount above the summary is not updated. Cause Update is done on JS when delivery method is changed. No targeting Total Amount in summary head card (seen only on small device). Solution Add ID
Original PR description
Issue - Connect on smartphone (or use chrome debug mode to switch to mobile view) - Install "Ecommerce" module - Add a delivery method D with a price on product P and publish it - Go to shop and add product P to your cart - Go to payment and switch delivery method Total amount above the summary is not updated. Cause Update is done on JS when delivery method is changed. No targeting Total Amount in summary head card (seen only on small device). Solution Add ID on Total Amount in summary head card element and update it with JS in same time as other fields (taxes, total, ...). opw-2424355 Forward-Port-Of: odoo/odoo#64726 Forward-Port-Of: odoo/odoo#64640
task-2388676 Forward-Port-Of: odoo/odoo#64827 Forward-Port-Of: odoo/odoo#64505
Original PR description
task-2388676 Forward-Port-Of: odoo/odoo#64827 Forward-Port-Of: odoo/odoo#64505
A purchase journal cannot be created without a default expense account A sale journal cannot be created without a default income account opw:2431278 Forward-Port-Of: odoo/odoo#64741
Original PR description
A purchase journal cannot be created without a default expense account A sale journal cannot be created without a default income account opw:2431278 Forward-Port-Of: odoo/odoo#64741
# Purpose Fix labels overlapping on the x axis. Now the labels will be displayed completly by modifying the number of characters per line and the font size. # Specification Adapt the font-size and the maximum number of characters per line with the number of columns. The font-size will be also modified by a ratio depending of the longest word in the labels. task-2382681 Forward-Port-Of: odoo/odoo#61913
Original PR description
# Purpose Fix labels overlapping on the x axis. Now the labels will be displayed completly by modifying the number of characters per line and the font size. # Specification Adapt the font-size and the maximum number of characters per line with the number of columns. The font-size will be also modified by a ratio depending of the longest word in the labels. task-2382681 Forward-Port-Of: odoo/odoo#61913
Configure an email server and create a login account with a space like "foo bar". In odoo configure an Outgoing mail server using that account, there is an error because the username is misconsidered invalid. The errors resides in the IDNA implementation of Odoo, we try to split the username to get a login and a domain in order to encode the domain using the ponycode algorithm. In case the username was not an email adress but just a single name, the single name was mistaken for a domain
Original PR description
Configure an email server and create a login account with a space like "foo bar". In odoo configure an Outgoing mail server using that account, there is an error because the username is misconsidered invalid. The errors resides in the IDNA implementation of Odoo, we try to split the username to get a login and a domain in order to encode the domain using the ponycode algorithm. In case the username was not an email adress but just a single name, the single name was mistaken for a domain. As domain cannot have spaces, an error was thrown. opw-2419024 Forward-Port-Of: odoo/odoo#64864
Task-2444878 Forward-Port-Of: odoo/odoo#64857
Original PR description
Task-2444878 Forward-Port-Of: odoo/odoo#64857
Issue - Create a company X with Columbian COA - Switch company X - Create a new Journal Entry: - Add 2 journal items; both with account as '23651510 Retencion en la fuente por honorarios persona Juridica 11%' - Set same amount on debit for first line, and credit for second line - Post the Entry - Go to 'Accounting -> Reporting -> Certificado de Retención en Fuente' - Unfold the created entry - Click on print preview - Set 'Fecha de Declaración' to 12/31/2020 On the
Original PR description
Issue - Create a company X with Columbian COA - Switch company X - Create a new Journal Entry: - Add 2 journal items; both with account as '23651510 Retencion en la fuente por honorarios persona Juridica 11%' - Set same amount on debit for first line, and credit for second line - Post the Entry - Go to 'Accounting -> Reporting -> Certificado de Retención en Fuente' - Unfold the created entry - Click on print preview - Set 'Fecha de Declaración' to 12/31/2020 On the pdf, the declaration date is to 2021. Cause 'Current year' is based on datetime.now() instead of the fiscal year of the declaration date (declaration_date field in the form). Solution If 'declaration_date' is available, take the fiscall year of this last one, else, fallback on fiscall year of datetime.now(). opw-2428537 Forward-Port-Of: odoo/enterprise#15862 Forward-Port-Of: odoo/enterprise#15805
Steps to reproduce the bug: - Let's consider that module Helpdesk is installed - Let's consider a internal user U without any right in Helpdesk - Logged with U - Go to /my/home Bug: odoo.exceptions.AccessError: ("Sorry, you are not allowed to access documents of type 'Helpdesk Ticket' (helpdesk.ticket). This operation is allowed for the groups:\n\t- Helpdesk/User\n\t- User types/Portal - (Operation: read, User: 6)", None) opw:2440499 Forward-Port-Of: odoo/enterprise#15876 Forw
Original PR description
Steps to reproduce the bug:
- Let's consider that module Helpdesk is installed
- Let's consider a internal user U without any right in Helpdesk
- Logged with U
- Go to /my/home
Bug:
odoo.exceptions.AccessError: ("Sorry, you are not allowed to access
documents of type 'Helpdesk Ticket' (helpdesk.ticket). This operation
is allowed for the groups:\n\t- Helpdesk/User\n\t- User types/Portal
- (Operation: read, User: 6)", None)
opw:2440499
Forward-Port-Of: odoo/enterprise#15876
Forward-Port-Of: odoo/enterprise#15867task-2429670 Forward-Port-Of: odoo/enterprise#15829
Original PR description
task-2429670 Forward-Port-Of: odoo/enterprise#15829
In the Executive Summary report each section has what appears to be a section total line but in each case it shows $0.00. opw-2426208 Forward-Port-Of: odoo/enterprise#15843
Original PR description
In the Executive Summary report each section has what appears to be a section total line but in each case it shows $0.00. opw-2426208 Forward-Port-Of: odoo/enterprise#15843
Since, 06a82a94fc4310dcb9b0570717338891cfaaf33b when an error occurs during the sign process a xml is also created, this was done to allow a better debug and understand of the issue. The issue, is that each time that there was an error a new xml was created. Now, there is only one cfdi document created. opw-2440256 Forward-Port-Of: odoo/enterprise#15854
Original PR description
Since, 06a82a94fc4310dcb9b0570717338891cfaaf33b when an error occurs during the sign process a xml is also created, this was done to allow a better debug and understand of the issue. The issue, is that each time that there was an error a new xml was created. Now, there is only one cfdi document created. opw-2440256 Forward-Port-Of: odoo/enterprise#15854
Before this commit, if finkok (Quadrum) answers with an error along with the signed document, the xml on Odoo will not be signed and only the error is shown. This occurs for example with : Error 307 : 'El CFDI contiene un timbre previo'. Now, if there is an error along the signed document, the error will not show, and the document will be signed on Odoo. opw-2440256 Forward-Port-Of: odoo/enterprise#15858
Original PR description
Before this commit, if finkok (Quadrum) answers with an error along with the signed document, the xml on Odoo will not be signed and only the error is shown. This occurs for example with : Error 307 : 'El CFDI contiene un timbre previo'. Now, if there is an error along the signed document, the error will not show, and the document will be signed on Odoo. opw-2440256 Forward-Port-Of: odoo/enterprise#15858
Legal time offs are taken either by half or full days. So round the decimal part of allocated time offs like this: - X <= 0.25 : 0 - 0.25 < X <= 0.75 : 0.5 - X > 0.75 : 1 Forward-Port-Of: odoo/enterprise#15860 Forward-Port-Of: odoo/enterprise#15831
Original PR description
Legal time offs are taken either by half or full days. So round the decimal part of allocated time offs like this: - X <= 0.25 : 0 - 0.25 < X <= 0.75 : 0.5 - X > 0.75 : 1 Forward-Port-Of: odoo/enterprise#15860 Forward-Port-Of: odoo/enterprise#15831
In the event of periods not containing consolidated data, when the user tried to run a comparison between periods, a crash occured. Now, if a period has no consolidation data, we just return an amount of 0. opw-2373213 Forward-Port-Of: odoo/enterprise#15824
Original PR description
In the event of periods not containing consolidated data, when the user tried to run a comparison between periods, a crash occured. Now, if a period has no consolidation data, we just return an amount of 0. opw-2373213 Forward-Port-Of: odoo/enterprise#15824
Behavior before this commit : - Create a company A with a l10n installed that contains an account.tax.report, and the fiscal country of A set accordingly - Create a company B with another l10n with account.tax.report and fiscal country - Open the tax report of A (the localized one) - Switch company to B => traceback https://github.com/odoo/enterprise/commit/3b50dd0e560965d2238545d992bfb92c7ae6c390 introduced a new module with two additional generic tax reports templates, applying differe
Original PR description
Behavior before this commit : - Create a company A with a l10n installed that contains an account.tax.report, and the fiscal country of A set accordingly - Create a company B with another l10n with account.tax.report and fiscal country - Open the tax report of A (the localized one) - Switch company to B => traceback https://github.com/odoo/enterprise/commit/3b50dd0e560965d2238545d992bfb92c7ae6c390 introduced a new module with two additional generic tax reports templates, applying different forms of "group by" to the original one. In the meantime, it refactored and broke the condition handling multicompany report switching, as the 'tax_report' option key contains 0 instead of None when the original generic report is selected. We handle that by explicitly listing the report identifiers that should be considered as generic reports, and are hence allowed on every company. Forward-Port-Of: odoo/enterprise#15801
Problem ------- Stage in recruitement process can have a reward of 0 point but you still want to see them as done in the recruitement process so referrer can see the complete status of there referree application Right now if a stage reward 0 point, you will never see it as done in the referral dashboard Solution -------- Consider a stage done as long as a hr.referral.point exist for this applicant and this stage even if it's 0 point Forward-Port-Of: odoo/enterprise#15865
Original PR description
Problem ------- Stage in recruitement process can have a reward of 0 point but you still want to see them as done in the recruitement process so referrer can see the complete status of there referree application Right now if a stage reward 0 point, you will never see it as done in the referral dashboard Solution -------- Consider a stage done as long as a hr.referral.point exist for this applicant and this stage even if it's 0 point Forward-Port-Of: odoo/enterprise#15865