Thursday, November 17, 2022
20 changes · master
Enhancements to existing features
The mail app now centralizes how messages are prepared and sent, reducing duplicated logic across the message composer. This should make message sending more consistent and easier to maintain without changing the user workflow.
Original PR description
The code that is used to sent message is splitted between composer and composer_view model. This PR centralize the sending process inside a message_composition model. The body of a message is voluntarily NOT a compute to avoid possible performances issues. Part of task-2390637
This update brings the spreadsheet engine up to date with multiple fixes that make editing, selection, formulas, and pasted content work more reliably. It also adds a shortcut for inserting links and reduces risks of duplicate sheets or figures, improving day-to-day spreadsheet use in Odoo.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/1b4fac5a [FIX] edition: Handle too long formulas https://github.com/odoo/o-spreadsheet/commit/544cfe68 [FIX] composer:…
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/1b4fac5a [FIX] edition: Handle too long formulas https://github.com/odoo/o-spreadsheet/commit/544cfe68 [FIX] composer: Allow to paste text in the composer https://github.com/odoo/o-spreadsheet/commit/f04c7589 [FIX] functions: dichotomicSearch handle 2d array https://github.com/odoo/o-spreadsheet/commit/3660bf27 [REF] components: enforce component autonomy during keyboard event handling https://github.com/odoo/o-spreadsheet/commit/39bb9d88 [IMP] keyboard shortcuts: Insert link https://github.com/odoo/o-spreadsheet/commit/a40186aa [FIX] grid: capture IME altered inputs https://github.com/odoo/o-spreadsheet/commit/a884c78a [FIX] sheet: prevent creation of sheet with the same id https://github.com/odoo/o-spreadsheet/commit/aff05bdd [FIX] figure: prevent duplication of figure id https://github.com/odoo/o-spreadsheet/commit/5c18b6e1 [REF] ranges: make Range immutable object https://github.com/odoo/o-spreadsheet/commit/de5612e3 [FIX] config: Allow to build outside of git repository https://github.com/odoo/o-spreadsheet/commit/b100135c [FIX] grid: remove old component https://github.com/odoo/o-spreadsheet/commit/45f7f714 [FIX] selection: update default selection anchor on dispatched commands https://github.com/odoo/o-spreadsheet/commit/b41a1610 [FIX] selection: don't reset selection on Autofill https://github.com/odoo/o-spreadsheet/commit/16a98748 [FIX] selection: Properly add merge when adding them to the selection https://github.com/odoo/o-spreadsheet/commit/231bbbca [FIX] model: do not replay core commands in ui plugins
Messages in the Mail app are now sent through a queue, making the sending process more reliable and responsive. This helps reduce delays or interruptions for users when composing and sending messages.
This update improves how Odoo records chat channel membership and message-seen information. It should make mail and messaging activity more efficient and reliable without changing the day-to-day user experience.
Odoo’s mail app now has a dedicated structure for composing messages, making the message writing experience easier to manage and improve over time. This internal improvement supports more reliable and consistent email and chat composition for users.
Original PR description
Task-2390637
This change streamlines how Odoo determines whether messages are historical, require action, or are starred. It helps make mail, chat, notifications, live chat, ratings, and SMS behavior more consistent and easier to maintain, with limited direct impact for end users.
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
Updates how message read and fetched status changes are handled in the Mail app. This makes notification processing more consistent and helps keep conversation status information reliable for users.
Mail message status indicators such as history, required action, and starred are now calculated automatically instead of being stored separately. This improves consistency in conversations and notifications, reducing the chance of outdated message states appearing to users.
Project and task lists now show more useful planning and sales-related information, including deadlines, activity status, creation dates, stage updates, and sales order links. Project updates and portal views were simplified with clearer labels, cropped stage text, and less clutter so teams can review project progress and sales delivery details more easily.
Original PR description
Purpose of the PR is to do the generic improvements for project. So in this PR did the following changes: - add the 'creation date', 'last stage update', 'SOL', 'my deadline' fields in project task list view. - add the 'my deadline', 'next activity' fields in project list view. - crop the label of the stage after x characters in task portal form view. - remove the 'collaborators' stat button from project update right-side panel. - renamed sold->sales, services->sales order items, effective->delivered, remove the totals, include non-service SOLs, increase the size of the SOL column task-2928100
The web interface documentation now clearly states the four supported placement choices for popovers. This helps teams configure interface elements more consistently and reduces confusion during development or customization.
Original PR description
Position option has only 4 possibles values.
Payment term rules are now automatically ordered by due date, with the remaining balance placed last. This removes a confusing manual step for users and helps invoices follow the intended payment schedule more reliably.
Original PR description
Task [2026399](https://www.odoo.com/web?#id=2026399&action=333&active_id=967&model=project.task&view_type=form&cids=&menu_id=4720) The user should not have to reorder payment term rules, we should order by the number of days and put the balance at the end automatically. (it's too advanced to know you should order lines). -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The accounting module no longer stores a separate off-balance marker on accounts because the same information is already available through the account type. This reduces duplication and helps keep accounting configuration and related processes more consistent without changing core business workflows.
Original PR description
We don't need the `is_off_balance` field on `account.account` as the same thing can be checked with `account_type`. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update improves the JavaScript development tools used by Odoo teams and prepares them for automated lint checks in runbot. It should make code quality checks easier to run consistently while improving developer productivity and editor support.
Original PR description
## Summary - Use of jsconfig instead of tsconfig - jsconfig deployed with tooling, no need for CLI - ecmascript bumped to version es2022 (static properties) - prettierrc merged inside the eslintrc -…
## Summary
- Use of jsconfig instead of tsconfig
- jsconfig deployed with tooling, no need for CLI
- ecmascript bumped to version es2022 (static properties)
- prettierrc merged inside the eslintrc
- add a few globals
- cleanup package.json scripts
- add script to lint/format only the diff (opposed to staged files)
- bump up node packages versions
- use eslint as cli instead of prettier-eslint, as eslint does provide
parsable output for runbot.
- add the typescrit types of libs as dependencies + main.d.ts to
improve autompletion.
This upgrade makes it easier to deploy and use the js tooling, as it is
expected more and more people will use it if a lint check is added to
the runbot.
## About the runbot:
The commit gets the code ready to enable the lint on the runbot.
It will lint the code with the same rules and same ignore file.
The only difference is the runbot will check only the diff and not the
entire commited file.
The goal will be to progressively (and aggressively) whitelist modules
to converge to a nice formatted codebase.
The runbot could run a command such as
`echo '{\"extends\": [\"plugin:diff/diff\"]}' | eslint --resolve-plugins-relative-to . -c /dev/stdin '**/*.js'`
assuming it is run inside /community and /enterprise.Event tickets and ticket templates now have a clear manual order when key details like price and event are the same. This makes ticket lists more predictable for users and keeps demo/template data consistently organized.
Original PR description
When the price and the event are the same, nothing allows ordering tickets in event_sale. Therefore, add a sequence number and handle widget to the tickets (in data as well). Also do it for ticket templates. Also, order the tickets (on events and templates) by name before id. Since event type tickets are not linked to any event, the order does not include the event_id. However, event event tickets are, and if they appear in the same list / reporting someday, it makes sense to order them by event_id first. In event_sale, we make sure the price is also in the order. As the price is in the copied fields on the event when using an event template, we add the price on the event type tickets ordering to align with the event event tickets. Add default value to sequence and sequence number to data for event.type model. They were sequenced but demo data had none, hence not really ordered. Also make description optional hide on event types. Task-2997391
This update improves internal code annotations so developers get more accurate suggestions while working on Odoo's web interface. It helps speed up development and reduce mistakes, with no direct change to end-user features.
Original PR description
This commit adds and fixes type annotations to give more accurate autocompletion for javascript.
This update refines internal JavaScript configuration so developer tools can catch issues more clearly while working. It helps maintain code quality and productivity without changing how business users interact with Odoo.
This update simplifies and modernizes the JavaScript development tools used by Odoo Enterprise. It prepares automated quality checks to run more easily on changed code, helping teams improve code consistency over time without affecting end users directly.
Original PR description
- Use of jsconfig instead of tsconfig - jsconfig deployed with tooling, no need for CLI - ecmascript bumped to version es2022 (static properties) - prettierrc merged inside the eslintrc - add a few…
- Use of jsconfig instead of tsconfig - jsconfig deployed with tooling, no need for CLI - ecmascript bumped to version es2022 (static properties) - prettierrc merged inside the eslintrc - add a few globals - cleanup package.json scripts - add script to lint/format only the diff (opposed to staged files) - bump up node packages versions - use eslint as cli instead of prettier-eslint, as eslint does provide parsable output for runbot. - add the typescrit types of libs as dependencies + main.d.ts to improve autompletion. This upgrade makes it easier to deploy and use the js tooling, as it is expected more and more people will use it if a lint check is added to the runbot. About the runbot: The commit gets the code ready to enable the lint on the runbot. It will lint the code with the same rules and same ignore file. The only difference is the runbot will check only the diff and not the entire commited file. The goal will be to progressively (and aggressively) whitelist modules to converge to a nice formatted codebase.
This change updates accounting-related filters to work after an underlying account field is removed. It helps keep asset and automatic transfer workflows functioning correctly without changing how business users operate them.
Original PR description
Since `is_off_balance` field is being removed from `account.account`, the domains have to be updated accordingly.
Helpdesk and field service users can now see their own deadline directly in list views, making it easier to prioritize daily work. Project update descriptions were also clarified to make progress updates easier to understand.
Original PR description
Purpose of the PR is to do the generic improvements for project. So in this PR did the following changes: - add a 'my deadline' field in fsm, helpdesk ticket list view. task-2928100
Spreadsheet-related apps were adjusted to work with the latest spreadsheet library update. This helps keep document spreadsheets and spreadsheet editing reliable after the underlying component change, with no major workflow changes expected for users.