Commit Graph

822 Commits

Author SHA1 Message Date
Anael Closson ac88131405 [IMP] Speed and quality improvement
- removing the need of the use of search when groupby is set on a relation
    field.
  - creation and use of dedicated helper method to compute the orderby clause
    for easier reading

bzr revid: acl@openerp.com-20140217140144-2rm3o00g76tyhqxn
2014-02-17 15:01:44 +01:00
Martin Trigaux 21842a4fc4 [MERGE] sync with 7.0 (getting needed orm revision)
bzr revid: mat@openerp.com-20140213130150-9ltjazqiru5apv5k
2014-02-13 14:01:50 +01:00
Martin Trigaux ff389d8478 [FIX] remove useless cr.commit in fields creation
This is require to be able to create revertable tests adding new fields

bzr revid: mat@openerp.com-20140213120349-a0p3bist5l5uyg6b
2014-02-13 13:03:49 +01:00
Martin Trigaux 3668f09108 [IMP] avoid changing the API by passing the company_id in context
bzr revid: mat@openerp.com-20140213100836-wte9zec4easb0cmw
2014-02-13 11:08:36 +01:00
Martin Trigaux 6f8811e7f6 [MERGE] sync with 7.0
bzr revid: mat@openerp.com-20140213095713-b1ys0nu8u7o8ybyr
2014-02-13 10:57:13 +01:00
Olivier Dony 391872c4d6 [FIX] orm.copy_data: avoid reading useless and possibly expensive data when copying records
Rather than reading the data and discarding it,
it is much faster to not read it in the first place.

bzr revid: odo@openerp.com-20140206170401-brd6368pe1fmbkkc
2014-02-06 18:04:01 +01:00
Anael Closson 30d22d327e [FIX] typo, wrong ordering of lines
bzr revid: acl@openerp.com-20140205125208-8ds2hxfqnuqsngbd
2014-02-05 13:52:08 +01:00
Martin Trigaux 6ea8851fd0 [ADD] test read_group on a column of _inherits model and group on right field
bzr revid: mat@openerp.com-20140203133331-mujvv812zd971ci2
2014-02-03 14:33:31 +01:00
Anael Closson f6207124f9 [FIX] OPW 598942 : orm read_group doesn't take referenced fields or aggregated fields in account when sorting
Sorting was done using a search on ids that where found in a custom SQL field,
only 1 record among aggregated records with same groupby value was used
when using search for ordering, resulting data ordered on
max(aggregated_data).field_value instead of sum(aggregated_data.field_value).

lp bug: https://launchpad.net/bugs/106086 fixed

bzr revid: acl@openerp.com-20140203125854-ypi0bu0lbhatg9b1
2014-02-03 13:58:54 +01:00
Martin Trigaux cafa5e7854 [FIX] orm: read_group aggregates values on all columns instead of only the one of the parent model
bzr revid: mat@openerp.com-20140203123311-38rwp7tfyc08flid
2014-02-03 13:33:11 +01:00
Martin Trigaux f2b2ee8eae [FIX] expression: do not look at translation in parse when searching with empty string or false
This fixes traceback when applying filter 'is not set' on a translatable field

lp bug: https://launchpad.net/bugs/1208565 fixed

bzr revid: mat@openerp.com-20140127144913-qjh9hrnkfdn18sdb
2014-01-27 15:49:13 +01:00
Christophe Simonis 2f90f80ba0 [FIX] orm: As float fields are stateful (the .digit attribute depend of the database (decimal_precision)), registry model instances need their owm copy.
lp bug: https://launchpad.net/bugs/929483 fixed

bzr revid: chs@openerp.com-20140116153708-061aq2k0n1qsb2n3
2014-01-16 16:37:08 +01:00
Martin Trigaux 3fb75a44c8 [FIX] orm: add missing context (without the lang attribute to avoid setting translated values) in write call.
bzr revid: mat@openerp.com-20140109153601-13wo9gj5cz6ho3nm
2014-01-09 16:36:01 +01:00
Christophe Simonis 7f8b6542f0 [FIX] expression: allow exclusion of records with translated fields
lp bug: https://launchpad.net/bugs/1071710 fixed

bzr revid: chs@openerp.com-20140108152722-7f0dpsuv1skxbqub
2014-01-08 16:27:22 +01:00
Martin Trigaux 13063d5713 [IMP] osv: display full traceback in terminal (not client side) when a check fails instead of minimal error
bzr revid: mat@openerp.com-20140108140554-oey9bje52ndqe0e3
2014-01-08 15:05:54 +01:00
Christophe Simonis 9675445dee [FIX] expression: allow exclusion of records with translated fields
Manual forwardport of revid 4369 chs@openerp.com-20140107112227-sc1ssd1dw404vcz2 of 6.1 branch

lp bug: https://launchpad.net/bugs/1071710 fixed

bzr revid: chs@openerp.com-20140107130840-igmm8sy03nrm5d5f
2014-01-07 14:08:40 +01:00
Guewen Baconnier 780e1548c0 [CHG] set lang to False instead of en_US (already being the default language), reducing the places where this default value is set
bzr revid: guewen.baconnier@camptocamp.com-20131228203801-3z6g1bb0ggfio5x0
2013-12-28 21:38:01 +01:00
Cecile Tonglet a48c8119ca [FIX] name_search() where _rec_name is a reference field and links are broken
bzr revid: cto@openerp.com-20131211103842-i1n9t8mg9kuw77v3
2013-12-11 11:38:42 +01:00
Xavier ALT 9a4c62861f [FIX] orm: early return within ``_apply_ir_rules`` for superuser.
Save a few time by not not trying to apply ir.rule for superuser, that will
  anyway be skipped within ir.rule's ``_compute_domain`` method.

bzr revid: xal@openerp.com-20131210140330-oui4oy8pez12xkxv
2013-12-10 15:03:30 +01:00
Xavier ALT f5458a954d [FIX] orm: cleaner batch number of records for auto_init() stored fields.function update
bzr revid: xal@openerp.com-20131210122312-f3f4h0z4lpiagsk3
2013-12-10 13:23:12 +01:00
Cecile Tonglet 86776035ba [FIX] Model.create: trigger stored field recalculation for implicit parent_id fields during create
The create() method implicitly creates parent records on objects of the _inherits.
Therefore, in order to make the trigger on the linked field works, we should
include all the _inherits values (fields that make the link to the parent
record) because they are created implicitly.
The write() method does not need this change, as any update of the parent
fields has to be explicit.

bzr revid: odo@openerp.com-20131209184718-wczdefzo9evc0cgc
2013-12-09 19:47:18 +01:00
Cecile Tonglet 3b328aaab4 [FIX] Trigger stored field recalculation for inherited records
The create() method implicitly creates record on objects of the _inherits.
Therefore, in order to make the trigger on linked field works, we should
include all the _inherits values (field that makes the link to the rel
record) because they are created implicitly.

bzr revid: cto@openerp.com-20131209154857-788f94w0kh6ef5pp
2013-12-09 16:48:57 +01:00
Cecile Tonglet 2e197cbb98 [IMP] Batch for the computation of function's stored values is now customizable
bzr revid: cto@openerp.com-20131209141111-tbg9x1h8l6neu0ml
2013-12-09 15:11:11 +01:00
Martin Trigaux d2ca43402e [FIX] orm: inverting the condition seems to work (don't ask why)
bzr revid: mat@openerp.com-20131206142220-nfqiyeic9fdkejxy
2013-12-06 15:22:20 +01:00
Martin Trigaux 0be3333f96 [FIX] orm: ignore existing link for operation (4, x) in one2many fields
bzr revid: mat@openerp.com-20131206125403-r6uemlh7jagw01gh
2013-12-06 13:54:03 +01:00
Cecile Tonglet cdff5c1366 [IMP] Performance: by-pass call to _apply_ir_rules for user admin
bzr revid: cto@openerp.com-20131205121118-0f9087y2huo7y44l
2013-12-05 13:11:18 +01:00
Martin Trigaux 9652fb0013 [IMP] orm: force checking ir.rules on read when accessing only to _classic_write fields (o2m, m2m, function)
More consistent behaviour. Was not able to access unauthorized data (retrieving data on x2m field would trigger security rules) but make sure it raises an exception instead of silently retrieve no data.
Move construct domain inside if clause as no needed before

bzr revid: mat@openerp.com-20131205113254-j3j4bb0p6ed23oht
2013-12-05 12:32:54 +01:00
Martin Trigaux 9635119fc1 [FIX] fields: execute name_get for function field of type many2one as SUPERUSER_ID (same behaviour as classical many2one)
bzr revid: mat@openerp.com-20131125125008-wmpssjk5vygdcc0w
2013-11-25 13:50:08 +01:00
Martin Trigaux e2102ca9ce [IMP] orm: add missing space in error message during validation
bzr revid: mat@openerp.com-20131125124717-4jsqv0lfu7hpxusi
2013-11-25 13:47:17 +01:00
Martin Trigaux 3b5cf5d56c [FIX] translations: fix tests to adapt to new duplication behaviour and remove context hack in copy_data (translations are now fully handled in copy_translation)
bzr revid: mat@openerp.com-20131125115727-o9oejao1ziagqti1
2013-11-25 12:57:27 +01:00
Martin Trigaux fbbc6ea840 [FIX] orm: when duplicating translated object, modify the values to get more coherent values
user's language: old (untranslated) -> new (translated)
other language: old (untranslated) -> old (translated)

This allows to have coherent behaviour if copy() method is overwritten to change the text (usually applying _('%s (copy)')). The current user will see the translated terms with modification while the translations are kept for others (and need to be updated).
We prefer keeping slightly irrelevant translations (without translated version of '%s (copy)') for other languages than losing it.

bzr revid: mat@openerp.com-20131125110736-d6iygeq8om5y4fkz
2013-11-25 12:07:36 +01:00
Martin Trigaux 10608a5d18 [FIX] ir_translation: correctly match old and new ids on inherit fields
new_id was correctly handled at rev 5118 but the old_id wasn't which could produce inconsistency if there was a gap in ids

bzr revid: mat@openerp.com-20131122175939-lvlf4ih4pyidqxjp
2013-11-22 18:59:39 +01:00
Olivier Dony b7865502e4 [FIX] orm.browse_record: access error due to prefetch of indirectly referenced records (OPW #596679)
The browse_record prefetching algorithm attempts to
load data for all known records from the requested
model (i.e. all IDs present in the browse cache),
regardless of how indirectly/remotely they were
referenced. An indirect parent record may therefore
be prefetched along with its directly browsed children,
possibly crossing company boundaries involuntarily.

This patch implements a fallback mechanism when
the prefetching failed due to what looks like an
ACL restriction. This being a fuzzy concept at the
moment, it does its best to only catch a restricted
set of exceptions, and retry loading the data for
the directly requested ID only.

This may cause a small performance penalty in case
of real errors (with some spurious logging too),
but should only be triggered in very few cases.

The downside when this happens is that the prefetching for that
model gets effectively disabled, requiring multiple
SQL queries for further access to the data of
the other directly browsed records.

This EAFP approach seems safer and faster than
a LBYL technique where we would have to filter
all indirect m2o references according to ACLs
before allowing them to enter the cache.

lp bug: https://launchpad.net/bugs/1238042 fixed
lp bug: https://launchpad.net/bugs/1212429 fixed

bzr revid: odo@openerp.com-20131120100627-031fljyf4ckprc9b
2013-11-20 11:06:27 +01:00
Martin Trigaux 4d9e140b8c [IMP] comments
bzr revid: mat@openerp.com-20131104144427-oyca1g1ti583sq3c
2013-11-04 15:44:27 +01:00
Martin Trigaux 91cf53228b [FIX] orm: when duplicating a record, if duplicates translations on a field from _inherits model, use the id of the parent record instead.
Avoid getting old value by removing 'source' value from read result.

lp bug: https://launchpad.net/bugs/1237878 fixed

bzr revid: mat@openerp.com-20131104143408-o71lyws8uba679hd
2013-11-04 15:34:08 +01:00
Guewen Baconnier 226ed9abea [FIX] propage the context to not lose special keys/values on write() and explicit the source language to write to (en_US)
lp bug: https://launchpad.net/bugs/1247158 fixed

bzr revid: guewen.baconnier@camptocamp.com-20131101161820-rwzh8zx2nqpb7r2q
2013-11-01 17:18:20 +01:00
Christophe Simonis 2859897815 [FIX] allow falsy extra attributes on fields.
bzr revid: chs@openerp.com-20131024135448-e2bpgaqu7mvg1icn
2013-10-24 15:54:48 +02:00
Olivier Dony dafa12d92c [FIX] ir.model: FK constraints for custom m2o fields were never created, creating possible data integrity errors
bzr revid: odo@openerp.com-20131010170718-lwoxkqc1tx7i8vhg
2013-10-10 19:07:18 +02:00
Martin Trigaux a0059326fc [IMP] remove useless comment
bzr revid: mat@openerp.com-20131008111631-y47f0y4wyf8hsf2g
2013-10-08 13:16:31 +02:00
Martin Trigaux 9680b1cd39 [IMP] move comment to the right line
bzr revid: mat@openerp.com-20131008105412-pqxpo2q12odjyqp4
2013-10-08 12:54:12 +02:00
Martin Trigaux 241c054b35 [IMP] correctly bound _symbol_f and redifine self._symbol_set_char to keep the API
bzr revid: mat@openerp.com-20131008104737-eellli48re2pfmos
2013-10-08 12:47:37 +02:00
Martin Trigaux 3ae73d572d [FIX] function fields: bound symbol methods of function field (type char) to the correct methods of the char field
lp bug: https://launchpad.net/bugs/1208074 fixed

bzr revid: mat@openerp.com-20131008102135-r7lqvky0vd75yo1q
2013-10-08 12:21:35 +02:00
Martin Trigaux 7fc046e6b3 [IMP] orm: don't compute twice the same function for stored fields if two fields have the same trigger function
bzr revid: mat@openerp.com-20130930140515-4kbzkotjh2ify5vm
2013-09-30 16:05:15 +02:00
Martin Trigaux 46020a08da [IMP] store fields: do not add twice the same function field in the store_function list
bzr revid: mat@openerp.com-20130930121511-94a2k0ka91bsgrnf
2013-09-30 14:15:11 +02:00
Christophe Simonis 1d91378ce2 [FIX] ir.ui.view: properly validate newly created inheriting views
When a new inheriting view is imported during a module
    installation, it is validated thanks to the _constraints
    on the ir.ui.view model. However the validation uses
    a rather convoluted system for validating the whole
    view tree at once (root view + all inherited changes)
    while only taking into account the views that belong
    to modules that are currently loaded.

    This complicated system is necessary to be able to
    operate on-the-fly at any point during the registry
    loading/initialization.

    Now because _constraints are checked during create()
    this particular validation happens *before* the
    external ID (ir.model.data entry) of that new view
    can be created (it obviously needs to wait until
    the view record is inserted). As a consequence the
    view validation cannot determine the module to
    which that new view belongs, and was erroneously
    ignoring it.
    Changing the view filtering to also include views
    that have triggered this check.
    Manually created views are not check during registry
    update.

bzr revid: chs@openerp.com-20130912141018-qmcyase8zqov9d01
2013-09-12 16:10:18 +02:00
Christophe Simonis e78a83ac03 [FIX] browse records do not prefetch fields with groups
bzr revid: chs@openerp.com-20130819174930-xjzmrhuuuuwnbdg0
2013-08-19 19:49:30 +02:00
Christophe Simonis 815fc8f84a [FIX] browse records do not try to prefetch fields user can't read
bzr revid: chs@openerp.com-20130819164622-7cre7yqpvlyzsslj
2013-08-19 18:46:22 +02:00
Christophe Simonis 03381c761d [FIX] expression: a valid leaf must have a non empty string as first element or be the magic TRUE_LEAF/FALSE_LEAF
lp bug: https://launchpad.net/bugs/1197323 fixed

bzr revid: chs@openerp.com-20130719091903-28ez0txxyjh6qiii
2013-07-19 11:19:03 +02:00
Stefan Rijnhart 216f4d5e66 [FIX] Do not search for model = table name in previous commit
bzr revid: stefan@therp.nl-20130626140439-3emprb4ewc2xlcsy
2013-06-26 16:04:39 +02:00
Stefan Rijnhart 126b49075d [FIX] Export creates xml id based on wrong table name
lp bug: https://launchpad.net/bugs/1194893 fixed

bzr revid: stefan@therp.nl-20130626135842-sdbvopuen0s7liv9
2013-06-26 15:58:42 +02:00
Olivier Dony 9a5e317618 [FIX] OPW 592482: browse_record should not prefetch binary fields
This was apparently a long-standing issue due to a
strange handling of the _prefetch attribute on
columns: accessing a column would only trigger
the prefetching if its _prefetch attribute was
True, but the prefetching itself would also
prefetch columns that had _prefetch False.

We clearly want it the other way around, or
at least we want _prefetch to decide whether
a column is included in any given prefetching
pass. We can skip the prefetching pass when
the only field being accessed has _prefetch
False because it is likely the other fields
have already been prefetched separately.
This last subtlety should not make any
noticeable performance difference.

lp bug: https://launchpad.net/bugs/1177965 fixed

bzr revid: odo@openerp.com-20130620131057-v7s4qfqj976j3ufo
2013-06-20 15:10:57 +02:00
Amit Dodiya 244c82fe4f [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130604110137-jclbsmkohs5mm66w
2013-06-04 16:31:37 +05:30
Amit Dodiya f7d2e495fd [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130531120925-s10hwscv2gexh27a
2013-05-31 17:39:25 +05:30
Amit Dodiya f1db39aab1 [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130531115736-ecrpaer2f2yhnvs5
2013-05-31 17:27:36 +05:30
Amit Dodiya bfa4ab09f6 [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130531101249-1w17yuoklhmiv2cc
2013-05-31 15:42:49 +05:30
Amit Dodiya 99d4732f04 [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130527115951-7zssei2fnxyqzrpq
2013-05-27 17:29:51 +05:30
Amit Dodiya b7e1be5539 [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130527114601-tqzlrna1n9jssou2
2013-05-27 17:16:01 +05:30
c01e2fe122 [FIX]ir_property: If we add a property on a many2one field with multicompany the value of main company is replaced in all companies value
bzr revid: ado@tinyerp.com-20130520090111-h20jboltev763mj6
2013-05-20 14:31:11 +05:30
Martin Trigaux 8ecd022348 [IMP] clean permissions and shebang in files
bzr revid: mat@openerp.com-20130514103333-puuj4kmxq3bwzwec
2013-05-14 12:33:33 +02:00
Christophe Simonis 60f0bd08ee [FIX] expression: allow creating child_of expression even if "id" field has been redefined, courtesy of Gustavo Adrian Marino
lp bug: https://launchpad.net/bugs/1030942 fixed
lp bug: https://launchpad.net/bugs/1131992 fixed

bzr revid: chs@openerp.com-20130423181926-yk628txd6yiybtko
2013-04-23 20:19:26 +02:00
Quentin (OpenERP) d621d26516 [FIX] orm, _generate_order_by(): allow to order by LOG_ACCESS_COLUMNS even if the column is not defined again in self._columns. Raising an error instead of silently skipping the order_by
bzr revid: qdp-launchpad@openerp.com-20130419145417-2tix8ynmx51qiqkf
2013-04-19 16:54:17 +02:00
Olivier Dony 8efd16f25a [FIX] res.partner, orm._check_recursion: prevent recursive partner structures + fix false positives in check_recursion()
- res.partner must prevent creating loops in partner
hierarchies, and this can be done easily with an
extra _constraint using the ORM's builtin _check_recursion

- _check_recursion's implementation incorrectly
assumed that the provided 'ids' were unrelated
(not part of a common hierarchy).

- add tests for _check_recursion via extra
tests on res.partner structure
(explains why both patches are in the same
commit)

bzr revid: odo@openerp.com-20130415171732-aj3j2e2mycvzf4kp
2013-04-15 19:17:32 +02:00
Chris Biersbach 15bd42f5e5 [FIX] Removes the limit of 64 characters from additional text fields added via the interface
lp bug: https://launchpad.net/bugs/1053511 fixed

bzr revid: cbi@openerp.com-20130327132335-tro1p1n5at042jfb
2013-03-27 14:23:35 +01:00
Olivier Dony 41598ef041 [FIX] orm.expression: `=?` domain operator broken after 7.0 refactoring ; + added tests
lp bug: https://launchpad.net/bugs/1095635 fixed

bzr revid: odo@openerp.com-20130321173737-a0j330ro4i223fkb
2013-03-21 18:37:37 +01:00
Chris Biersbach 6b80f5bdff [FIX] orm: moves the access_rule check to the end of the create method to avoid getting errors when trying to create and m2m values are passed, which can cause the rules to fail
bzr revid: cbi@openerp.com-20130314092017-agwzvwwbxev531kk
2013-03-14 10:20:17 +01:00
Quentin (OpenERP) d97916a063 [IMP] expression.py: added a clue to debug fuzzy tracebacks related to domain badly written
bzr revid: qdp-launchpad@openerp.com-20130306152328-qdlil19diks4mvkt
2013-03-06 16:23:28 +01:00
Olivier Dony db81edc287 [FIX] *: fix/rationalize db logging to avoid incorrect values during logging
The setting/clearing of the tracking were not done
consistently, causing log messages that appeared
to come from one database while coming from another
one or none at all.

The tracker is now set at the earliest points
of request handling where we can:
- in web client, when creating WebRequests (dbname, uid)
- at RPC dispatching in server (uid)
- at cron job acquisition in CronWorker (dbname)
- at Registry acquisition in RegistryManager (dbname)


The tracker is cleared at the very entrance of
the request in the WSGI `application`, ensuring
that no logging is produced with an obsolete
db name. (It cannot be cleared at the end of
the request handling because the werkzeug
wrapper outputs more logging afterwards)

bzr revid: odo@openerp.com-20130301120744-jfitcmze2jldecod
2013-03-01 13:07:44 +01:00
Olivier Dony bd02d21f2d [MERGE] osv: automatically retry transactions that failed due to a transient concurrent transaction conflict
lp bug: https://launchpad.net/bugs/992525 fixed

bzr revid: odo@openerp.com-20130219173813-ldrx8l1hlegi2e3y
2013-02-19 18:38:13 +01:00
Cecile Tonglet 2346b0d88c [FIX] osv: Bad error message
bzr revid: cto@openerp.com-20130213133345-ovhlrfd2g5sb2tts
2013-02-13 14:33:45 +01:00
Cecile Tonglet 8d491afca5 [FIX] osv: Automatically retry the typical transaction serialization errors
lp bug: https://launchpad.net/bugs/992525 fixed

bzr revid: cto@openerp.com-20130213125255-ct0bf90pky2n6w3c
2013-02-13 13:52:55 +01:00
Xavier Morel 4a9d82621e [IMP] don't log from import when converting psycopg exceptions to output messages
add conversion for unique constraints, test behavior on unique constraint failure

bzr revid: xmo@openerp.com-20130211143647-l16ssw9z73stbgyc
2013-02-11 15:36:47 +01:00
Xavier ALT 4db48cc102 [MERGE] BUG 1082003: orm: _rec_name should be checked on _all_columns not _columns
bzr revid: xal@openerp.com-20130211092411-3eeo2ann5jnttliq
2013-02-11 10:24:11 +01:00
Christophe Simonis c10d28e4e6 [FIX] orm: SUPERUSER is not restricted by groups on fields
bzr revid: chs@openerp.com-20130116164025-qns65cb78p8p57m1
2013-01-16 17:40:25 +01:00
Olivier Dony 8e5f0e2ce2 [FIX] fields.date[time]: context_today()/context_timestamp() should fallback to user TZ if context TZ is missing
This takes care of cases where the context is missing,
e.g. for workflow-based operations, and is similar
to the way tools.translate._() falls back to the user
language.

lp bug: https://launchpad.net/bugs/949516 fixed

bzr revid: odo@openerp.com-20130111175717-u8r1t7s8872bz2rx
2013-01-12 06:57:17 +13:00
Fabien Pinckaers aa86fb2bc1 [IMP] custom model allowed
bzr revid: fp@tinyerp.com-20121227172825-lny2fobb5g89edca
2012-12-27 18:28:25 +01:00
Raphael Collet c9bc74c5c9 [MERGE] lp:~therp-nl/openobject-server/ronald@therp.nl_trunk_lp1009014_new (improve transient models vacuum)
bzr revid: rco@openerp.com-20121221153122-q6j8vatd2xfmqr3n
2012-12-21 16:31:22 +01:00
Raphael Collet 8ead65d82a [IMP] orm: fix vacuum of transient model
bzr revid: rco@openerp.com-20121221152914-qs1s9h1zwnyzft1m
2012-12-21 16:29:14 +01:00
Raphael Collet e7ce4a4529 [MERGE] from trunk
bzr revid: rco@openerp.com-20121221134259-scc92nby1dn91pe8
2012-12-21 14:42:59 +01:00
Thibault Delavallée 919c0d1152 [REV] Reverted last improvement, because this was messing with the menus.
bzr revid: tde@openerp.com-20121221095934-ocbnwz2zvbdbmfug
2012-12-21 10:59:34 +01:00
Thibault Delavallée e2728306b3 [IMP] OROM: order_spec is overidden by self._order only if None (aka, not specified at all). False or void order_spec allows to avoid having any order_by clause. This is used now in needaction, to speedup the search.
bzr revid: tde@openerp.com-20121220205102-lx9ftf3l8qg0xqcu
2012-12-20 21:51:02 +01:00
Thibault Delavallée 36e5b6e88e [FIX] _search not uniquifies the results, because when using _auto_join we could have duplicates in the 'left part' of the result, i.e. a lead with several unread messages. This is done using a custom method instead of a set, because sets are unordered.
bzr revid: tde@openerp.com-20121220141842-or3bigz11qkb13qn
2012-12-20 15:18:42 +01:00
Raphael Collet 95b41b40e9 [IMP] register_hook: improve a bit the code
bzr revid: rco@openerp.com-20121219132138-npf12n5l5ug6ujvx
2012-12-19 14:21:38 +01:00
Raphael Collet fd5dee2267 [MERGE] from trunk
bzr revid: rco@openerp.com-20121219130750-3ljqo3dyz05zww08
2012-12-19 14:07:50 +01:00
Olivier Dony 9f77d2e2f4 [FIX] orm,registry: properly check m2o FKs during model update + fix some models `auto_init`ed multiple times
The case where no constraint existed at all was not working,
and after fixing it, the ORM started to re-create the same
constraints multiple times for some modules. This was for
models that are split within a module (such as res.users in
base, which is made of several small classes): all the
partial models were going through _auto_init instead
of only the final one - doing useless extra work.
      
Unfortunately establishing the FK happens before the
XML data files are loaded, so a number of FK and
NOT NULL constraints failed to apply due to missing
tables/records. base.sql had to be extended a bit
to cover these cases in a minimalist fashion

bzr revid: odo@openerp.com-20121217214645-av9n003yzterhujw
2012-12-17 22:46:45 +01:00
Raphael Collet 39fe69babe [FIX] expression: avoid delitem on a tuple
bzr revid: rco@openerp.com-20121217134559-cjc0b4ncs1drupn7
2012-12-17 14:45:59 +01:00
Raphael Collet 3040114651 [MERGE] trunk-style-improvements-xmo (Python stylistic improvement)
bzr revid: rco@openerp.com-20121217110150-4ijt04ic17miktq7
2012-12-17 12:01:50 +01:00
Raphael Collet 2679a49af4 [FIX] orm: replace incorrect usage of 'in' by '=='
bzr revid: rco@openerp.com-20121217104721-miqmtw2zm7r7lxrs
2012-12-17 11:47:21 +01:00
Raphael Collet eecc7de437 [MERGE] trunk-acl-thu (check read/write access restrictions on fields with a groups attribute)
bzr revid: rco@openerp.com-20121217101528-nt5hsjvvodaap57m
2012-12-17 11:15:28 +01:00
Antony Lesuisse f6fe592152 [MERGE] trunk
bzr revid: al@openerp.com-20121216014404-oonymtva4uww7bwk
2012-12-16 02:44:04 +01:00
Antony Lesuisse 0a35f78974 [MERGE] remove res.partner.address by chs
it also removes an ugly hack in the orm.

bzr revid: al@openerp.com-20121215182836-y15v2mwgdg9wyubi
2012-12-15 19:28:36 +01:00
Vo Minh Thu 91ee5eae52 [IMP] orm/acl: proper message instead of `TODO`.
bzr revid: vmt@openerp.com-20121214155313-76lncslpx7ugrp6x
2012-12-14 16:53:13 +01:00
Vo Minh Thu 08a082f63f [FIX] registry: Set the fields_by_model attribute in __init__(), use None to flag non-existing fields-per-model cache.
bzr revid: vmt@openerp.com-20121214141114-em9r66e3sfy21t2r
2012-12-14 15:11:14 +01:00
Xavier Morel d0a377cb1c [FIX] incorrect docstrings or docstring param names not matching actual param names
bzr revid: xmo@openerp.com-20121214130758-a2wp963w4djmb02k
2012-12-14 14:07:58 +01:00
Xavier Morel b6ece5d65f [REM] trailing semicolons
bzr revid: xmo@openerp.com-20121214124310-wfdkhmcwxnyqu30m
2012-12-14 13:43:10 +01:00
Xavier Morel c6079dd6bb [REM] unnecessary parens
bzr revid: xmo@openerp.com-20121214123803-6xu2s1ndnoyj4i3e
2012-12-14 13:38:03 +01:00
Xavier Morel a5cb8460c6 [FIX] __init__ can't return values
bzr revid: xmo@openerp.com-20121214122525-bd5207viiz4vqi8x
2012-12-14 13:25:25 +01:00
Xavier Morel 4cb3685f70 [IMP] compare to None by identity
bzr revid: xmo@openerp.com-20121214121638-6k5h0ztg94i4f5t6
2012-12-14 13:16:38 +01:00
Vo Minh Thu 3667e3c619 [IMP] module loading: removed unnecessary indentation, added comments.
bzr revid: vmt@openerp.com-20121214105820-9nlgzu9pm7cvh1pz
2012-12-14 11:58:20 +01:00
Olivier Dony e660b70ecb [IMP] orm: do not warn about missing ondelete cascade rule if ondelete is restrict - that's safe as well
bzr revid: odo@openerp.com-20121212210247-emrz5rf9ewcwdggu
2012-12-12 22:02:47 +01:00
Vo Minh Thu eb0fcc35d2 [FIX] check_field_access_rights: ignore nonexisting fields
It seems name_alias is requested but does not exist.

bzr revid: vmt@openerp.com-20121212151509-22494edob4e3fqaf
2012-12-12 16:15:09 +01:00