Daily updates from Odoo
Navigate
Branch
Tuesday, June 4, 2019
25 changes
Enhancements to existing features
This update makes it easier for users who work across multiple companies to see and switch between their active companies. It also simplifies related settings so multi-company access is based on each user's allowed companies rather than a global setting.
Original PR description
TaskID: 2000277
Website pages now show sooner by loading most frontend JavaScript after the initial page display instead of blocking it. This improves perceived performance across website, ecommerce, payments, surveys, live chat, tours, and portal pages while adding safeguards for features that still need scripts before interaction.
Original PR description
* web, survey, account, im_livechat, payment, web_tour, website_sale, base Before this PR, the asset bundles were loaded in a synchronous way, so website pages appeared to the user when all the css *and* js were downloaded, parsed and executed. This PR adds a series of improvements to enable lazy loading the JS on the frontend. Especially: 1) Extract the minimum part of the assets common: - promises library and polyfill - boot.js 2) Create "assets_common_lazy" which is "assets_common" - "minimum" 3) Include the "minimum" assets in frontend layouts using "defer" loading and "assets_common_lazy" using "lazy" loading 4) Create a script to do the actual lazy loading in a "minimum" frontend assets 5) Lazy load the current frontend / website editor assets See sub-commits for details. task-1961045
This update adds a standard way for Odoo fields to provide a usable filter domain. It helps features such as portal mail handling apply field-based filtering more consistently and reliably, reducing custom handling in different parts of the system.
This update refines the website editor experience with clearer wording, better option placement, and simplified mobile preview controls. It helps users build and adjust website pages more easily by making common actions and guidance easier to find and understand.
Original PR description
PR creation
Search panel categories can now show a small colored dot when related records include a color value. This makes categories easier to scan visually and helps users recognize grouped items faster.
Original PR description
This commit adds a colored ball in front of search panel categories if the records have a `group_hex_color` Task: #1974652
This update makes Gantt views more configurable by allowing teams to disable planning where it is not needed and to use guided wizards when creating new items. It also improves dialog handling so creation workflows close more reliably after their follow-up actions complete.
Original PR description
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
Point of Sale users can now view and choose the state or province on a customer address directly from the customer screen. This makes customer records created or edited at checkout more complete and consistent with backend data, including a default based on the company setup.
Original PR description
**Task**: https://www.odoo.com/web#id=1978312&model=project.task&menu_id=4720 **Pad**: https://pad.odoo.com/p/r.a13c0d6461b50e5b0255b0b72563ebe1 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Product URLs in the online shop now include the selected variant, so customers and staff land on the exact product option they expect. This improves sharing, navigation, and publishing workflows for variant-specific product pages.
Original PR description
Hash containing variants unique id added to the url. In the shop when the product page is loaded, the variants are now selected using this hash. task-1958091
This change moves website JavaScript from the top of the page to the end, allowing visitors to see the initial page content sooner. Faster first rendering can improve perceived performance and may help reduce visitor drop-off.
Original PR description
Description of the issue/feature this PR addresses: When a visitor enters your website the browser will parse the HTML result. Whenever the parser encounters a script, it has to load and execute the script before it can continue parsing. So with render-blocking Javascript (e.g. in the head tag) the time to render the above the fold content increases. Without render-blocking Javascript (by e.g. loading it below the fold) the page first render occurs faster. This may result in various benefits e.g. lower bounce rate. https://developers.google.com/speed/docs/insights/BlockingJS https://en.wikipedia.org/wiki/Above_the_fold Current behavior before PR: The javascript is loaded in the head tag of the page. Desired behavior after PR is merged: The javascript is loaded at the end of the page. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Users can now choose which optional columns appear in list views, making dense screens easier to read while preserving access to extra details. Several sales, accounting, purchasing, repair, HR, and stock-related views were updated to use these optional fields, and choices are saved for future sessions.
Original PR description
Task:https://www.odoo.com/web#id=1902765&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.ab58c2bfb07bc3737628a50b94ab161e -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The chatter area now has a cleaner top bar layout and better access to follower controls on mobile devices. Users can view followers, add new ones, adjust following preferences, and access attachments more easily from smaller screens.
Original PR description
The Chatter's topbar (containing the buttons like 'Send Message', 'Log Note') was difficult to deal with: specially the positioning of its content (a float into another float...). Also there's no way to see the followers, add some or update your following preferences on mobile. This merge is a follow-up of the refactoring of the topbar's layout using Flexbox. It simplifies and reduces the amount of (S)CSS needed to achieve the same visual result. It also makes the followers visible on mobile and displays them on two rows: * the first for the followers' related buttons and the attachments * the second for the chatters actions Task ID: 1928573
Mobile push notifications are now more targeted and useful, with support for additional record updates, Android notification categories, and better handling of registered mobile users. The push notification component is also only activated when the feature is enabled, reducing unnecessary background work for customers who do not use it.
Original PR description
This merge enhances in different ways the notification sent to mobile devices: * ocn_client module is now only installed when "Push Notifications" is enabled. This prevents some useless work done on instances where this feature is disabled. * Add push notifications for each subtype when a user follows a record (depending on the model). * Introduces support for Android channels. Task IDs: 1966283, 1943362, 1941089, 1848517
Document tags now appear directly on kanban cards, making it easier to identify and compare documents at a glance. Tag categories also receive dynamic colors based on their display order, helping users visually connect tags across the search panel and document cards.
Original PR description
This commit adds the many2many display of tags on the documents' kanban card. To allow easy visual mapping of tags with their categories, this commit also adds a dynamic coloring of tag categories based on their current display order that is displayed both in the search panel and on the kanban card. Task: #1974652
The forecast app is revamped to make the Gantt calendar the main way to plan work, with easier editing, flexible durations, recurring forecasts, and employee availability visibility. Teams can now use forecasts as practical planning schedules and send plans to employees, improving staffing coordination and forward planning.
Original PR description
This merge revamp the forecast application. It provides some important changes. 1/ First, the gantt view is now primary. It can be use to edit and move forecast. User is not force to have a fix…
This merge revamp the forecast application. It provides some important changes. 1/ First, the gantt view is now primary. It can be use to edit and move forecast. User is not force to have a fix lenght for a forecast, he can create forecast of any duration. Grid view is still used, with an option to set it as first view. 2/ Forecast can now be use as "planning" (forecast assigned with 100% of employee time). Feature to send planning to user are now provided. 3/ Gantt view has been improved and customized for forecast: avatar of employee, grey cells for unavailabilities depending of the group by, no "loop" icon as dates fields are required, ... 4/ Recurrency: a forecast can be recurrent. User might want to assign employee time at regular fixed intervals. You can attach a forecast to a recurrence. Changing the project, the employee or the task will extract this forecast for the recurrence. Technically, we created a dedicated model to handle the recurrency. When creating a forecast throught the wizard, the recurrence and the first forecast are created. Then a subsequence of the recurrency is generated (not all, depending of the "visible period" setting). A cron is scheduled to generate forecast in advance. This completely revamp the forecast application. Future work will come. The goal of this module is to allow users to use forecast as forecasting app and/or planning app. Task-1929079
Users can now show or hide more list columns directly from the optional columns dropdown, making busy screens easier to tailor to their work. The update also adjusts list view layout behavior so the dropdown works reliably in responsive views.
Original PR description
Task:https://www.odoo.com/web#id=1902765&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.ab58c2bfb07bc3737628a50b94ab161e
When a product is created from a Documents workflow, its image is now automatically taken from the source document if that document is an image. This reduces manual setup and helps products created from documents appear complete right away.
Original PR description
This commit makes so when a product is created through a workflow action of documents, the product's image becomes the document (if the document was an image). Task: #1998011
When inter-company rules are installed, the shared transit stock location is now automatically reactivated so it can be used as expected. This helps companies using inter-company flows avoid missing or inactive transit locations during setup.
Original PR description
… when inter_company_rules installed * Task: https://www.odoo.com/web#id=1873106&action=327&model=project.task&view_type=form&menu_id=4720 * Pad: https://pad.odoo.com/p/r.86fbd89e4b02e1e80aa847474c13678d
Resolved issues and error corrections
This update fixes issues when managing sales across multiple companies, helping ensure sales orders, product information, margins, stock links, and payments use the correct company context. It reduces the risk of incorrect sales data or cross-company inconsistencies for businesses operating with more than one company in Odoo.
Original PR description
Task ID: 1986256 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update improves Point of Sale behavior when businesses operate multiple companies in the same Odoo environment. POS settings, stock operations, sales reporting, employee access, and product visibility now use the correct company context, reducing cross-company errors and inconsistencies.
Original PR description
- Added domain to selection fields in xml while using multi company. - Added company_id in 'picking type' model - Remove constraint that triggered when an administrator logged on a POS from another company. - Change security access to POS for users/ employees. - Change sale details report for the good company - Filter product displayed in POS 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 ensures kanban views wait for tag information to finish loading before the page is shown. As a result, many-to-many tags are less likely to be missing when users open or refresh kanban boards.
Original PR description
Before this commit, we don't assure fetches' deferreds was resolved to return _readGroup. So, in some conditions, kanban was rendered before records data was updated son many2many tags could be missing. Now, we return _readGroup when fetch's defs was resolved. Task #1910805 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 helps ensure subscription sales data stays aligned with the correct company in multi-company setups. It reduces the risk of records being created or processed under the wrong company, improving reliability for businesses operating multiple legal entities.
Original PR description
Task ID: 1986256
This update adjusts payroll test data so contract-related test scenarios run correctly. It helps maintain confidence in payroll workflows by preventing test failures that could slow future updates.
Code cleanup and technical improvements
The mail Chatter topbar layout was reorganized to be easier to maintain while keeping the same visual behavior for users. Follower dropdown controls were also made more consistent and accessible, reducing the risk of display or interaction issues in future updates.
Original PR description
The Chatter's topbar (containing the buttons like 'Send Message', 'Log Note') was difficult to deal with: specially the positioning of its content (a float into another float...). So, this commit refactors the topbar's layout using Flexbox. It allows to simplify and reduce the amount of (S)CSS needed to achieve the same visual result. In the process, the Followers (dropdown) buttons now use correctly nested .btn-group components (as described by the Bootstrap 4 documentation) and SubTypes dropdown items use semantic html element (<button>) instead of attaching behavior on icon element(<i>). Finally a few Chatter's tests requested a slight adaptation (cf. trimming element's textual content). Task ID: 1928573
Odoo’s public-facing pages now share a common layout foundation instead of each app maintaining duplicated page structure. This makes portal, survey, rating, and website pages easier to maintain and helps future frontend apps work consistently whether or not the Website app is installed.
Original PR description
* http_routing, portal, rating, survey, website, website_survey, website_slides_survey Before this commit, the final base layout of website was a fully overridden layout of the one in portal, which…
* http_routing, portal, rating, survey, website, website_survey, website_slides_survey Before this commit, the final base layout of website was a fully overridden layout of the one in portal, which was somehow a duplicated one of the login one in web, which... so lots of duplicated code. This commit is a first step towards a better organization: 1) The web app defines a frontend layout (to include base frontend assets), with a base company logo as header. 2) The portal app modifies that layout in place to include the base header, footer, ... It also uses a primary extension of it for portal pages. The survey app simply uses the above layout instead of defining its own (by primary extension to include its own assets for its own pages) Same goes for the rating app and pages. 3) The website app modifies that layout in place to include the UI assets, to add website UI, ... This allows to create frontend apps which do not depend on website, with a non duplicated layout that will be automatically adapted if website is ever installed (this therefore allows to get rid of website_survey definitely) This commit also fixes the session info system and the translation URL on the frontend side to not require to redefine the whole session_info for portal, website, ... Now the frontend session_info is defined in web and http_routing extends it to add translation informations, then website extends it again to add its own elements (not to redefine them all as before). Note: before, http_routing defined the translation route but only portal was adding it in its layout... This is an adaptation of the work that was done with commit https://github.com/odoo/odoo/commit/99821fdcf89aa66ac9561a972c6823135ebf65c0 Note 1: Many frontend but non-website apps (not only survey / rating) could probably use this too but this would be the topic of another task. Note 2: survey currently depends on http_routing but does not add itself in the list of frontend apps to translate, it probably should. Note 3: web_editor does currently not depend on http_routing but does add itself in the list of frontend apps to translate, it thus uses a function it does not really depend on... to check after its work-in- progress refactoring. task-1961045
This change aligns the enterprise document and web interface templates with related updates in the main Odoo platform. It is an internal cleanup to keep the enterprise modules compatible and maintainable, with little direct impact on day-to-day users.
Original PR description
* web_enterprise, documents task-1961045