Commit Graph
3175 Commits
Author SHA1 Message Date
Fabien Pinckaers cfd5f47493 [IMP] base: no image (and kanban use default values 2017-07-05 22:06:41 +02:00
Denis Ledoux 6078c04266 [IMP] models: allow to use a not automatic create_date field
Without this, you cannot use a `create_date` field
in a model with `_log_access` set to `False`
2017-07-05 13:50:15 +02:00
Denis Ledoux ad67f7aff8 [FIX] sql: Do no consider a table exists if this is a schema table/view
Before this revision, this is not possible to create a model
with a `_table` set to `domains`, for instance.
2017-07-05 13:47:29 +02:00
Martin Trigaux 8810cee440 [I18N] all: synchronise saas-14 terms
based on v10 terms and saas-15
add the new languages

Much noise due to the different softwares that do not indent the terms the same
way. Merged the po files with --no-wrap option which makes long lines.

opw-751014
2017-07-05 11:48:45 +02:00
Christophe Simonis 780ae8a808 [MERGE] forward port branch saas-15 up to 10cb34bcac 2017-07-04 18:14:13 +02:00
Christophe Simonis 10cb34bcac [MERGE] forward port branch saas-14 up to 97258040d8 2017-07-04 14:40:20 +02:00
Christophe Simonis 97258040d8 [MERGE] forward port branch 10.0 up to 657e328903 2017-07-04 13:17:16 +02:00
Fabien Pinckaers 5a97afcce1 [FIX] scaffold: small fix in template 2017-07-03 16:33:26 +02:00
Richard Mathot c47c52bfd9 [FIX] base: fetch gravatar images only from views
Before this commit, at each partner creation (including data import,
RPC import and tests) Gravatar server was polled, slowing down partner
batch import.

We then enable this feature only where it is needed: when creating a
partner from a view.
2017-07-03 15:04:29 +02:00
Odoo Translation Bot b5951dc6a3 [I18N] Update translation terms from Transifex 2017-07-02 07:03:10 +02:00
Odoo Translation Bot 0db908b399 [I18N] Update translation terms from Transifex 2017-07-02 04:27:01 +02:00
Martin Trigaux ec7b08d1ff [FIX] base: check description content
Some may say that fe346fa0 made the test fail but this is an illusion
2017-06-30 15:25:44 +02:00
Nicolas Martinelli c61ae3a3ed [FIX] models: copy field with unique constrain
When a model contains a field translatable which has a unique
constrain, it is impossible to copy a record. Indeed, the unicity
constrain is always triggered, even if the model takes in charge the
overriding of the copy method to avoid duplication.

Introduced with commit ce7f31b0b0, with the goal to target only
XML/HTML translations. We apply this behavior in case of a callable
translate property, to target only the desired problematic use case.

opw-749481
2017-06-30 10:52:15 +02:00
Christophe Simonis 936f39886c [MERGE] forward port branch 10.0 up to cb01cfe9ff 2017-06-29 16:40:39 +02:00
Nicolas Martinelli d63a01f939 [FIX] base: sequence date range
Ensure to search a maximum of 1 record to avoid crash.

opw-748971
2017-06-29 09:33:15 +02:00
Raphael Collet b8cf940247 [ADD] base: new wizard to uninstall a module (#17284)
The "Uninstall" button on the module form no longer changes the state of
modules, so that cancelling the wizard will not unexpectedly perform the
uninstallation.  The uninstallation is performed only by clicking on the
"Confirm" button on the wizard.

Moreover, the wizard provides clearer information about the impact of the
uninstallation: what apps/modules will be uninstalled and what documents
(models) will be lost.
2017-06-28 15:36:17 +02:00
xmo-odoo 98602e93cc [FIX] PO translations export
Within the scope of P3 compatibility, a StringIO was replaced by
BytesIO in b4429c2a91, however I missed
that BytesIO is much stricter about types than StringIO *even in
Python 2*. Some bits of text would sneak up in PoFile.write or
PoFile.write_info and blow up the export.

The BytesIO makes sense for output (tgz is definitely not a text
format and base64 is a bytes -> bytes encoding), but ensuring the
entirety of PoFile worked on bytes seemed distasteful (and lots of
changes), it seemed more sensible at all levels that PoFile would make
sure to properly work on *text*, and to add a text adapter wrapper
around the BytesIO buffer.

io.TextIOWrapper was almost perfect (it closes the underlying stream
on close but that can be worked around) *however* it turns out
TextIOWrapper does not work on Python 2's `file` objects... so use the
older codecs.StreamReaderWriter which should be able to do the job
properly.

fixes #17834
2017-06-28 15:35:53 +02:00
Martin Trigaux 81ff060fb4 [I18N] export base source terms 2017-06-28 14:53:55 +02:00
Laurent Smet 8e230ae25d [FIX] base/report: fix attachment creation without attachment_use
If attachment_use is false and attachment_name specified, the attachment
is not created.
2017-06-28 11:43:32 +02:00
Xavier Morel 6ad587dc8f [FIX] db restoration existence check
5ee9ec7d removed bool(Connection), turns out db restore still used it
but muted the logger so that was hard to notice in the logs.
2017-06-28 10:05:33 +02:00
Goffin Simon cf66983f37 [FIX] base: Language translation import issue
When importing translations with a csv, the state of the translations was
always set to "To translate" even if the state was "Translated"
due to function _inverse_source.

PS: Making self.source when self is considered as record set could lead to an error.
The return in this function was not needed.
In old API this function was called just for one record.
So this function expect only one record at each call.

opw:747877
2017-06-28 09:27:20 +02:00
Ankit Joshi 16ebec2324 [FIX] http: avoid crash in web/database/selector when selecting invalid database (#17830) 2017-06-27 16:52:20 +02:00
Christophe Simonis dd43071638 [MERGE] forward port branch saas-16 up to 278e478d55 2017-06-27 14:19:31 +02:00
Christophe Simonis 34b432d528 [MERGE] forward port branch saas-15 up to 4d79a1ff58 2017-06-26 19:19:39 +02:00
Xavier Morel 5ee9ec7d6c [FIX] P3: __nonzero__ -> __bool__
Also ~removed bool-testing on cursors
2017-06-26 16:45:03 +02:00
Xavier Morel c5dcf75a81 [FIX] P3: Unpickler.find_global -> Unpickler.find_class 2017-06-26 16:45:03 +02:00
Xavier Morel aaf8f3e37f [IMP] reorganise opcodes in categories 2017-06-26 16:45:03 +02:00
Xavier Morel 5810ea2a97 [FIX] P3: random.sample on a recordset
In P3, random.sample requires that its parameter be a Sequence or a
Set. This blows up _cart_accessories.

So opt BaseModel into both ABC, seems to work fine.
2017-06-26 16:45:02 +02:00
Xavier Morel 8f6e5dbdd3 [FIX] P3: assertItemsEqual is called assertCountEqual
The python 3 name is more correct as to what the assertion actually
does, but still makes for a breaking change.
2017-06-26 16:45:02 +02:00
Xavier Morel 3c95f7f25c [FIX] P3: ast changes
* P3 gets a "proper" arg node
* P3's arguments adds two parameters (kwonlyargs and kw_defaults) for
  keyword-only parameters
* P3's ``fn(**bar)`` only works if ``bar`` *only has string keys*,
  some of the contexts in qweb passed non-string keys and blew up
* P3's ast.If requires a non-empty body, add ``[ast.Pass()]`` ballback
  for non-literal bodies
2017-06-26 16:45:02 +02:00
Xavier Morel 6e9d29df1d [FIX] P3: bytecode changes
* Python 3.4 adds new convenient bytecode-inspection API to dis which
  is nice, however Python 3.6 also switches from the old bytecode to a
  new wordcode which breaks _get_opcodes and *requires* that we use
  the new API
* add various opcodes which either were added in Python
  3 (CALL_FUNCTION_EX) or were only used for some small corners of
  Python 2 but have been expanded or despecialised in Python
  3 (BUILD_SLICE)
2017-06-26 16:45:02 +02:00
Christophe Simonis e1c74e374c [MERGE] forward port branch saas-14 up to 3bac72ba74 2017-06-26 14:04:04 +02:00
Christophe Simonis 3bac72ba74 [MERGE] forward port branch 10.0 up to aaadb232b2 2017-06-26 13:00:18 +02:00
Odoo Translation Bot afba38b88d [I18N] Update translation terms from Transifex 2017-06-26 10:49:30 +02:00
David Arnold 1930e8dffb [I18N] remove es_CO translations
Based on analysis https://gitlab.com/snippets/1665976

Closes #17815
2017-06-26 10:13:25 +02:00
Odoo Translation Bot ee3a6b6793 [I18N] Update translation terms from Transifex 2017-06-25 04:27:29 +02:00
Martin Trigaux 4755fce915 [I18N] update source terms
Was done poncutally but no global one since the release
2017-06-23 16:34:23 +02:00
Leonardo Rochael Almeida bbc47177ce [IMP] base: drop unused onchange_state
It calls `onchange_state()` on `res.partner` which was removed on
(24aba60).

It was added to `res.users` long ago (009ea40) to support a `state_id`
field on the view `res.users.simplified.form` that is no longer there
since v8.0.

The method is then never called and was crashing if called.

Closes #17772
2017-06-23 10:12:48 +02:00
Fabien Pinckaers 0aea445e3e [FIX] base: avoid crashing if no internet connection 2017-06-22 21:54:30 -07:00
George Daramouskas 063ee0751b [FIX] base/ir_ui_view: Raise ValidationError when creating views without arch/type
Closes #16973

Steps to reproduce:

1) Go to Settings -> Technical -> User Interface -> Views
2) Create a new view and give only name, leave fields View Type and arch_base empty.
3) Exception occures

Current behaviour:
- The user gets an exception with a full stacktrace.
Expected behaviour:
- The user should get a warning
2017-06-22 16:27:20 +02:00
Christophe Simonis 6981320d01 [MERGE] forward port branch saas-11 up to 79dfcde359 2017-06-21 18:28:26 +02:00
Raphael Collet 52e0540506 [FIX] base: attribute domain on fields cannot be None
When instanciating a custom field, make sure the domain is a list.
2017-06-20 14:18:32 +02:00
Prakash Prajapati 8f099d4528 [IMP] base_automation: Improve field labels naming in automated action
Purpose
=======

Some field labels are not very explicit

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

- Rename "Base Model"  into "Model"
- Change "Trigger condition" (Condition Frist char(C) uppercase)
- Rename Domain into  Apply on
2017-06-20 11:19:02 +02:00
Yannick Tivisse e54f70d3cc [IMP] base: Add a test on res_config on page loading and saving
Try to create and execute all res_config models. Target settings that can't be
loaded or saved and avoid remaining methods `get_default_foo` or `set_foo` that
won't be executed is foo != `fields`
2017-06-19 17:37:38 +02:00
Yannick Tivisse 100f320217 [REF] base/res_config: Deprecate get_default_foo and set_foo
Currently, all the methods that start with `get_default_` and `set_` are called on a res.config.settings loading or saving.

This commit purpose is to replace all the occurences of `get_default_foo` and `set_foo`. As these methods won't be called anymore, a warning is logged to notice its deprecation.

The generic method `get_default_fields` and `set_fields` could be improved too. The method names and API are not so good:

    Why "default" fields? What you ask for is the current value of the stuff, shown as fields in the model. The values are fed as default values in the wizard, but that's an implementation trick.
    Why "fields"? What you ask for are configuration parameters, and such things.
    Why passing a list of fields? Its value is never used.

We should further simplify the API of both methods to something like

def get_values(self):
    return {}

def set_values(self):
    pass
2017-06-19 17:37:38 +02:00
Yannick Tivisse 56feb8dd16 [IMP] base: Load actions todo on button_immediate_install 2017-06-19 17:37:38 +02:00
Yannick Tivisse 1196409a9f [IMP] base: Stay on a config view after save 2017-06-19 17:37:38 +02:00
Yannick Tivisse 75c9248f90 [IMP] base: Remove seemingly unused wizard 2017-06-19 17:37:38 +02:00
Yannick Tivisse d1fc62df0b [IMP] base: Prevent to have more than one open ir.actions.todo 2017-06-19 17:37:38 +02:00
Yannick Tivisse 2132178f1f [REF] base: Remove some fields on ir.actions.todo
All our ir.actions.todo records are automatic.
2017-06-19 17:37:38 +02:00