Saturday, April 19, 2025
14 changes · saas-18.2
Resolved issues and error corrections
The “edited” marker shown on changed messages is now smaller and easier to distinguish from the actual message text. This makes conversations cleaner and improves readability, especially in browsers where the old italic styling could display poorly.
Original PR description
The message "(edited)" label had the following issues: - it looked too similar to message text content, notably the font-size - italics is harder to read and is prone to cut at end of text on Gecko rendering engine This commit fixes the issue by reducing the size of this label, no italics, normal weight. Opacity matches with other items in message list of similar level of importance such as datetime. Before / After <img width="243" alt="Screenshot 2025-04-18 at 22 00 02" src="https://github.com/user-attachments/assets/26b104a1-8620-4406-b380-f8c0839547e8" /> <img width="236" alt="Screenshot 2025-04-18 at 22 00 27" src="https://github.com/user-attachments/assets/54268752-b2a8-40b0-8296-4d2cbc3bb173" />
The Discuss call interface now keeps participant overlay icons proportional in small call views, reducing clutter and making video or screen sharing easier to see. It also corrects a dark mode background color issue for a cleaner visual experience.
Original PR description
Before this commit, in small call views, the overlay of participant cards was taking too much space and made the UI feel too cluttered while hiding the camera/screen of participants. This commit fixes this issue by making the icons proportional to their containers. This commit also fixes an improper dynamic background color in dark mode. | Before | After | |--------|--------| |  |  | |  |  |
The mail call view now uses a smaller outer margin to create a subtler floating effect. This improves the visual balance of calls in the interface without changing how users interact with the feature.
Original PR description
Follow-up of https://github.com/odoo/odoo/pull/206260 PR above improve style of call view with some spacing around it which looks better. However, the spacing was too big even though it uses the minimum `.mx-1.mt-1` of 4px. The 4px spacing is in many cases the minimum desired to see spacing between 2 elements, but here the intent is to give a container a slight visual floating effect. The 4px is appropriate to show item next to each other but 2px is best to simulate floating effect. This commit improves by reducing the spacing by half their value. Before <img width="401" alt="Screenshot 2025-04-18 at 21 42 46" src="https://github.com/user-attachments/assets/5260080f-3759-4083-861d-ec6727800d0e" /> After <img width="409" alt="Screenshot 2025-04-18 at 21 41 42" src="https://github.com/user-attachments/assets/2a90bd9f-9ed9-48b7-927b-a64812706fb7" />
Miscellaneous changes
Creating many savepoints can lead to issues, not only in the current transaction, but also on other transactions from other connections on other databases[^1]. The `sequence.mixin` relies heavily on a unique constraint for giving a sequence without gaps[^2], which forces the use of savepoints because we expect the transaction to fail when assigning numbers with concurrent transactions. A previous commit removes savepoints created in a loop, which could happen when concurrency happens[^3],
Original PR description
Creating many savepoints can lead to issues, not only in the current transaction, but also on other transactions from other connections on other databases[^1]. The `sequence.mixin` relies heavily on…
Creating many savepoints can lead to issues, not only in the current transaction, but also on other transactions from other connections on other databases[^1]. The `sequence.mixin` relies heavily on a unique constraint for giving a sequence without gaps[^2], which forces the use of savepoints because we expect the transaction to fail when assigning numbers with concurrent transactions. A previous commit removes savepoints created in a loop, which could happen when concurrency happens[^3], but there is still an issue when many records are getting a sequence number in the same transaction. This happens for instance when posting journal entries in batch (i.e. after an import), creating a `account.asset` in the past, or validating a batch payment with exchange differences. This commit is now caching the value as soon as the lock is held for a series in the sequence, and is now doing only one savepoint per series in the same transaction. [^1]: https://github.com/odoo/odoo/pull/71395#issuecomment-851440042 [^2]: c45998c8368c6feb3d574d6d3d0ad064faf21679 [^3]: 10565c6968a5d0f285f93c4bdc610350999a88e3 Forward-Port-Of: odoo/odoo#204510
Until version 0.9.8 of vobject we need to ignore: - DeprecationWarning in python 3.6 and after - SyntaxWarning since python 3.12 See https://github.com/py-vobject/vobject/commit/da50fdb5fa871e4c5c3420d1e2e34e7c9ce6bb30 The warning occurs only during the first precompilation of the library. It does not occur on readonly filesystem, ie runbot --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206529 Forward-Port-Of:
Original PR description
Until version 0.9.8 of vobject we need to ignore: - DeprecationWarning in python 3.6 and after - SyntaxWarning since python 3.12 See https://github.com/py-vobject/vobject/commit/da50fdb5fa871e4c5c3420d1e2e34e7c9ce6bb30 The warning occurs only during the first precompilation of the library. It does not occur on readonly filesystem, ie runbot --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206529 Forward-Port-Of: odoo/odoo#206115
In the _compute_name_placeholder method, self.date is used inside the for move in self loop which causes a singleton error when self is a multiple records recordset. This commit replaces self by move to avoid the singleton error. no-task --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206553
Original PR description
In the _compute_name_placeholder method, self.date is used inside the for move in self loop which causes a singleton error when self is a multiple records recordset. This commit replaces self by move to avoid the singleton error. no-task --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206553
Description of the issue/feature this PR addresses: Current behavior before PR: Project users can't subscribe partners in projectw which visibility is set to 'Invited internal users': - Set a project to that visibility type. - Create a task. - Assign a user outside the project who just has 'Project user' permissions to that task. - With that user: in the task, try to subscribe a partner to the chatter. - With that user: in the chatter, try to mention a partner who's not subscribed
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Project users can't subscribe partners in projectw which visibility is set to 'Invited internal users': - Set a project to that visibility type. - Create a task. - Assign a user outside the project who just has 'Project user' permissions to that task. - With that user: in the task, try to subscribe a partner to the chatter. - With that user: in the chatter, try to mention a partner who's not subscribed to the task's thread. The user couldn't subscribe any user due to permission issues on project.project. Desired behavior after PR is merged: User's are able to operate normally where access is granted. OPW-4725100 MT-9830 cc @moduon @rafaelbn @EmilioPascual --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206298 Forward-Port-Of: odoo/odoo#205908
Accounts of the following account types should generally speaking not be reconcilable: - `asset_cash` - `liability_credit_card` - `off_balance` That is why the "Allow Reconciliation" (`reconcile`) field is already invisible on the 'account.account' form and list views. After this commit - All such accounts in the standard chart of accounts are not reconcilable (there were non for `off_balance`) - The compute function on 'account.account' sets those accounts to not be reconcila
Original PR description
Accounts of the following account types should generally speaking not be reconcilable: - `asset_cash` - `liability_credit_card` - `off_balance` That is why the "Allow Reconciliation" (`reconcile`) field is already invisible on the 'account.account' form and list views. After this commit - All such accounts in the standard chart of accounts are not reconcilable (there were non for `off_balance`) - The compute function on 'account.account' sets those accounts to not be reconcilable (already done for `asset_cash`) when changing the account type. task: None Forward-Port-Of: odoo/odoo#206700 Forward-Port-Of: odoo/odoo#206011
Steps to reproduce: 1. Install Indian E-waybill(`l10n_in_edi_ewaybill`) 2. Activate Unit of Measures 3. Create a Invoice with a move line product as default UOM as units. 4. Change the UOM on line to Dozens 5. Confirm and send the E-waybill On portal the E-waybill for that line is Unit instead of Dozens In this commit we fix the issue opw-4728253 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206630 Forward
Original PR description
Steps to reproduce: 1. Install Indian E-waybill(`l10n_in_edi_ewaybill`) 2. Activate Unit of Measures 3. Create a Invoice with a move line product as default UOM as units. 4. Change the UOM on line to Dozens 5. Confirm and send the E-waybill On portal the E-waybill for that line is Unit instead of Dozens In this commit we fix the issue opw-4728253 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#206630 Forward-Port-Of: odoo/odoo#206191
In this commit, we're refactoring macro.js by completely changing its operation. To detect triggers in the DOM, we no longer rely on DOM mutations, but instead check for each frame to see if the trigger is in the DOM. Once the trigger is found, we perform the action and move on to the next step. This significantly simplifies understanding of how macro.js works, tours, and, more importantly, the bugs that can occur in tours. This also avoids many indeterministic errors that could occur in
Original PR description
In this commit, we're refactoring macro.js by completely changing its operation. To detect triggers in the DOM, we no longer rely on DOM mutations, but instead check for each frame to see if the trigger is in the DOM. Once the trigger is found, we perform the action and move on to the next step. This significantly simplifies understanding of how macro.js works, tours, and, more importantly, the bugs that can occur in tours. This also avoids many indeterministic errors that could occur in the tours due to the completely arbitrary "checkDelay" parameter (the time period after which there are no more mutations before the element is checked to see if it is in the DOM). This checkDelay parameter is therefore no longer used. It will be completely removed from the codebase in a future PR. Forward-Port-Of: odoo/odoo#205450 Forward-Port-Of: odoo/odoo#194508
From the first of July 2025, the standard rate of VAT in Estonia is 24% instead of the current 22%. This commit adds the new tax. Also, one of the EU Intra-Community mappings was missing, specifically the 22% G (Purchases) -> 0% EU G 22% (Purchases). This was also added. task-4595806 Forward-Port-Of: odoo/odoo#205436 Forward-Port-Of: odoo/odoo#199789
Original PR description
From the first of July 2025, the standard rate of VAT in Estonia is 24% instead of the current 22%. This commit adds the new tax. Also, one of the EU Intra-Community mappings was missing, specifically the 22% G (Purchases) -> 0% EU G 22% (Purchases). This was also added. task-4595806 Forward-Port-Of: odoo/odoo#205436 Forward-Port-Of: odoo/odoo#199789
Avalara populates those fields as "false" in the account, which causes issues during EDI. We keep sending the fields, but send empty string instead. opw-4716571 Forward-Port-Of: odoo/enterprise#83602 Forward-Port-Of: odoo/enterprise#83550
Original PR description
Avalara populates those fields as "false" in the account, which causes issues during EDI. We keep sending the fields, but send empty string instead. opw-4716571 Forward-Port-Of: odoo/enterprise#83602 Forward-Port-Of: odoo/enterprise#83550
This PR fixes an issue where the switch buttons in the documents module had incorrect padding when clicking on the activity switch view button.This fix ensures proper spacing and alignment across the interface. Task-4680512 Forward-Port-Of: odoo/enterprise#82747
Original PR description
This PR fixes an issue where the switch buttons in the documents module had incorrect padding when clicking on the activity switch view button.This fix ensures proper spacing and alignment across the interface. Task-4680512 Forward-Port-Of: odoo/enterprise#82747
In this commit, we prefer to use click on element instead of press Tab because tab will directly focus the other range period input. Forward-Port-Of: odoo/enterprise#83186 Forward-Port-Of: odoo/enterprise#82937
Original PR description
In this commit, we prefer to use click on element instead of press Tab because tab will directly focus the other range period input. Forward-Port-Of: odoo/enterprise#83186 Forward-Port-Of: odoo/enterprise#82937