Thursday, May 22, 2025
3 changes · saas-17.4
Resolved issues and error corrections
This fix prevents an error when users configure and scan GS1-128 barcode rules outside a GS1 nomenclature setup. It improves reliability in barcode workflows by ensuring these scans no longer cause the app to crash.
Original PR description
Currently, a traceback will occur when the user adds the gs1-128 encoding rule for non gs1-nomenclature record and tries to scan a barcode. To reproduce this issue: 1) Install stock, barcode 2) In the default Nomenclature(non gs1 nomenclature) record add a barcode rule 3) Make sure the encoding should be `gs1-128` with a valid pattern 4) Now try to scan a barcode from the barcode app Error:- ``` KeyError: 'gs1-128' ``` This error is occurring because we don't have any barcode size for `gs1-128` in barcode_size dict. https://github.com/odoo/odoo/blob/73ed7dbfbb164823d7e9f66cd3bb1d0aa0b70dbd/odoo/tools/barcode.py#L45-L52 So this leads to the above traceback when the encoding type is `gs1-128`. We can resolve this issue by adding the encode `gs1-128` with its barcode size in the `barcode_size` dict. sentry-6308131627
The self-ordering interface now shows small variant price differences correctly, including amounts below 0.5. This prevents customers from missing price adjustments when choosing product options and improves pricing accuracy at checkout.
Original PR description
Steps to reproduce: ------------------- 1. Create a PoS product with variants, one of the variant with a `price_extra` less than 0.5 2. Activate self ordering and open that interface 3. Choose the product we created in step 1 Observation: the variant that have an `price_extra` less than 0.5 does not show that price different. Reason: ------- We are using the config `decimal_places`, which existed prior to version 17.4, but it has since been removed in 17.4+, but we still reference this config field in pos_self_order !! Fix: ---- Use the precision field from `currency.decimal_places` instead. opw-4706506 opw-4721090
Fixes an issue where adding and saving a map block on an event registration page could trigger an error and prevent further edits. The map iframe is now prepared in the correct order, keeping the website editor usable for event pages.
Original PR description
In the register page of the events, when you add a map block, and save it, you'll get an UncaughtPromiseError. To Reproduce on Runbot: 1. Go to the events page. 2. Click on one of the events. 3. Go to /register page 4. Go to Editor and add a map block 5. Save it Upon saving, you'll encounter the error, and further cannot make any edits. The issue is due to calling _manageIframeSrc on the element where there is no iframeEl defined yet. So, we'll add the iframeEl first and call _manageIframeSrc. opw-4104300