Cédric Krier
1ebe99e62d
Do not create indexes if they already exist
...
The `IF NOT EXISTS` clause does not prevent PostgreSQL from taking a ShareLock
on the table if the index exists.
Closes #14966
2026-07-22 14:36:17 +02:00
Nicolas Évrard
1aef4dbdae
Remove required on resource ID of ir.translation
2026-07-27 11:55:35 +02:00
Nicolas Évrard
ecaf40a8ee
Skip translation refering to unknown XML ID or unactivated source
...
Closes #12969
2024-01-29 18:47:56 +01:00
Cédric Krier
8414cd718f
Restrict protocols allowed for weasyprint to http(s)
...
Closes #14947
2026-07-24 10:49:42 +02:00
Cédric Krier
6b99dc69cc
Use binary version of psycopg for tests
2026-07-17 22:11:32 +02:00
Cédric Krier
a5e64fc509
Use Text field for HTML content of report record
...
The field must contain strings in order to allow edition with the HTML editor.
Closes #14922
2026-07-24 16:10:12 +02:00
Cédric Krier
efa6379b92
Calculate the number of parameters in INSERT query using the columns list
...
The column names list does not contain the create_uid nor create_date columns
instead of columns list.
Closes #14800
2026-07-23 11:37:36 +02:00
Cédric Krier
0035590218
Set back XML record for English with other languages
2026-06-25 17:10:23 +02:00
Cédric Krier
6a790d3162
Add search attribute to XML record tag
...
Closes #13247
2026-06-25 16:50:42 +02:00
Cédric Krier
f0878cb49b
Do not copy vlist in ModelSQL.create
...
The vlist is already a copy from ModelStorage._before_create.
Closes #14953
2026-07-13 15:56:31 +02:00
Nicolas Évrard
b167bd1e77
Do not fetch sub fields definition when prefetching views
...
Closes #14941
2026-07-08 14:59:40 +02:00
Sergi Almacellas Abellana
1d6b88afaa
Test column_ methods in tests_fields_methods
2026-07-06 20:05:23 +02:00
Cédric Krier
907c6a49fe
Remove entry_points_selectable backport
...
Since c0f49db907fc the minimal Python version is 3.10 which supports selectable
entry-points.
2026-07-07 19:19:25 +02:00
Cédric Krier
278896eac3
Add documentation for DatabaseTimeoutError
2026-07-08 23:01:08 +02:00
Cédric Krier
e317c87911
Return Gateway Timeout instead of Request Timeout for database timeout
...
Closes #14945
2026-07-08 22:12:42 +02:00
Cédric Krier
0c29a67c06
Add missing duration argument to database timeout warning
...
Closes #14944
2026-07-08 22:23:38 +02:00
Sergi Almacellas Abellana
99b6830032
Add cache on import_module tool
...
Closes #14936
2026-07-07 17:16:02 +02:00
Cédric Krier
fca02700e9
Re-raise transaction error from sub-test of button
...
Since a05fa06b3a4c the test of button is executed under the subTest context
manager but if the method is raising a TransactionError, it is considered as a
failure for the test.
But we need this exception to be raised up to the with_transaction decorator in
order to fix the transaction and execute fully the method of the button.
2026-07-07 19:16:08 +02:00
Cédric Krier
fca6a120f0
Use NullConnectionPool for the default database
...
The default database is template1 which is usually used to create new database.
Keeping a pool of connection open on it prevents the creation of new database
because exclusive access is needed on the template.
Closes #14935
2026-07-06 19:34:24 +02:00
Cédric Krier
4ddc5340b8
Permit __url__ and __href__ attribute usage in Genshi evaluation
...
Closes #14932
2026-07-06 09:07:08 +02:00
Nicolas Évrard
2743c2abaa
Use subtest for each button method tested
2026-07-07 07:31:32 +02:00
Cédric Krier
aacc97f905
Add support for reducing size of char if all rows are lower
2026-06-26 00:09:48 +02:00
Cédric Krier
91434daade
Define index using COALESCE for nullable Char fields
...
Closes #14909
2026-06-24 22:07:52 +02:00
Cédric Krier
23d9c20172
Do not apply COALESCE on required Char
...
Closes #14909
2026-06-24 22:06:59 +02:00
Adrià Tarroja Caubet
232822d251
Add a comma between 'set' and 'slice' in the Genshi allowed builtins
...
Closes #14928
2026-07-04 00:17:12 +02:00
Cédric Krier
67239eb9b4
Use rule check to enforce read access on report ids
2026-06-23 22:03:36 +02:00
Cédric Krier
2e84b60e75
Enforce access right on the email template record
...
Closes #14907
2026-06-30 09:48:33 +02:00
Cédric Krier
8df60185f5
Add ModelAccessProxy
...
#14907
2026-06-25 13:31:30 +02:00
Cédric Krier
d1aba4dbb5
Restrict Genshi evaluation
...
Closes #14869 #5160
2026-06-08 23:44:10 +02:00
Cédric Krier
c8b75d6c5e
Resolve Tryton modules using entrypoints
...
The Pool tries to resolve registered string using the path `trytond.modules.`
which can not always be imported if the module is using an entry pointing to
another package.
Closes #14914
2026-06-26 15:17:14 +02:00
Cédric Krier
5a7976bea6
Update module tutorial to match with the cookiecutter output
2026-06-18 19:11:04 +02:00
Cédric Krier
1e053eb4c6
Convert exception value into string when used as HTTPException description
2026-06-18 16:28:03 +02:00
Cédric Krier
078dbf0e11
Let the WSGI dispatcher handling exception raised within with_pool decorator
2026-06-18 16:26:59 +02:00
Cédric Krier
a57ea670a8
Write traceback of unexpected Exception in wsgi.errors
2026-06-18 16:24:23 +02:00
Cédric Krier
e525eeb1cd
Log unexpected Exception using exception level
2026-06-18 16:23:15 +02:00
Cédric Krier
9c7bb8d712
Support ModelStorage.search API in ResourceAccessMixin
...
ResourceAccessMixin inherits from ModelStorage so it should support the
ModelStorage.search API.
Closes #14900
2026-06-18 11:04:10 +02:00
Nicolas Évrard
7155dcf872
Do not import module to find the path of one of its file
...
Closes #14892
2026-05-15 22:23:22 +02:00
Nicolas Évrard
bba6e052cb
Delete only the records marked to be deleted when restoring history
...
Closes #14913
2026-06-26 15:41:27 +02:00
Nicolas Évrard
ec11c9e83b
Allow to store empty files in Binary fields
...
Closes #14476
2026-01-08 01:06:16 +01:00
Cédric Krier
20f5089837
Do not convert select query value into list when searching on char with in operator
...
Closes #14898
2026-06-18 15:49:10 +02:00
Nicolas Évrard
962c9d02a1
Save the new ir.model.data instances before calling functions on them
...
Closes #14885
2026-06-09 18:33:51 +02:00
Cédric Krier
8feb50c71c
Support query without where clause when searching on Many2One with where operator
...
When not using subquery but EXISTS and having a target domain converted into
UNION, the query result does not have a 'where' clause.
Closes #14889
2026-06-11 14:29:17 +02:00
Cédric Krier
dd03853b84
Document the usage of active_test in the context for ModelSQL.search_domain
2026-04-23 00:57:30 +02:00
Cédric Krier
25d1b72c64
Store column optional per occurrence
...
Closes #14832
2026-05-13 15:08:23 +02:00
Cédric Krier
25ffdbff7b
Use defauldict for XML ID getter instead of construct a complete dict
2026-04-24 23:02:57 +02:00
Cédric Krier
0acec62e0b
Use ids from BrowseList instance instead of construct a new list
2026-04-24 23:01:55 +02:00
Cédric Krier
0dae022a06
Add BrowseList for Model instances
...
Closes #14808
2026-04-24 23:21:41 +02:00
Cédric Krier
9d032e7a48
Use defaultdict as result of get method of Field
...
This prevents loop to fill the result with default value.
2026-04-23 19:04:43 +02:00
Cédric Krier
b99e3b455e
Do not include _timestamp, _datetime nor __id in searched columns
...
Since 815a0a887c3e the history filtering is done using SQL query so these
columns are no more needed in the search result.
2026-04-23 00:56:02 +02:00
Cédric Krier
572bd146af
Do not prefetch columns when searching for RPC
...
Closes #14802
2026-06-05 10:10:01 +02:00