Michael (mcm)
04fddc19d4
[IMP] web: improve patch function
...
This commit refactors the patch function in order to simplify its code
but also and most of all remove the `this._super` bound on each patched
method call.
The patch function now supports the javascript keyword `super` to
get the parent's property.
This removes constraints we had with `this._super`. We had to create a
rather complicated intermediate function to bind `this._super` and this
function was called each time before we called a patched method.
It was annoying for debugging but necessary. Because of this
intermediate function `this._super` was also had to re-bind each time
we entered a patched method which was annoying with async method, we
had to save the parent method in the patch before awaiting its
execution. Finally, not a big issue but still, objects could not have a
`_super` property as it would be hidden in the patch.
task 3410198
Part-of: odoo/odoo#125716
2023-08-02 17:29:05 +02:00
..
2023-08-02 13:20:03 +02:00
2023-07-19 18:24:15 +02:00
2023-07-19 18:24:15 +02:00
2023-07-24 23:04:02 +02:00
2023-07-28 08:13:55 +02:00
2023-07-24 11:28:47 +02:00
2023-06-01 11:43:51 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-07-26 10:48:54 +02:00
2023-07-20 06:40:43 +02:00
2023-06-01 11:43:51 +02:00
2023-07-15 04:01:09 +02:00
2023-05-22 17:52:07 +02:00
2023-08-01 13:51:17 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-06-01 11:43:51 +02:00
2023-08-01 13:51:17 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-19 13:13:16 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-07-31 19:02:57 +02:00
2023-08-01 13:51:17 +02:00
2023-06-28 17:41:19 +02:00
2023-06-01 11:43:51 +02:00
2023-06-21 15:53:15 +02:00
2023-06-01 11:43:51 +02:00
2023-07-18 11:42:26 +02:00
2023-07-24 12:49:21 +02:00
2023-07-19 18:24:15 +02:00
2023-07-20 11:49:06 +02:00
2023-06-28 17:41:19 +02:00
2023-07-20 11:49:06 +02:00
2023-08-01 13:51:17 +02:00
2023-08-02 13:20:11 +02:00
2023-07-31 19:02:45 +02:00
2023-05-22 17:52:07 +02:00
2023-07-24 20:17:50 +02:00
2023-08-02 06:18:53 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-08-01 13:51:17 +02:00
2023-07-31 23:21:10 +02:00
2023-05-22 17:52:07 +02:00
2023-07-31 23:21:18 +02:00
2023-08-01 13:51:47 +02:00
2023-06-01 11:43:51 +02:00
2023-07-10 16:59:11 +02:00
2023-08-01 13:51:17 +02:00
2023-07-25 17:36:08 +02:00
2023-07-27 14:47:00 +02:00
2023-07-24 10:14:33 +02:00
2023-07-24 20:17:50 +02:00
2023-06-21 06:57:53 +02:00
2023-08-02 15:59:33 +02:00
2023-07-25 17:36:08 +02:00
2023-06-01 11:43:51 +02:00
2023-07-06 15:03:42 +02:00
2023-07-26 09:22:07 +02:00
2023-06-05 14:50:20 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 15:59:50 +02:00
2023-07-25 21:22:46 +02:00
2023-08-02 15:59:16 +02:00
2023-08-02 06:18:39 +02:00
2023-07-05 14:21:28 +02:00
2023-07-19 18:24:15 +02:00
2023-08-02 16:00:28 +02:00
2023-06-28 17:41:19 +02:00
2023-07-25 21:22:46 +02:00
2023-06-01 11:43:51 +02:00
2023-06-22 18:29:50 +02:00
2023-05-22 17:52:07 +02:00
2023-07-24 20:17:50 +02:00
2023-06-12 22:39:26 +02:00
2023-08-02 02:24:46 +02:00
2023-06-27 17:33:02 +02:00
2023-07-05 14:21:28 +02:00
2023-07-25 17:35:35 +02:00
2023-07-11 12:00:40 +02:00
2023-05-22 17:52:07 +02:00
2023-08-02 17:29:00 +02:00
2023-07-13 14:47:44 +02:00
2023-06-01 11:43:51 +02:00
2023-07-26 09:22:17 +02:00
2023-07-19 18:24:10 +02:00
2023-07-24 20:18:08 +02:00
2023-07-20 05:03:02 +02:00
2023-05-22 17:52:07 +02:00
2023-07-15 10:54:46 +02:00
2023-06-22 15:41:00 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:34 +02:00
2023-06-01 11:43:51 +02:00
2023-07-13 19:28:04 +02:00
2023-07-25 00:54:53 +02:00
2023-07-27 11:58:34 +02:00
2023-05-22 17:52:07 +02:00
2023-06-15 17:35:42 +02:00
2023-07-24 23:04:20 +02:00
2023-08-02 13:20:03 +02:00
2023-06-15 17:35:42 +02:00
2023-05-22 17:52:07 +02:00
2023-06-15 17:35:42 +02:00
2023-07-25 00:54:54 +02:00
2023-08-02 16:00:38 +02:00
2023-07-25 00:54:54 +02:00
2023-07-25 00:54:53 +02:00
2023-06-26 22:15:22 +02:00
2023-05-22 17:52:07 +02:00
2023-07-25 08:18:58 +02:00
2023-07-10 15:32:26 +02:00
2023-07-21 12:48:34 +02:00
2023-07-07 16:42:41 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-07-10 15:32:29 +02:00
2023-07-20 11:49:06 +02:00
2023-06-14 10:54:24 +02:00
2023-07-10 15:32:28 +02:00
2023-05-22 17:52:07 +02:00
2023-06-15 17:35:42 +02:00
2023-07-10 11:48:57 +02:00
2023-07-27 20:32:39 +02:00
2023-08-02 06:18:20 +02:00
2023-08-01 05:59:54 +02:00
2023-07-11 06:52:57 +02:00
2023-06-15 17:35:42 +02:00
2023-08-02 01:15:53 +02:00
2023-07-11 09:10:21 +02:00
2023-05-22 17:52:07 +02:00
2023-07-27 14:47:24 +02:00
2023-05-22 17:52:07 +02:00
2023-07-27 20:32:36 +02:00
2023-06-26 13:21:03 +02:00
2023-07-25 08:18:58 +02:00
2023-07-24 23:04:20 +02:00
2023-07-27 16:14:09 +02:00
2023-08-02 06:18:50 +02:00
2023-07-10 15:32:28 +02:00
2023-07-20 06:40:43 +02:00
2023-07-10 15:32:28 +02:00
2023-06-15 17:35:42 +02:00
2023-06-15 17:35:42 +02:00
2023-07-10 15:32:07 +02:00
2023-05-22 17:52:07 +02:00
2023-07-22 10:11:13 +02:00
2023-07-15 12:00:33 +02:00
2023-06-15 17:35:42 +02:00
2023-06-14 10:54:24 +02:00
2023-05-12 22:59:22 +02:00
2023-07-20 11:49:06 +02:00
2023-07-25 08:18:58 +02:00
2023-06-16 13:41:00 +02:00
2023-06-16 13:41:00 +02:00
2023-06-15 17:35:42 +02:00
2023-08-01 22:30:55 +02:00
2023-05-23 20:57:15 +02:00
2023-07-07 12:09:57 +02:00
2023-07-10 15:32:27 +02:00
2023-07-20 17:01:08 +02:00
2023-07-20 17:01:08 +02:00
2023-06-15 17:35:42 +02:00
2023-06-28 17:41:19 +02:00
2023-07-20 11:49:06 +02:00
2023-06-28 17:41:19 +02:00
2023-05-22 17:52:07 +02:00
2023-06-15 17:35:42 +02:00
2023-05-22 17:52:07 +02:00
2023-06-15 17:35:42 +02:00
2023-06-07 08:59:00 +02:00
2023-07-27 14:47:07 +02:00
2023-07-10 15:32:29 +02:00
2023-07-10 15:32:27 +02:00
2023-06-15 17:35:42 +02:00
2023-07-10 15:32:25 +02:00
2023-07-20 11:49:06 +02:00
2023-07-19 18:24:15 +02:00
2023-05-11 10:40:55 +02:00
2023-07-18 10:20:08 +02:00
2023-06-15 17:35:42 +02:00
2023-06-30 01:32:47 +02:00
2023-06-15 17:35:42 +02:00
2023-07-15 10:54:20 +02:00
2023-08-02 05:10:51 +02:00
2023-07-25 08:18:58 +02:00
2023-06-15 17:35:42 +02:00
2023-07-20 06:40:43 +02:00
2023-06-15 17:35:42 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-07-24 23:04:20 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-08-02 16:00:19 +02:00
2023-06-24 03:35:44 +02:00
2023-06-15 17:35:42 +02:00
2023-07-10 15:32:26 +02:00
2023-07-10 15:32:28 +02:00
2023-07-20 06:40:43 +02:00
2023-06-15 17:35:42 +02:00
2023-08-01 09:40:55 +02:00
2023-07-28 21:54:53 +02:00
2023-07-17 20:36:09 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 16:00:10 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-07-19 19:37:55 +02:00
2023-07-28 16:29:00 +02:00
2023-08-01 17:56:45 +02:00
2023-06-01 11:43:51 +02:00
2023-06-01 11:43:51 +02:00
2023-05-22 17:52:07 +02:00
2023-07-13 12:26:17 +02:00
2023-05-22 17:52:07 +02:00
2023-06-01 11:43:51 +02:00
2023-06-01 11:43:51 +02:00
2023-07-25 17:36:08 +02:00
2023-07-19 21:59:57 +02:00
2023-07-19 18:24:15 +02:00
2023-06-01 11:43:51 +02:00
2023-07-26 09:22:07 +02:00
2023-07-20 15:45:05 +02:00
2023-08-01 13:51:17 +02:00
2023-07-20 11:49:06 +02:00
2023-07-20 11:49:27 +02:00
2023-07-20 17:01:00 +02:00
2023-07-31 19:02:58 +02:00
2023-05-17 14:47:15 +02:00
2023-07-18 09:07:16 +02:00
2023-06-01 11:43:51 +02:00
2023-07-20 17:01:00 +02:00
2023-05-22 13:54:08 +02:00
2023-07-04 10:16:13 +02:00
2023-07-17 13:30:46 +02:00
2023-07-31 23:21:10 +02:00
2023-07-27 11:58:34 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 13:54:08 +02:00
2023-05-22 13:54:08 +02:00
2023-07-27 11:58:34 +02:00
2023-05-22 17:52:07 +02:00
2023-07-27 11:58:34 +02:00
2023-07-31 23:21:10 +02:00
2023-05-22 13:54:08 +02:00
2023-05-22 13:54:08 +02:00
2023-06-19 10:41:00 +02:00
2023-05-22 17:52:07 +02:00
2023-06-01 11:44:13 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 17:52:07 +02:00
2023-05-22 13:54:08 +02:00
2023-05-22 17:52:07 +02:00
2023-08-02 14:41:26 +02:00
2023-07-27 14:47:17 +02:00
2023-08-02 14:41:10 +02:00
2023-08-01 15:09:17 +02:00
2023-07-27 11:58:34 +02:00
2023-07-25 08:18:58 +02:00
2023-07-28 16:28:45 +02:00
2023-07-25 08:18:58 +02:00
2023-07-28 16:28:45 +02:00
2023-07-27 11:58:34 +02:00
2023-07-28 16:28:45 +02:00
2023-08-01 13:51:17 +02:00
2023-07-05 14:33:58 +02:00
2023-07-31 23:21:10 +02:00
2023-07-20 14:22:57 +02:00
2023-07-28 16:28:45 +02:00
2023-07-25 08:18:58 +02:00
2023-07-25 08:18:58 +02:00
2023-07-31 19:02:45 +02:00
2023-07-27 11:58:34 +02:00
2023-07-28 16:28:45 +02:00
2023-07-24 20:17:56 +02:00
2023-07-28 16:28:45 +02:00
2023-07-25 08:18:58 +02:00
2023-06-28 17:41:19 +02:00
2023-08-01 22:31:01 +02:00
2023-05-22 17:52:07 +02:00
2023-08-02 13:19:55 +02:00
2023-06-01 11:43:51 +02:00
2023-07-20 14:23:15 +02:00
2023-07-25 00:54:53 +02:00
2023-08-02 17:29:00 +02:00
2023-07-19 23:17:53 +02:00
2023-07-19 23:17:53 +02:00
2023-06-01 11:43:51 +02:00
2023-07-19 23:17:53 +02:00
2023-07-19 23:17:53 +02:00
2023-07-19 23:17:53 +02:00
2023-07-20 13:06:46 +02:00
2023-08-01 13:51:17 +02:00
2023-07-27 11:58:34 +02:00
2023-07-13 19:28:21 +02:00
2023-07-24 20:17:50 +02:00
2023-07-28 16:29:11 +02:00
2023-07-17 18:13:30 +02:00
2023-08-02 17:28:56 +02:00
2023-07-25 17:36:08 +02:00
2023-07-25 17:36:08 +02:00
2023-06-29 22:38:49 +02:00
2023-08-02 01:15:49 +02:00
2023-07-19 18:24:15 +02:00
2023-07-27 11:58:34 +02:00
2023-06-01 11:43:51 +02:00
2023-07-19 18:24:15 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-06-22 08:34:58 +02:00
2023-07-18 09:07:13 +02:00
2023-07-27 14:47:00 +02:00
2023-07-24 20:17:50 +02:00
2023-08-01 09:40:55 +02:00
2023-06-23 09:20:57 +02:00
2023-05-12 19:55:08 +02:00
2023-07-26 12:00:30 +02:00
2023-08-02 05:10:14 +02:00
2023-07-20 10:07:11 +02:00
2023-08-02 17:29:00 +02:00
2023-07-25 17:36:08 +02:00
2023-08-01 13:51:17 +02:00
2023-07-20 11:49:04 +02:00
2023-06-09 17:01:17 +02:00
2023-05-22 17:52:07 +02:00
2023-08-02 01:15:56 +02:00
2023-08-01 13:51:17 +02:00
2023-08-01 23:52:30 +02:00
2023-06-15 10:44:58 +02:00
2023-06-01 11:43:51 +02:00
2023-06-13 14:07:27 +02:00
2023-06-13 14:07:27 +02:00
2023-08-02 17:28:56 +02:00
2023-08-02 05:10:14 +02:00
2023-08-01 13:51:47 +02:00
2023-07-15 13:05:53 +02:00
2023-07-25 17:36:08 +02:00
2023-07-25 17:36:08 +02:00
2023-07-19 18:24:15 +02:00
2023-08-01 13:51:17 +02:00
2023-06-12 22:39:26 +02:00
2023-06-28 17:41:19 +02:00
2023-07-31 23:21:10 +02:00
2023-07-19 13:13:16 +02:00
2023-08-01 23:52:30 +02:00
2023-07-31 23:21:10 +02:00
2023-06-12 10:02:22 +02:00
2023-07-24 20:17:50 +02:00
2023-06-12 22:39:26 +02:00
2023-08-02 13:20:23 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-06-28 17:41:19 +02:00
2023-06-01 11:43:51 +02:00
2023-06-28 17:41:19 +02:00
2023-08-01 13:51:17 +02:00
2023-08-02 17:29:05 +02:00
2023-08-02 05:10:48 +02:00
2023-08-01 13:51:17 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 15:59:24 +02:00
2023-08-02 13:20:23 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:23 +02:00
2023-07-18 11:42:26 +02:00
2023-06-01 11:43:51 +02:00
2023-07-31 19:02:45 +02:00
2023-07-11 22:33:47 +02:00
2023-08-02 13:20:23 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:23 +02:00
2023-06-28 17:41:19 +02:00
2023-08-02 13:20:23 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:11 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:23 +02:00
2023-07-11 22:33:47 +02:00
2023-05-30 10:31:43 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:23 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-06-26 21:10:01 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-27 11:58:34 +02:00
2023-07-31 19:02:58 +02:00
2023-07-27 11:58:34 +02:00
2023-07-28 14:54:16 +02:00
2023-07-27 11:58:34 +02:00
2023-08-02 13:20:23 +02:00
2023-08-02 13:20:23 +02:00
2023-07-18 16:58:43 +02:00
2023-07-27 11:58:34 +02:00
2023-06-01 11:43:51 +02:00
2023-07-27 11:58:34 +02:00