Commit Graph
3175 Commits
Author SHA1 Message Date
Christophe Simonis 8962b8ecc2 [MERGE] forward port branch saas-14 up to d35a76ee17 2018-01-12 16:47:12 +01:00
Christophe Simonis d35a76ee17 [MERGE] forward port branch 10.0 up to d76237e038 2018-01-12 16:16:51 +01:00
Raphael Collet ca9d2b3006 [IMP] fields: log when a stored field depends on a non-stored field
Log an info when a field is computed and stored, but not all its dependencies
are stored.  Also allow to set explicitly `depends` on a field; this is useful
to restrict the dependencies of a related field.
2018-01-12 14:13:37 +01:00
Raphael Collet 3fbd86bcbe [IMP] field: compute transitive dependencies over non-stored fields
In other words, when a field F depends on a non-stored field G, it also depends
on G's dependencies.  This guarantees that whenever a dependency of G is
modified, F will be invalidated and marked to recompute (if necessary).

The transitive closure of dependencies is not computed over stored fields.
Anyway stored fields already trigger the recomputation of their dependent
fields during their recomputation.  The performance impact on the loading of a
registry is negligible (less than 1%), and the increase of recomputation
triggers is small (less than 10%).
2018-01-12 13:42:05 +01:00
Jerther 270b2ebf81 [FIX] service, web: memory error on large DB
Fixes MemoryError when restoring large database archive.

Closes #17663
opw-788273
2018-01-12 10:17:42 +01:00
Fabien Meghazi d080f8c047 [IMP] ir_cron: use 'info' loglevel instead of 'debug' when starting job
This information is important for `ir.cron` troubleshooting hence
deserves a little more love.
2018-01-12 09:34:37 +01:00
Fabien Meghazi 65b41eb291 [IMP] ir_cron: use 'info' loglevel instead of 'debug' when starting job
This information is important for `ir.cron` troubleshooting hence
deserves a little more love.
2018-01-12 09:34:08 +01:00
Christophe Simonis dde619a9ac [REL] master is back as 12.0 alpha 2018-01-11 15:18:03 +01:00
Raphael Collet 309b6b8e5a [FIX] api: optimize odoo.api.Cache.get_records()
Assuming that `field.cache_key(record)` is independent from `record.id`,
compute the cache key once for all records, and avoid using `browse` on all
record ids.  This makes `get_records` about 20 times faster.

This has a good performance impact on `field.modified_draft()`, which is used
during onchanges for invalidating fields.
2018-01-11 13:52:16 +01:00
Thibault Delavallée cdfe479e2e [MOV] mail: reorder a bit mail thread methods by category
As this class has grown a lot some methods have been put a bit anywhere
in the file. To prepare future improvements it is easier to regroup
them a bit.

remove_accent from mail_alias is also moved to tools in order to separate
tools from business or class specific code.
2018-01-11 11:52:37 +01:00
Jeremy Kersten 8fb203f7c6 [FIX] base: ir_ui_view unescape %% in dev mode
In dev mode with xml feature, we read the xml from file directly.
%% should be unescape to get % instead.
2018-01-10 21:01:33 +01:00
Christophe Simonis 782154da11 [MERGE] forward port branch saas-11.1 up to f6ef0c7760 2018-01-10 20:35:53 +01:00
Christophe Simonis 228ecdbe28 [MERGE] forward port branch 11.0 up to ff0abd214c 2018-01-10 11:41:35 +01:00
Christophe Simonis 55caee6481 [FIX] base: adapt test to new behaviour defined by 7e894aca0b 2018-01-09 19:07:01 +01:00
Martin Trigaux 7e894aca0b [FIX] models: do not keep the old source in case of copy override
Current behaviour when duplicating a record:

    apply copy override in the user language (e.g. "%s (copy)")
    copy the previous term in all the other languages (including)

So if product was named:

    cheeses (en)
    kaas (nl)
    fromage (fr)

Duplicating the product, while in French, will result into:

    cheeses (en)
    kaas (nl)
    fromage (copie) (fr)

This is a problem if there is a unicity constrain on the field, it will be
raised (there is already a product named 'cheese')

After this PR:

Duplicating the product, while in French, will result into:

    fromage (copie) (en)
    kaas (nl)
    fromage (copie) (fr)

This applies **only** if there is an override of copy

This is detected by comparing the old and new value for the user language

Fixes #7010
Closes #22052
2018-01-09 18:15:47 +01:00
Lucas Perais (lpe) 1ad8867dee [FIX] base: corrected automated action onchange and write
When having an automated action which
triggered upon changing a field to write on another
(no python code, but operatiing with ir.server.object.lines)

Before this commit, the onchange was not performed.
This was because there was no active id
(in fact the code did not take object(<NewId>) into consideration)

After this commit, the onchange is performed.

OPW 801424
2018-01-09 15:17:21 +01:00
Martin Trigaux f68d33b6a5 [IMP] base: do not generate translations for untranslatable languages
The untranslatable langues were generating translation
Followup and fixes #9479
2018-01-08 11:58:18 +01:00
Fabien Pinckaers 028fd260a7 [IMP] base: improved action name to install modules 2018-01-07 20:10:07 +01:00
Fabien Pinckaers b341b5ca73 [IMP] Remove duplicate fields names 2018-01-07 19:28:03 +01:00
Fabien Pinckaers 4ae5a3affa [IMP] Warning when two fields have same labels 2018-01-07 17:44:57 +01:00
Richard Mathot 40b879b75d [FIX] base: language code for Khmer (Cambodia)
Manual cherry-pick in master of the "commit that broke the stable and was
reverted": 3830621075
2018-01-05 11:45:43 +01:00
Pierre Rousseau 9ec0455abc [FIX] tools: fixed missing import in xml_utils 2018-01-04 18:58:38 +01:00
Pierre Rousseau ff4ee2c17e [IMP] l10n_sg: improved localisation
Added Unique Entity Number (UEN) to company and partner to use them in the IRAS Audit File (l10n_sg_reports)
    Changed vat_label on Singapore
    Added new taxes (2019)
    Fixed the Chart of Account (account codes and types)
    Added 'Permit Number' and 'Permit Number Date' on invoices
2018-01-04 18:58:38 +01:00
Martin Trigaux ad3b28fd89 [FIX] base: do not insert duplicated translations
This will avoid unique constrain to be raised in the scenario of a record having
multiple ir.model.data entries to the same record.

This can be reproduced in standard with the following scenario

1. The product.template product_product_4_product_template has multiple variants
   product_product_4
   product_product_4b
   product_product_4c
   ...

2. At the creation of the records, ir.model.data are automatically created
   product_product_4_product_template
   product_product_4b_product_template
   product_product_4c_product_template
   ...

   While this could/should be fixed too. Having several ir.model.data to the
   same record is not forbidden and could be reproduced in different ways.

3. Export the translations
   #. module: product
   #: model:product.product,description_sale:product.product_product_4
   #: model:product.product,description_sale:product.product_product_4b
   #: model:product.product,description_sale:product.product_product_4c
   #: model:product.template,description_sale:product.product_product_4_product_template
   #: model:product.template,description_sale:product.product_product_4b_product_template
   #: model:product.template,description_sale:product.product_product_4c_product_template
   msgid ""
   ...

   As the field description_sale is present on both model and is translatable

4. Load a .po file with these translations
   The 3 product.template entries points to the same record, making the unique
   constrain raise an error

This error can also be reproduced with the project_time_mode_id_duplicate_xmlid
field creating two xmlid for the same ir.model.fields

Closes #21472
2018-01-04 15:22:12 +01:00
Raphael Collet 160d657704 [IMP] base: make translations unique
With the unique constrain, the slow SELECT DISTINCT query can be removed

Fixes #18679
2018-01-04 14:48:41 +01:00
Kinjal Mehta 564988f58d [IMP] test_new_api: changed duplicate field label in the same model 2018-01-04 17:56:57 +05:30
dbh 0f7930353d [IMP] base,base_address_city,base_setup: give warning if fields have same label to easily identify duplicate field string. 2018-01-04 17:56:52 +05:30
Kinjal Mehta 689ea6ea1a [IMP] base: give warning if fields have same label to easily identify duplicate field string. 2018-01-04 16:06:02 +05:30
Adrian Torres 2bedd640db [FIX] ir_model: ignore monetary fields during install (#21789)
Previous to this commit, we try to load as many fields as possible
during module installation, however sometimes some fields are not ready
to be loaded, which is the case for custom monetary fields, thus when
trying to find the current model's currency_id field it would not find
it at all, generating an assertion error.

This commit changes this by completely skipping monetary fields if they
are not ready to be loaded.

OPW 787223
2018-01-03 14:35:54 +00:00
Christophe Simonis 55b810dc70 [MERGE] forward port branch saas-11.1 up to 726b91b9fb 2018-01-03 14:05:48 +01:00
Christophe Simonis 362f0489d0 [MERGE] forward port branch 11.0 up to fe22a0f9ca 2018-01-03 12:28:52 +01:00
Alexandre Kühn 8bc7cebd9c [IMP] web: many2many editable list with X remove icon (#20978)
In many2many lists, the remove record from the widget is a trash bin.
It is confusing, as people feel they are deleting it when they are
only unlinking it.

So in many2many, we propose to change the trash icon by a 'X'.

This icon appears in many2many relations and in many2many widgets:
even though hr.expense.sheet defines the expense lines as a one2many,
it uses a many2many widget, so we use a 'X' instead of the trash bin.

To avoid ambiguity, we decided to rename 'delete' to 'remove'.
2018-01-03 11:42:39 +01:00
Martin Trigaux cab7e0d204 [FIX] *: add missing space in multilines messages
Courtesy of @Yenthe666
2018-01-03 11:09:09 +01:00
Christophe Simonis 3fe94628f6 [FIX] test_performance: bump query count for tracking fields (bis) 2018-01-02 18:31:02 +01:00
Christophe Simonis 82c3d92971 [FIX] test_performance: bump query count for tracking fields 2018-01-02 18:11:25 +01:00
Christophe Simonis f02ed9ab9a [MERGE] forward port branch saas-16 up to 0af13af5de 2018-01-02 16:54:38 +01:00
Christophe Simonis 0af13af5de [MERGE] forward port branch saas-15 up to ddd293065e 2018-01-02 15:36:25 +01:00
Christophe Simonis ddd293065e [MERGE] forward port branch saas-14 up to ba2a83ddfa 2018-01-02 15:02:26 +01:00
Christophe Simonis ba2a83ddfa [MERGE] forward port branch 10.0 up to e336dc38ca 2018-01-02 13:56:49 +01:00
Odoo Translation Bot a39491d459 [I18N] Update translation terms from Transifex 2017-12-31 07:10:12 +01:00
Odoo Translation Bot f60948d55c [I18N] Update translation terms from Transifex 2017-12-31 04:14:26 +01:00
Odoo Translation Bot 43487b73d6 [I18N] Update translation terms from Transifex 2017-12-31 00:42:46 +01:00
Odoo Translation Bot 50e2941f65 [I18N] Update translation terms from Transifex 2017-12-24 07:10:06 +01:00
Odoo Translation Bot 9d9ca960ae [I18N] Update translation terms from Transifex 2017-12-24 04:16:18 +01:00
Odoo Translation Bot a19c462902 [I18N] Update translation terms from Transifex 2017-12-24 00:42:06 +01:00
Prakash Prajapati aed97f4042 [IMP] base: Add a newly created company to the user's allowed companies
Specification
=============

When user is creating a new company (in a multicompany environment), by default, he should have access to this company.

Also, do not allow to create new company from allowed companies dropdown
2017-12-21 15:06:36 +01:00
Nicolas Martinelli 2aa3132d09 [FIX] base: prevent App Switcher as home action
This reverts commit 1ffe85f1cb and replaces the domain with a
constrain.
2017-12-21 13:47:24 +01:00
Richard Mathot dcad7b37cd [FIX] base: make the test pass
Since this test relies on the fact that no data exists yet, we are
forced to unlink them...
2017-12-21 12:59:23 +01:00
Richard Mathot eb61925344 [FIX] base_partner_merge: this wizard does not depend on mail anymore
We then extract the logging of the merge in a separate submethod, and
log in chatters only when available.
2017-12-21 12:59:23 +01:00
Richard Mathot e330567707 [MOV] base,crm: make contact deduplication wizard available for all apps 2017-12-21 12:59:23 +01:00