Commit Graph
5907 Commits
Author SHA1 Message Date
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