Commit Graph
6957 Commits
Author SHA1 Message Date
Xavier Morel 7d732b1011 [FIX] broken translation cache for absent translation of 'false' 2014-07-11 15:46:12 +02:00
Christophe Simonis f654a7719b [MERGE] forward port of branch saas-5 up to 73d39a0 2014-07-10 22:49:53 +02:00
Christophe Simonis 73d39a0c8c [MERGE] forward port of branch saas-4 up to a361947 2014-07-10 22:12:16 +02:00
Christophe Simonis a361947143 [MERGE] forward port of branch saas-3 up to a35aec2 2014-07-10 22:02:58 +02:00
Christophe Simonis a35aec2a0b [MERGE] forward port of branch 7.0 up to 6e96ffd 2014-07-10 22:02:01 +02:00
Xavier Morel 19c7380951 [FIX] small potential encoding issue in custom models 2014-07-10 17:34:48 +02:00
Christophe Combelles 0050a3f797 [FIX] #1065 display_name does not display the address 2014-07-10 14:26:38 +03:00
Raphael Collet 836245564a [IMP] models: iterating over record._cache also returns log_access fields 2014-07-09 15:34:51 +02:00
Raphael Collet 643be98fcf [FIX] models: store FailedValue in cache on log_access fields, too
This should fix an issue discovered by tde when reading all fields on a record
on which you don't have access right:
 - _read_from_database() fetches result and store it in cache
 - read() retrieves values from cache, starting with field 'create_date'...
 - ... which is not in cache, so prefetch that field, read it, which goes into
   an infinite loop

The problem is that _read_from_database() finds out that you don't have access
on the record, and stores a FailedValue in cache on all fields... except magic
fields. Fix the problem by storing the FailedValue on all fields but 'id'.
2014-07-09 15:23:15 +02:00
Raphael Collet ba5f0e7ce5 Merge pull request #1018 from odoo-dev/8.0-fix-display-name-rco
[FIX] models: wrong var used in _compute_display_name(), fixes issue #1002
2014-07-09 10:56:55 +02:00
Raphael Collet ca1be04d7a [FIX] models: wrong var used in _compute_display_name(), fixes issue #1002 2014-07-09 10:26:01 +02:00
Xavier Morel 4ac8682b52 [FIX] False module description blows up in docutils
fixes issue 1005
2014-07-09 08:47:37 +02:00
Raphael Collet 9ccdbcaca3 Merge pull request #989 from odoo-dev/8.0-sql-models-rco
[FIX] models, fields: add model dependencies for models backed up by sql views
2014-07-08 16:27:01 +02:00
Martin Trigaux 84e9a67cdf [FIX] orm: better removal of custom m2m fields
orm: do not try to create ir.model.relation for custom m2m as self._module is either empty (for custom models), either the one of the last inheriting module (which is wrong). The field should be removed manually and should not be impacted by the uninstallation of modules. The removal of the relation table can be done when removing manually the custom field (see rev 6af3193).

ir.model: when removing a model, drop the table with the CASCADE instruction. This will remove left constraints from remaining m2m tables.
This means that dropping a table (either manually removing a custom model or uninstalling a module) will not drop the relation table for a custom m2m field. This is not ideal but better than the previous behaviour (which was to fail the DROP TABLE instruction and keep the table with a few columns and unconsistent data).
2014-07-08 15:56:24 +02:00
Raphael Collet 603bde1b1b [IMP] fields: improve code in former commit 2014-07-08 15:52:02 +02:00
Raphael Collet b05cf32b8f [IMP] fields: add missing case for invalidating fields, when path is None 2014-07-08 15:47:44 +02:00
Raphael Collet 34dac62d32 [IMP] models: add an extension mechanism for attribute _depends on models 2014-07-08 14:52:23 +02:00
Xavier Morel 2f3aa63617 [FIX] compile of rst module descriptions to HTML
lxml (used by the html sanitizer) really does not like documents as unicode
strings with an encoding declaration (which doesn't make sense indeed), yet
docutils with output_encoding=unicode generates one (a stupid one too, says
"encoding=unicode").

Disable the xml declaration altogether when compiling rST module declarations
to HTML.
2014-07-08 14:39:24 +02:00
Martin Trigaux 6af3193d17 [FIX] ir.model.fields: better unlink
When droping a column, remove also the relation table in case of custom m2m field.
The relation table needs to be dropped otherwise an unremovable constraint to the targetted table is kept (and anyway is not needed anymore).
2014-07-08 13:55:48 +02:00
Raphael Collet 3fdc232352 [FIX] fields: add a type to field Id; this fixes #990 2014-07-08 13:29:45 +02:00
Raphael Collet a6b025d6d9 [FIX] models, fields: add model dependencies for models backed up by sql views 2014-07-08 10:16:16 +02:00
Raphael Collet e9fae40faf Merge pull request #976 from odoo-dev/8.0-fix-model-init-rco
[FIX] models: reorganize model instantiation
2014-07-07 20:37:11 +02:00
Fabien Meghazi c0aa86b9ab [FIX] configuration file dbfilter's option has no effect
lp bug: https://launchpad.net/bugs/940439 fixed

bzr revid: fme@openerp.com-20140508075025-yszqmzie1z4n7l4j
2014-07-07 18:08:31 +02:00
Christophe Combelles 740d5c6cd3 [FIX] Fix broken translation cache for absent translation of 'false' 2014-07-07 17:29:11 +03:00
xmo-odoo 957c0cca1c Merge pull request #970 from xmo-odoo/8.0-remove-unnecessary-listifications-xmo
Remove redundant calls to list()
2014-07-07 16:15:23 +02:00
xmo-odoo 48c16e4b26 Merge pull request #969 from xmo-odoo/8.0-fix-weakset-listification-xmo
Unsafe listification of weakref in Python < 2.7.4
2014-07-07 16:15:02 +02:00
Christophe Simonis e5b0933743 [FIX] data-dir management
- sessions are now shared between series.
- use site data dir instead of user data dir if user has no home dir.
- in http and module handling, `data-dir` was used before being
initialized, using the default value instead of user input

(fixes #308, #904)
2014-07-07 15:49:24 +02:00
Raphael Collet 09f094ff7f [FIX] models: reorganize model instantiation, which was broken when adding custom fields 2014-07-07 15:47:27 +02:00
Olivier Dony 139d868c94 [REL] 8.0 RC1 2014-07-07 15:25:42 +02:00
Raphael Collet 130f890215 Merge pull request #964 from odoo-dev/8.0-remove-getattr-rco
[REM] models: remove the magic methods signal_XXX()
2014-07-07 14:49:49 +02:00
krnkris ccc211fa51 [I18N] base: fix Hungarian translations
(Manual rebase of #956, pending update in Launchpad translations)
2014-07-07 14:36:55 +02:00
Xavier Morel efe910569a [REM] unecessary calls to list()
* Either further operations don't really care (e.g. ``str.join`` takes any
  iterable)
* Or they do their own seq (``browse`` calls ``tuple()`` on iterable params)
2014-07-07 14:01:07 +02:00
Xavier Morel ac282e0294 [FIX] unsafe listification of weakref in Python < 2.7.4
Fixes #966

* As a preallocation optimization, ``list()`` calls ``__len__`` on its
  parameter if it's available
* Before Python 2.7.4, WeakSet has a bug[0] where ``len()`` is unsafe: it is
  done by iteration and weakrefs may be removed from the underlying set during
  the iteration

As a result, the safety feature of listifying a WeakSet to ensure we have
strong refs on all items during iteration may blow up.

Wrapping the weakset in a ``iter()`` makes ``__len__()`` invisible and ensures
we're within the IterationGuard[1].

Which now that I think about it means we *should* be able to safely iterate
weaksets in the first place and may not have needed to listify them...

[0] http://bugs.python.org/issue14159
[1] http://hg.python.org/cpython/file/b6acfbe2bdbe/Lib/_weakrefset.py#l58
2014-07-07 13:51:53 +02:00
Raphael Collet 33eb3dffb2 [REM] models: remove the magic methods signal_XXX() 2014-07-07 11:50:30 +02:00
Xavier Morel 798ce97df4 [IMP] raise exception when a DB request fetches ids it was not asked for
Likely caused by a type incoherence e.g. providing an id as string when the
table uses integer ids. Postgres performs an implicit conversion from string
to integer[0], this wasn't much of an issue in the old API, whatever cache was
there would simply not be used, but because the new API's cache is part of its
behavior it has a semantic impact and can lead to infinite recursion.

[0] more precisely from quoted value, which is untyped
2014-07-07 09:59:05 +02:00
Raphael Collet cbe2dbb672 [MERGE] new v8 api by rco
A squashed merge is required as the conversion of the apiculture branch from
bzr to git was not correctly done. The git history contains irrelevant blobs
and commits. This branch brings a lot of changes and fixes, too many to list
exhaustively.

- New orm api, objects are now used instead of ids
- Environements to encapsulates cr uid context while maintaining backward compatibility
- Field compute attribute is a new object oriented way to define function fields
- Shared browse record cache
- New onchange protocol
- Optional copy flag on fields
- Documentation update
- Dead code cleanup
- Lots of fixes
2014-07-06 17:05:41 +02:00
Olivier Dony 34bfa1b44f [MERGE] Forward-port saas-5 up to d9cda97 2014-07-05 01:45:45 +02:00
Olivier Dony d9cda97cf4 [MERGE] Forward-port saas-4 up to 5ceded9 2014-07-05 01:28:19 +02:00
Olivier Dony 5ceded9d69 [MERGE] Forward-port saas-3 up to 4fa30f5 2014-07-05 01:04:19 +02:00
Olivier Dony f3880a8a09 [MERGE] Forward-port of 7.0 up to 64ac1b0 2014-07-04 17:07:53 +02:00
Xavier Morel 40f7175172 [IMP] replace a manual & eager concat by chain.from_iterable(iter) -> iter 2014-07-04 10:58:41 +02:00
Martin Trigaux bf353998f2 [FIX] res_partner: backport of rev 37bf72a
Correctly take the 'use parent address' into account in the onchange. Slightly updated the view that was weird with this parameter. opw 609344
2014-07-03 12:30:48 +02:00
Richard Mathot 04eff4fe3d [TYPO] Stupid typo... 2014-07-03 09:36:46 +02:00
Fabien Pinckaers 0c702bdfa7 Merge pull request #885 from odoo-dev/master-shop-fp
Fixes for perf issues /shop + cleaning pricelists & currencies
2014-07-02 20:34:21 +02:00
xmo-odoo 2c23b0020b Merge pull request #881 from xmo-odoo/master-qweb-lxml-xmo
Convert qweb (Python) to use lxml
2014-07-02 19:28:24 +02:00
Fabien Pinckaers 1ce0b70a02 Speed Improvements 2014-07-02 19:03:10 +02:00
Fabien Pinckaers 5cc81dd64f Fixes 2014-07-02 18:18:29 +02:00
Xavier Morel ce80ad2960 [FIX] don't call render_node on comments (or PIs) 2014-07-02 18:00:03 +02:00
Richard Mathot fbbc3a54e9 [FIX] RML reporting: understandable crash message
When tag <drawString> is misused in an RML report, logs a more explicit
error
2014-07-02 17:30:32 +02:00
Xavier Morel b18d83c0e0 [IMP] convert qweb to use lxml instead of minidom
should be >20x faster at parsing document strings and gain close to 40s on crawling
2014-07-02 16:01:36 +02:00