Commit Graph
3175 Commits
Author SHA1 Message Date
Xavier Morel 07ab8b6cd2 [FIX] P3: Exception.message removed 2017-05-12 16:15:40 +02:00
Xavier Morel 3dd3790597 [FIX] P3: raise exception with existing traceback
In Python 2, to raise a new exception but reuse a traceback requires a
special form of ``raise`` (``raise etype, evalue, tb``).

In Python 3, this is now done via a ``with_traceback`` method on
exception objects.

However this requires a bit of trickery as the former is invalid
syntax in Python 3, hence pycompat bridge created via an exec for
Python 2.
2017-05-12 16:15:39 +02:00
xmo-odoo 021de21e8c [FIX] P3: replace PyPDF by PyPDF2
PyPDF is unmaintained and abandoned (as noted on its home page
http://pybrary.net/pyPdf/) and was never updated to Python 3. PyPDF2 is
a fork which provides a mostly compatible API and is P3-compatible.

Replace PyPDF by PyPDF2.
2017-05-12 13:28:57 +02:00
fka-odoo 13ee5596c6 [IMP] base: Adapt address format for Japan.
Purpose
=======

ja_JP: the implemented language font in Odoo is not Japanese but Chinese.

In Japan address structure is different:
First: Postal code
Next: City +  ward (like a neighbourhoos name)
Next: Building (all buildings have names)
Name: Customer or Company

Specification
===========

New address structure for Japan:
%(zip)s
%(state_name)s %(city)s
%(street)s
%(street2)s
%(country_name)s

In Countries form view, add one selection field which set the customer name position in reports base on the customer country settings.
2017-05-12 11:30:46 +02:00
Xavier Morel a5a10e75ab [FIX] P3: file builtin removed
* replace with open()
* forbid file() builtin since reports-removal was merged
2017-05-12 09:27:17 +02:00
Xavier Morel b86e5fa477 [FIX] P3: exec keyword -> builtin function 2017-05-12 09:27:17 +02:00
xmo-odoo bc4391471e [FIX] P3: lint away some already cleaned up stuff
These issues were checked/cleaned previously but the linter was not updated.
2017-05-11 15:27:02 +02:00
xmo-odoo 6659d5a7d2 [FIX] P3: metaclasses handling
* cross-version metaclass spec
* more formally deprecate browse_record and browse_null since they
  were using metaclasses anyway
* update docstrings referencing the latter
2017-05-11 15:25:36 +02:00
Thibault Delavallée 6b490ef247 [FIX] base, report: fix choose report template broken by 'new report'
Report module has been cleaned and moved into base at https://github.com/odoo/odoo/commit/e80238042c9d93d492ea8b06b0041aced0d81dcd.
However there are leftover references to report module. This crashes
the template choice feature.
2017-05-11 12:35:23 +02:00
Kishan Gajjar 72553c6022 [IMP] base: Add kanban views for all menuitems used in mobile
Purpose
=======

Improve readability on mobile

Specification
=============

Activate Kanban view on those so it could be displayed by default on mobile instead of view list

List of impacted modules:

- base : kanban for currencies

- base : kanban for users

- base : kanban for Companies
2017-05-11 11:38:42 +02:00
Thibault Delavallée e6ba4e5f35 [FIX] base, report: fixes various bugs introduced when 'refactoring' reports
Commit https://github.com/odoo/odoo/commit/e80238042c9d93d492ea8b06b0041aced0d81dcd refactored and removed report
module. However it broke among other the feature allowing to customize
reports. This commit fixes first bugs preventing the 'choose template'
box to appear. Feature is still broken though.
2017-05-11 11:13:55 +02:00
Thibault Delavallée 3a52e5e5c9 [IMP] import, report: allow print_report_name when defining a report
Otherwise you have to have another xml block just to define the print
report name instead of doing everything in the report tag.
2017-05-10 17:10:04 +02:00
xmo-odoo fffaf735f5 [FIX] P3: list -> iterable builtins (#16811)
In Python 3:

* various builtins and dict methods were changed to return
  view/iterable objects rather than lists
* and the separate Python 2 view/iterable builtins and methods were
  removed altogether

This is problematic when using these items as list (which the happens
repeatedly in Odoo), but more viciously when iterating *multiple times*
over them (which also happens, which I've messed up multiple times while
writing this, and which is a pain to debug even when you've just created
the issue).

Convert all code using these to semantics-matching cross-version
helper functions to get the LCD behaviour between P2 and P3, and
forbid the builtins via lint.

issue #8530
2017-05-10 09:39:55 +02:00
Raphael Collet faba6daf7c [FIX] models: attribute pool on a model's class's may be falsy but not None
Modify the test to match `None` instead of any falsy value.  The latter
triggers a bug when installing a just-deinstalled module (point_of_sale).
2017-05-09 11:31:52 +02:00
Laurent Smet e80238042c [REF] report: remove the report module
The content of the report module is now dispatched in
the 'base' and the 'web' modules.
2017-05-08 09:23:12 +02:00
Laurent Smet 3425752eac [REM] odoo/report: remove deprecated stuff
- RML Reports
- Webkit Reports (most part already removed by 13b9982c62)
- LocalService in netsvc.py
- rename attributes like rml_% to report_%
- rename ir.actions.report.xml to ir.actions.report
- allow rendering directly on an ir.actions.report by calling render method
- remove 'controller' report_type
- remove unused res.font stuff
- remove print_report method in models.py (not used)
- restore removed call to pdftotext process in test_reports
2017-05-08 09:22:56 +02:00
Odoo Translation Bot 7a1b6559e1 [I18N] Update translation terms from Transifex 2017-05-07 07:08:16 +02:00
Odoo Translation Bot 8f2722896b [I18N] Update translation terms from Transifex 2017-05-07 04:30:47 +02:00
Simon Lejeune 9d7b421b8c [REL] 10.saas~16 2017-05-05 18:08:51 +02:00
Christophe Simonis 9898b125ad [MERGE] forward port branch saas-15 up to c0e4ab8080 2017-05-05 17:23:23 +02:00
Christophe Simonis c0e4ab8080 [MERGE] forward port branch saas-14 up to bac4d13d47 2017-05-05 17:17:02 +02:00
Olivier Dony 831a2a00e3 [FIX] longpolling worker: enforce memory limits
The GeventServer process was not enforcing the
configured memory limits. In the unlikely event
of a service handling hundreds of concurrent
longpolling requests on hundreds of different
databases, this could render the Registry LRU
ineffective in keeping a low memory footprint.

Even after being evicted from the LRU, these
hundreds of registries would still be referenced
by their in-progress requests, so the memory
would not be freed. An Odoo 10 registry can
typically take 15MB of memory, so this could
become a problem.
2017-05-05 17:02:45 +02:00
Olivier Dony 5a15d97387 [FIX] tools.cache: fix stats dump with gevent
Gevent processes have pseudo-thread objects
that do no always have a `dbname`attribute.
This could crash the process upon receiving
a USR1 signal.
2017-05-05 17:02:45 +02:00
Olivier Dony 8fbbe04a50 [FIX] tools: always preload PIL with basic formats
Ensures that only the desired list of images formats are made available
via PIL: BMP, GIF, PNG, JPEG, TIFF and PPM.
2017-05-05 17:02:45 +02:00
Raphael Collet 580e78ad37 [IMP] models: enable field.group_expand on all types of fields (#16833)
The attribute `group_expand` allows to reorder and add empty groups to the
result of `read_group`.  Enable this feature for other fields than many2one
fields.
2017-05-05 16:37:11 +02:00
Christophe Simonis bac4d13d47 [MERGE] forward port branch 10.0 up to d5cdb77717 2017-05-05 16:19:28 +02:00
Christophe Simonis d5cdb77717 [MERGE] forward port branch saas-11 up to b7e4ce93c4 2017-05-05 16:01:38 +02:00
Christophe Matthieu 9500f8d3f7 [IMP] web: add 'event_open_popup' option on calendar view
If the option 'event_open_popup' is set to true, then the calendar view will open events (or records) in a FormViewDialog. Otherwise, it will open events in a new form view (with a do_action)
2017-05-04 17:19:25 +02:00
Christophe Matthieu 27ff895dfd [IMP] web: extend qweb to allow dynamic templates in t-call
Before this change the t-call can use only receive a literal as parameters:
<t t-call="template.name17" />
This call render the template 'template.name17' with the current context.

Now, we can defined an expression with braces (same syntax that t-attf):
<t t-call="template.name{{ 10 + 7 }}" />
This call render the template 'template.name17' with the current context.

This change allows for greater flexibility for applications using qweb.
(The performance due to this change is unchanged during rendering time.)
2017-05-04 17:19:25 +02:00
Nicolas Martinelli 514bdcb0f1 [FIX] tools: unnecessary error logging
The limit of 64 characters on the XMLID has been removed a long time
ago. This error is therefore not necessary anymore.
2017-05-04 16:48:31 +02:00
qsm-odoo 250e716c3a [REF] web, *: restore views design
Since the new views merge, a lot of design elements were broken. This
was particularly impacting the fields in the editable list view; indeed
the editable list view is not using an inline form view anymore so the
fields in the list were not properly styled as the LESS was still
defined assuming the form view environment (for example the invalid
fields were red for o2m fields in form view but not in editable list
view even though they got the right CSS class).

This commit refactor the LESS following these rules:
- No more division of non-layout and layout rules. Dividing LESS rules
  in x_layout.less and x.less was a mistake. Many rules can be
  considered to be layout and not layout at the same time, developers
  always have to switch from one file part to the other, many CSS
  selectors (and rules!) are duplicated for nothing, ...
- Field style is extracted from x_view.less and put in the new
  fields.less file. As before, the fields_extra.less will contain the
  rules specific to community so that the enterprise repo can override
  those by replacing the whole file.
- Many classes have been renamed so that o_form_x_y becomes o_x_y as
  many classes can now be applied outside of form view. These classes
  should not be used in templates anyway.

The commit also changes the DOM of fields so that it is more minimalist
(no useless parent div, etc).

Input elements are not automatically styled anymore, they have to get
the o_input class explicitely. This allows to fix lots of small style
bugs of previous versions (required monetary field had not the proper
style, readonly m2m tags appeared as editable, ...). This also improves
the LESS code.

The editable list view should also completely stop flickering on chrome
and firefox.

The commit also removes the orange outline on list view dirty cells.

The commit also removes deprecated static xml, LESS and other code.

Notice there are still styles to restore/fix and LESS to improve.
2017-05-04 12:07:30 +02:00
Raphael Collet 77e7799d5a [FIX] registry: use a weak dictionary for model_cache to avoid memory leaks
The class attribute `model_cache` refers to model classes, which refer to their
own registry.  This cache potentially keeps all past registries alive!
2017-05-03 15:57:27 +02:00
Raphael Collet 59ee813a82 [IMP] fields: clean up comparisons to False 2017-05-03 15:54:36 +02:00
Raphael Collet 8706a8503b [REF] base: convert python constraint to SQL constraint
The constraint is `UNIQUE(model, name)` on `ir.model.fields`.
2017-05-03 15:52:58 +02:00
Raphael Collet b59318ec12 [REF] registry: always perform registry/cache signaling at the end of request
Problem: the update of custom models/fields is not fully transactional, and may
potentially lead to an inconsistent database.  An other problem is creating two
custom fields by writing on a model: if the second one fails, the first one has
been committed without notice.  Retrying the request will give an unexpected
error (duplicate field name).

Solution: never commit in the middle of a request.  If the changes have an
impact on the registry, then mark it as invalid (with a new flag), and signal
registry invalidation after everything has been committed.  If the request
fails, reset the registry.  Both registry and cache invalidation are handled
the same way.
2017-05-03 15:41:05 +02:00
Raphael Collet 1458f1b313 [REF] registry: delegate addition of custom models/fields
Delegate to models `ir.model` and `ir.model.fields`, so that this functionality
can be extended easily.
2017-05-03 15:41:05 +02:00
Raphael Collet f3f41ec551 [REF] registry: replace partial by attribute registry.loaded 2017-05-03 15:41:05 +02:00
Raphael Collet 5d3474254d [REF] registry: remove deprecated RegistryManager 2017-05-03 15:41:05 +02:00
Christophe Simonis bf7de4d32f [MERGE] forward port branch saas-15 up to 3f6bb0f544 2017-05-02 18:53:44 +02:00
Christophe Simonis 3f6bb0f544 [MERGE] forward port branch saas-14 up to 6441ea28b3 2017-05-02 18:25:31 +02:00
Christophe Simonis 6441ea28b3 [MERGE] forward port branch 10.0 up to cc7ae17bd5 2017-05-02 18:12:09 +02:00
Odoo Translation Bot eb19319585 [I18N] Update translation terms from Transifex 2017-04-30 07:12:44 +02:00
Odoo Translation Bot e0ff2840a5 [I18N] Update translation terms from Transifex 2017-04-30 04:31:05 +02:00
Christophe Simonis 9a769a8b47 [FIX] tools.sql: correct queries used to rename field 2017-04-28 18:59:14 +02:00
Denis Vermylen 9556d91995 [FIX] calendar: fix various tiny problems
- fix access rights issue when viewing events:
	Previously, with an attendee token, you could have access
	to all events by simply changing the id in the url.
	Now an extra verification is made to check if the attendee is
	related to the event.
- fix small mail template display issue
- raise sequence of "Actions" submenu in the technical settings
  (to allow insertion of submenus between Email and Actions)
2017-04-28 16:25:33 +02:00
Martin Trigaux 0858e3d330 [I18N] export saas-15 source terms 2017-04-28 15:37:57 +02:00
Christophe Simonis 37d5f1cb35 [MERGE] forward port branch saas-15 up to 26bfc119b7 2017-04-28 13:33:24 +02:00
Raphael Collet 26bfc119b7 [FIX] models: move wrongly forward-ported code to model ir.model.fields 2017-04-28 11:49:14 +02:00
Christophe Matthieu 76e6a0e356 [DOC] web: add documentation to use calendar
The calendar view was changed with the new view, but the documentation
was not updated.
2017-04-28 11:32:05 +02:00
xmo-odoo b4429c2a91 [FIX] Various P3-related import changes
* LDAP import: python-ldap is not python3-compatible, pyldap is

  Warning: only supported from debian Stretch (current testing)?
  https://packages.debian.org/search?searchon=names&keywords=pyldap

* implicitly relative imports
* imports of moved or removed stdlib modules

issue #8530
2017-04-28 09:06:53 +02:00