-----------
- Added ``RecordList.prefetch`` method. Als *RecordList's* *fields* argument
now works.
- Changed ``Object`` class. Now it have
``extend_me.ExtensibleByHashType`` metaclass
which allows it to be extended separatly for each model,
and in general way.
For example look at ``openerp_proxy.plugins.module_utils`` module.
- Refactored ``openerp_proxy.core`` module. + better docstrings
- ``openerp_proxy.ext.data``
- ``RecordList.prefetch`` is disabled at the moment.
Will be integrated in code, or atleast reimplemented in different way
- Better ``RecordList.group_by`` method.
Now it colud receive callable which should
calculate key for records to group them by
- Added ``RecordList.filter`` method.
Useful when You want to filter records by functional field.
- Added ``openerp_proxy.ext.log_execute_console`` extension
- HTML representation for IPython notebook extension ``openerp_proxy.ext.repr``
- Added HTML representation of
- Record
- Record.as_table (user is able to specify fields of record to display)
- RecordList
- RecordList.as_html_table (display records contained by list
as table with abilities to highlight them by condition callables
and to specify fields to be displayed)
- Object.columns_info now displayed as HTML table.
- Also *context help* in HTML representation present
- Partial context passing support in ORM
- ``openerp_proxy.orm.record`` refactored greatly
- In this version added support of "query cache", like that one present
in odoo's browse_record class (version 7.0).
It is dict with data shared by records in one query.
thus no need to read each record separatly, nor need to read all fields
records in current query at one time.
But major optimization which is not implemented yet is
implementation of some prefetching mechanism,
to allow user to specify what fields for what model
he would like to read, to reduce RPC calls.
- Record class little bit optimized with slots,
but still takes a lot of memory, because of extensibility.
- Added ``Record.read`` method, which, performs read on record,
store data been read to record, and returns dict with data been read
- ``RecordList.sort`` method was added.
implements *in-place* sort like in usual lists.
- ``RecordList.search`` and ``RecordList.search_records``
methods were implemented.
The difference from standard is that these methods will automaticaly
add [('id','in',self.ids)] to search domain
- ``Object`` class: added properties:
- ``model_name``: return name of object's model
- ``model``: returns ``Record`` instance for model of this object
- Added ``module_utils`` plugin, as example and as utility to work
with modules via RPC
- Report service wrapper (``openerp_proxy.service.report``) refactored.
- Simplified RPC methods signatures.
- Added wrapper on report result which can automaticaly decode and save
report result
- Added basic options support for sessions.
But in future this should be reimplemented as normal config
At this moment there only one option ``store_passwords``
which enables session to store encrypted passwords in session
Note that encryption is very low.
To make this option work You should install simple-crypt.
- ``ERP_Session`` renamed to ``Session`` but for backward compatability,
there is ``ERP_Session`` name still present in module.
- Added ``IPYSession`` class.
At this moment there is only one difference from standard ``Session`` class:
presense of ``_repr_html_`` method.