We have a workaround in place for fields.function of binary type
that may return values that are invalid in XML documents, and thus
in our XML-RPC protocol. But out workaround failed to care for the
invalid XML codepoints (below 0x1f) that are well valid in UTF-8
encoding.
Added a sanity check for that as well, using a terrible workaround
for this last resort case: b64-encode the bytes, to avoid crashing
the request.
bzr revid: odo@openerp.com-20110906173140-vc4tl6wstzt8h06o
do replacement in two passes of re-base replacement: replace old-style 'field:id' and 'field.id' in resp. 'field/id' and 'field/.id', don't touch anything else (especially not 'field/.id') and leave them through instead.
bzr revid: xmo@openerp.com-20110831094547-8evd7ecm5qojspnr
This is necessary to preserve the model loading order
as defined in the module. This was broken when the
metaclass was introduced to make the explicit model
constructor call optional.
One consequence is that the order in which the classes
are declared in the module really defines their
initialization order, even if the constructors are
later called explcitly in a different order.
This latter case should be fairly rare, and easy to
fix too - simply putting the class declaration in the
right order.
bzr revid: odo@openerp.com-20110826161736-lgnpurtbcqtbseey
There was no need to wrap/cast int values for values less
than 2^31-1, which the highest XML-RPC int value.
Also, instead of wrapping them in strings, we can use
float values, which are 64bits based in the XMLRPC standard,
and closer to the real value (for comparisons, etc.).
Added note for integer_big, as a reminder of this possible
issue.
bzr revid: qdp-launchpad@openerp.com-20110818120550-ulvffm6ka9f3c5ym
-_get_defaults(): improved docstring in order to follow RST docstring format
-_get_defaults(): removed weird loop in _get_defaults as there is always 1 element only
-_fnct_read(): make name_get as root
-_fnct_read(): check existence for m2o fields (as root)
-_fnct_read(): check for type of property field is now done on reliable information
bzr revid: qdp-launchpad@openerp.com-20110708125106-0q0wj5zncaa7yp0w
The 'method' param was quite useless, as 100% of functions
fields were using method=True. In addition, there is no need
to distinguish methods and functions, as methods are unbound
and passed as function objects in the declaration of a function
field, so they only need a proper signature.
Finally, docstring was added for fields.function class,
based on current doc from developer book (in preparation of
future API doc).
(A fix in addons follows, getting rid of all the useless
method=True params there too).
bzr revid: odo@openerp.com-20110701232328-flgxulxva70vnyxr
- pass a flag to __view_look_dom indicating if we are in a tree view
(this is needed as it can contain more complex expression, and its meaning
is different as it affects the tree column, instead of a single field on a line).
- pass the result of fields_get to __view_look_dom to let it augment
the nodes with info from the python fields.
bzr revid: vmt@openerp.com-20110628142753-7819z5sp39qxfxev