Commit Graph
59363 Commits
Author SHA1 Message Date
Cédric Krier f7b37fcf3b Display xxx2Many widgets when they become visible
When a tree is used in a xxx2Many widget then we can lazily request the content
of the tree by relying on the intersection observer that is already present at
the bottom of the table.
2025-04-10 19:09:38 +02:00
Nicolas Évrard 0e9cfb3e84 Do not refresh the pool when the notification comes from the same process 2024-12-18 17:08:26 +01:00
Nicolas Évrard 3cf1d64372 Use process-local data structure to store process related data 2025-01-08 23:20:32 +01:00
Nicolas Évrard 26f7c7142b Add process local objects ala threading.local 2025-02-14 17:16:55 +01:00
Nicolas Évrard c643794a85 Remove a useless call to Cache.refresh_pool
Since Pool.init is called with a non empty update, it will make a call to
Cache.refresh_pool at the end of its call to load_modules
2024-12-17 15:16:51 +01:00
Nicolas Évrard ac6e93b078 Reset the pool instances only on the pool initialization
In a scenario where cache_timeout is set to zero, concurrent updates to the
pool might result in an empty pool dictionary because the process making the
update lose its reference to the updated pool thus replacing it with an empty
dictionary on the following instantiation of Pool.

Closes #13763
2024-12-17 15:14:04 +01:00
Cédric Krier 7a9820e5af Change current record for the first selected only if there is no current record
#4028 added the behavior to apply the selected record also on form view the
first time.
But when switching to a calendar view from a form view, the tree states is
stored with the current record. If the calendar view is cleared (always with
sao via the search_filter), then the tree_states_done is cleared and on the
second switch to the form view the current record is override by record stored
in the tree states (from the first form switch).

Closes #13939
2025-03-26 20:07:54 +01:00
Nicolas Évrard cd5a54cb2f Delete warnings at the end of the Transaction
Closes #13686
2025-04-10 19:21:50 +02:00
Nicolas Évrard 68fb5e1fa7 Use high level API of res.user.warning in tests 2024-11-29 18:18:52 +01:00
Nicolas Évrard fb200e610d Add selection_change_with to Selection field's edition_depends
Closes #13959
2025-04-03 16:33:47 +02:00
Cédric Krier b426fe621c Restore asynchronous save but protected by a single promise
The write RPC must be done asynchronously in order to manage any concurrency
exception.
But the asynchronous RPC can only be done sequentially, so we ensure there can
be only one single pending promise.

Closes #13940
2025-03-25 13:49:53 +01:00
Cédric Krier e5f0688da7 Store target of field as relation
For Many2Many it replaces the relation model by the target which is what is
expected by usage in many places like the domain for email models.

Closes #13756
2025-03-24 23:32:36 +01:00
Cédric Krier 703223faf7 Do not set more than the fulfillable quantity in Shopify fulfillment
Closes #13956
2025-04-02 17:29:47 +02:00
Cédric Krier 2f701eb054 Do not fill mode and views for relation field without views
It is useless to send those attributes as they will not be used by the client.
2025-03-31 20:04:51 +02:00
Cédric Krier 6daed3eb95 Test if views attribute is empty using jQuery.isEmptyObject
The views attribute can be just an empty object when the xxx2Many field is
using a different widget like a multiselection.

Closes #13917
2025-03-31 20:01:42 +02:00
Cédric Krier a6c548b400 Check for new record only when saving an actual current record
49cbc9b99ed8 added the calculation of a new variable but before the test that a
current record is actually being saved.

Closes #13946
2025-03-28 16:04:21 +01:00
Cédric Krier 275248478a Ensure the contextual company is not None and positive before using it
Closes #13868
2025-03-10 23:43:49 +01:00
Cédric Krier 1e151a15a2 Remove support for Python 3.8 2025-04-06 12:11:03 +02:00
Cédric Krier 6d8b42c687 Add support for Python 3.13 2025-04-06 12:10:20 +02:00
Cédric Krier b2d84f32c2 Reset sale and shipment to draft before delete
Since 6c72b78d92d8 the documents are no more automatically cancelled prior
deletion.
2025-04-07 00:27:05 +02:00
Cédric Krier b7e5b7d865 Remove coupon name in Vue Storefront test
Since 5f9f977bfd12 there is no more a name field on coupon.
2025-04-07 00:25:13 +02:00
Cédric Krier 9ba7970f41 Check invoice state only for modified lines with an invoice
Since 6c72b78d92d8 the rewrite of the check did not skip invoice line without
invoice.
2025-04-07 00:23:44 +02:00
Cédric Krier 5041a85ef6 Update on_* field of trigger in tests
Since bc7e074fc4d9 the fields of trigger has been suffixed with an '_'.
2025-04-07 00:30:35 +02:00
Cédric Krier 39af772212 Do not override all written ids by ids from each argument in ModelSQL write
6f1447bdd702 makes ModelSQL.write retrieve the list of ids written from
_before_Write but they should be used as-is to call _after_write (and others).
2025-04-07 00:18:19 +02:00
Cédric Krier c5aadfb64a Clear currency on output move of production to lost and found 2025-04-05 19:43:09 +02:00
Cédric Krier 52dd42b587 Remove wrong classmethod decorator on compute_fields of timesheet line 2025-04-05 19:42:30 +02:00
Cédric Krier 5aeff66acd Use ModelStorage hooks instead of extending create/write/delete 2025-04-06 00:14:17 +02:00
Cédric Krier 45122b77c0 Add on_write to ModelStorage 2025-02-24 13:39:52 +01:00
Cédric Krier e9fe355663 Add on_delete to ModelStorage 2025-02-19 17:52:22 +01:00
Cédric Krier ae3cd83668 Rename "on_" columns of trigger 2025-02-20 09:29:52 +01:00
Cédric Krier 4b7b5a4739 Add check_modification to ModelStorage 2025-03-01 16:10:13 +01:00
Cédric Krier 72c96ec778 Add on_modification to ModelStorage 2025-02-19 23:01:52 +01:00
Cédric Krier defc4c46c5 Add preprocess_values to ModelStorage 2025-02-24 12:58:37 +01:00
Cédric Krier 121c279f47 Add before/after methods for CWRD methods of ModelStorage 2025-04-05 16:33:40 +02:00
Cédric Krier f94ae51649 Use compute fields for timesheet cost 2025-02-28 12:27:32 +01:00
Cédric Krier 15feef82d8 Use compute fields for places on stock move 2025-01-21 00:25:18 +01:00
Cédric Krier 12db02464b Use compute fields for format contact mechanism value 2025-01-17 17:24:50 +01:00
Cédric Krier 651144cf37 Use compute fields for IBAN number 2025-01-17 16:12:13 +01:00
Cédric Krier 5984c9aa5f Use compute fields for attendance date 2025-01-17 15:57:44 +01:00
Cédric Krier ea8b1e810f Use compute fields for intrastat type and value 2025-01-17 14:00:31 +01:00
Cédric Krier 6d8d307670 Use compute fields for internal quantities on stock move
Closes #13739
2025-01-15 22:10:07 +01:00
Cédric Krier 027384000b Add compute fields to ModelStorage 2025-01-15 21:37:11 +01:00
Cédric Krier 1772caec90 Clean migrations for series before 6.0 2025-01-04 00:19:42 +01:00
Nicolas Évrard cbdad75620 Remove old-style of super() calls 2025-04-04 00:45:18 +02:00
Nicolas Évrard 5781a49606 Call the actual super method of InteralShipmentReport
Closes #13892
2025-02-26 11:38:41 +01:00
Cédric Krier 18e4060d71 Do not check links to tfig.unece.org 2025-04-03 00:26:09 +02:00
Cédric Krier b4d984125b Permit party administrators to edit web users
Closes #13936
2025-03-24 13:12:43 +01:00
Cédric Krier ee10ced9e2 Allow to use phonenumberslite as dependency
phonenumberslite is a stripped version of phonenumbers which consume less
memory because it does not include geocoder, carrier and timezone packages
which are not used.
2025-02-03 14:00:41 +01:00
Cédric Krier a94ca05e3d Make phonenumbers dependency optional 2025-02-03 14:37:56 +01:00
Cédric Krier e9cd9d1163 Increase delay between transaction retries
Since c8771e45b861 the retry is no more a countdown but an increasing count, so
the sleep time must be adapted to also increase over retries.

Closes #13910
2025-03-07 21:54:11 +01:00