Regenerate all child translations based on the .pot
Remove the terms that are either equal to the parent, either equal to the
source term.
Remove empty translation files
If a user wants to scrap more quantity than he has in stock, we return
to him a confirmation wizard. This doesn't make sense when scrapping
consumables products, as there are no quants for these kind of products.
task 1864026
The account module needs to import Form from "tests.common" causing a
traceback when websocket-client module is not installed.
As this module is only required for the tests, there is no reason to add
it to the "requirements.txt" file.
With this commit, Odoo account can be installed even when
websocket-client is not installed, in that case, the HttpCase tests that
needs to run Chrome headless will be skipped with a warning.
Closes: #26404
Usecase to reproduce:
- Check manufacture to resupply and manufacture in 2 or 3 steps
- Uncheck manufacture to resupply
pbm and sam rules in global route(mto/manufacture) are still active
It happens because the condition to archive the rules was not complete
the check on manufacture to resupply was missing
- Generating the overview for a project may have a high memory usage for
projects with a lot of tasks.
This is due to the usage of "mapped" which stores data in the cache.
To avoid this, we instead use "search_read".
Some fields are required only when defining an activity-based server
action. Required domain was not correctly written leading to server
actions being blocked.
- Set 'Product Price' accuracy to 5 places
- Create a PO for a product to a new supplier
- Enter price at 3.14561 / unit
Supplier info entry rounded to 3.15, while it should be 3.14561.
Closes#22253Fixes#22252
warning: Some modules could not be started
Missing dependencies: web.field_utils
Non loaded modules: web.dataComparisonUtils
This commit moves 'data_comparison_utils.js' from 'assets_common'
to 'assets_backend' because 'field_utils' is only defined in
'assets_backend'.
There were tooltips on period options in the submenus of
filters menu. With the switch to Bootstrap 4, the html
structure of filters menu has changed (no more 'ul') and has
altered the way the menu items are rendered causing the
disparition of tooltips. With this commit, the tooltips come
back.
As the phantomjs project was suspended[1], there was a need to change the js test
engine. Moreover, the engine was rather old and leading to non
deterministic crashes.
Chrome headless was choosen for simplicity and the long term vision of
the devtools protocol [2].
The 'phantom_js' method still exists but will be deprecated in
favor of 'browser_js' with the same parameters.
In order to communicate with the browser, the python websocket-client package
is needed.
[1] https://github.com/ariya/phantomjs/issues/15344
[2] https://chromedevtools.github.io/devtools-protocol/
#closes 25991
It used to work by chance with Bootstrap 3, but since we are now
using Bootstrap 4, the fake good appearance collapsed, revealing
the awful structure it used to have.
Adds a checkbox to import columns (in debug mode) allowing a user to
create records M2O and M2M records not found (via name_search).
Task ID: 1850633
* uses a context key to avoid altering basically all the import callstack
* attempted to lift the creation in the `_str_to_*` functions and create
m2m via commands, but that doesn't really work out
and use it to determine if the constraint definition was changed. This prevents
endless readding of constraints that are reformatted by postgresql in an
unrecognizable way (in which e.g. "CHECK (credit*debit=0)" becomes
"CHECK ((credit * debit) = 0::numeric)")
Before this commit, the error message was not very helpful as did not specify
which statement was problematic.
By giving the reconciled name/number, the users get's a chance to identify the
offending entry and correct it.
Closes#26356
When the MO is done, the reserved quantity on stock move is equal to 0
and decoration-success, decoration-danger, decoration-muted are all set
on the class. That implies an uncertain result.
This commit clarify the situation by applying
- decoration-muted if the MO is done
- success, danger or none otherwise
Related to task: #1862299
It was already present in the accounting and purchase application but not in
sale menus.
Apply the same logic as in purchase and use a group_no_one
Closes#22862
Before this commit, there was a traceback when attempting to mark
all messages as read from the 'Inbox' of Discuss.
This is due to resetting the 'needaction' counter on threads that
do not not track 'needaction', such as the 'Starred' mailbox.
In fact, only channels do track them and handle a needaction counter,
so this should only be applied on channels.
The custom filters created through the search view are still private by default
but the ir.filters created manually (e.g. through xml files) are most of the
time global.
In odoo core addons, all ir.filters defined add the line
<field name="user_id" eval="False"/>
This should simplify the development while not changing the behaviour for
actual users.
Closes#8218
Search, form views and menu cleaned
Hide attachment button when you can not attach (record not created)
Allow to submit multiple expenses of different payment mode
list: show creation date on reports, accounting date for accountants
Tests from hr_recruitments work luckily until now.
Because module maintenance imply base.group_user for group_equipment_manager
<record id="group_equipment_manager" model="res.groups">
...
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
</record>
and module hr_maintenante imply group_equipment_manager for hr_user
<record id="hr.group_hr_user" model="res.groups">
<field name="implied_ids" eval="[(4, ref('maintenance.group_equipment_manager'))]"/>
</record>
After this commit launch test on hr_recruitment module without any other module will works.
Design-theme repo show this error because repo tests hr_recruitment without installing maintenance
(Repo install website_* modules -> website_hr_recruitment -> hr_recruitment -> hr)
In some countries, it might be preferable not to recon the payments journal entries at the time they are registered in the system, but to do so at the date of the bank statement line they will be reconciled with.
Thus, to manage this we've added an option on bank journals to have payments generating draft account.move when they are validated, and posting them only after bank reconciliation (+overwriting their date)
Was task 1870892
Was PR #26349
As fbbf24f58a introduced multiwebsite and `website_published` became a
related and/or a computed field (depending of the mixin), we should not order
on this field as it is not on DB anymore.
We now have the field `is_published` that replace `website_published`.
Since commit 006ce9c887 set the `Promo Code` view active (customize_show),
the `shop_sale_coupon` JS tour should not be working anymore.
But it was working since this change introduced a race condition that was
luckily making the test to succeed (most of the time).
(This bug appeared weeks ago on nightly build)
Basically, the tour flow was:
1. Activating `Promo Code` in customize option -> Cause a page refresh
2. Waiting for the DOM to contains the promo code input (shown after page
refresh performed by step 1.)
3. Typing a promo code and submitting it
4. Waiting for the discount line to appear (after page load performed by
step 3 form submit.)
This test was working fine as the promo code customize option was disabled.
Thus, the promo code input would only be visible after the refresh of step 1.
It would always wait for the refresh to occur before continuing.
No race condition possible.
Since the change of 006ce9c887 that activated that view by default:
- The promo code input would already be on the DOM when the tour was executed
- Clicking on the customize option would actually disable it.
Then, since the input was already in the DOM, the step 2 would instantly
continue without waiting for the refresh of step 1 and step 3 would be
performed while step 1 would still be refreshing the page.
You would then land sometimes on the refresh of step 1, sometimes on the
refresh of step 3, depending of the test speed (and so the runbot).
In case you landed on refresh of step 1, step 4 would never find the discount
line.
---- SOLUTION ----
Click on the customize option only if not already enabled.
(The customize step could have simply been removed as it is now activated by
default. But this is better to prevent the test to fail in case we change that
customize active state in the future or to simply run the test more than once)
Turns out %s is not the pattern for sub-minute seconds, that'd be
%S (note the casing). The former is the number of seconds since
epoch, which tends not to match sub-minute second patterns (sounds
like bull to me but there you are), and so importing datetimes was a
bit broken since the previous improvements.
Fix that.
Update the query count to avoid the runbot to be randomly red
Temporary fix!!!!! Will need to check with in details what is the
cause of this.
Those are the changes for the second part of test