-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[18.0][MIG] web_m2x_options #2961
base: 18.0
Are you sure you want to change the base?
Conversation
/ocabot migration web_m2x_options |
} | ||
} | ||
}, | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for opening the PR!
I notice that O.W.L. throws a blocking Error once you install some module that can benefit from this OCA module (such as sale_management
) and you enter developer mode. It's because v18's dev mode now validates the object that is added to the registry and notices that the functions below aren't declared in the schema. I'd propose to either incorporate the functions inside extractProps
(which is declared in the schema) or to extend the validationSchema
as described below (and add an import {registry} from "@web/core/registry";
).
(If someone has a better suggestion, I encourage you to correct me, though.)
The error unfortunately also occurs in the PR of @chaule97. If you incorporate their changes, keep in mind that they renamed the functions to JS standard.
}); | |
}); | |
// O.W.L. v18+: schema is validated in dev mode on adding to registry | |
patch(registry.category("fields").validationSchema, { | |
m2o_options_props_create: { type: Function, optional: true }, | |
m2o_options_props_create_edit: { type: Function, optional: true }, | |
m2o_options_props_limit: { type: Function, optional: true }, | |
m2o_options_props_search_more: { type: Function, optional: true }, | |
m2o_options_props_open: { type: Function, optional: true }, | |
m2o_options_props: { type: Function, optional: true }, | |
m2m_options_props_create: { type: Function, optional: true }, | |
m2m_options_props_create_edit: { type: Function, optional: true }, | |
m2m_options_props_limit: { type: Function, optional: true }, | |
m2m_options_props_search_more: { type: Function, optional: true }, | |
m2m_options_props: { type: Function, optional: true }, | |
}); |
0e4db6b
to
507e357
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested all supported system parameters.
Entering developer mode doesn't result in O.W.L. errors anymore.
LGTM
Please squash all your migration commits. |
- Add static/description/index.html fix: use include instead of extend in js function inheritance. fix: not overwriting the existing object references with the result of the include fix: update name according to new module name. fix: error when displaying many2many field without options defined.
[ADD] support 'no_open_edit' on many2one [FIX] typos
…and make the module installable [MIG] adapt form.js to the new API. [FIX] Fix bug mentioned in pull OCA#262. [MIG] Make the module installable.
…th `options={'open': True}` it always open the first element with this fix it will open the right one
* [FIX][web_m2x_options] Fix Qweb templates. They were trying to replace non-existing elements, and this was being logged to console: Can't find "a.oe_m2o_cm_button" when extending template FieldMany2One Can't find "span.badge" when extending template FieldMany2ManyTag * Raise version correctly. * [FIX] Make many2many_tags tag deletion work again * Correct replacement of event Instead of overwriting all events from upstream widget, better just overwrite the one you need and inherit the rest.
* fix unecessary calls Do check_access_rights and disable_quick_create calls only once per field.
…ser does not have creation permission.
`web_m2x_options` is supposed to render fields in the context of a form or tree view, where domains can safely be applied because there's a main record that includes a context. However, when installing along with `web_advanced_search_x2x`, they produce an incompatibility when a x2x field's domain is defined and depends on the current record's context, because a search view has no notion of a *current record*. The fix is simple: try to do as usual, and if it fails, try without the field's domain. Without this patch, an exception like this would be raised, i.e. when both addons are installed and you are trying to search project tasks by stage: ``` Error: NameError: name 'project_id' is not defined http://localhost/web/static/lib/py.js/lib/py.js:370# Traceback:# Changes to be committed: PY_ensurepy@http://localhost/web/static/lib/py.js/lib/py.js:370:19# modified: static/src/js/form.js py.evaluate@http://localhost/web/static/lib/py.js/lib/py.js:1340:20# py.evaluate@http://localhost/web/static/lib/py.js/lib/py.js:1397:35 py.evaluate@http://localhost/web/static/lib/py.js/lib/py.js:1409:34 py.eval@http://localhost/web/static/lib/py.js/lib/py.js:1453:16 eval_domains/<@http://localhost/web/static/src/js/framework/pyeval.js:869:39 _.forEach@http://localhost/web/static/lib/underscore/underscore.js:145:9 _.mixin/</_.prototype[name]@http://localhost/web/static/lib/underscore/underscore.js:1484:29 eval_domains@http://localhost/web/static/src/js/framework/pyeval.js:860:5 eval_domains/<@http://localhost/web/static/src/js/framework/pyeval.js:873:39 _.forEach@http://localhost/web/static/lib/underscore/underscore.js:145:9 _.mixin/</_.prototype[name]@http://localhost/web/static/lib/underscore/underscore.js:1484:29 eval_domains@http://localhost/web/static/src/js/framework/pyeval.js:860:5 eval_domains/<@http://localhost/web/static/src/js/framework/pyeval.js:873:39 _.forEach@http://localhost/web/static/lib/underscore/underscore.js:145:9 _.mixin/</_.prototype[name]@http://localhost/web/static/lib/underscore/underscore.js:1484:29 eval_domains@http://localhost/web/static/src/js/framework/pyeval.js:860:5 pyeval@http://localhost/web/static/src/js/framework/pyeval.js:977:16 eval_arg@http://localhost/web/static/src/js/framework/pyeval.js:988:16 ensure_evaluated@http://localhost/web/static/src/js/framework/pyeval.js:1011:21 call@http://localhost/web/static/src/js/framework/data_model.js:56:9 name_search@http://localhost/web/static/src/js/framework/data.js:537:16 get_search_result@http://localhost/web_m2x_options/static/src/js/form.js:130:50 OdooClass.extend/Class.include/</prototype[name]</<@http://localhost/web/static/src/js/framework/class.js:122:35 source@http://localhost/web/static/src/js/views/form_relational_widgets.js:271:17 _search@http://localhost/web/static/lib/jquery.ui/jquery-ui.js:6823:3 $.widget/</proxiedPrototype[prop]</<@http://localhost/web/static/lib/jquery.ui/jquery-ui.js:415:19 search@http://localhost/web/static/lib/jquery.ui/jquery-ui.js:6815:10 $.widget/</proxiedPrototype[prop]</<@http://localhost/web/static/lib/jquery.ui/jquery-ui.js:415:19 $.widget.bridge/$.fn[name]/<@http://localhost/web/static/lib/jquery.ui/jquery-ui.js:508:19 each@http://localhost/web/static/lib/jquery/jquery.js:383:49 each@http://localhost/web/static/lib/jquery/jquery.js:136:24 $.widget.bridge/$.fn[name]@http://localhost/web/static/lib/jquery.ui/jquery-ui.js:494:4 render_editable/<@http://localhost/web/static/src/js/views/form_relational_widgets.js:189:21 dispatch@http://localhost/web/static/lib/jquery/jquery.js:4640:50 add/elemData.handle@http://localhost/web/static/lib/jquery/jquery.js:4309:41 ```
web_m2x_options: Fix usage for non-admins web_m2x_options: Reduce rpc calls web_m2x_options: Update manifest and readme
Currently translated at 91.7% (11 of 12 strings) Translation: web-11.0/web-11.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_m2x_options/pt_BR/
Instead of calling interactively to the server to get the options, they are stored at the beginning of the session.
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/
Currently translated at 100.0% (15 of 15 strings) Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/es/
JS Issue: OwlError: Invalid props for component 'FieldMany2OneMailingFilter': unknown key 'searchMore', unknown key 'nodeOptions' at Object.validateProps (https://odoo.simplyfeu.com/web/assets/1913698-b61fd5b/web.assets_common.min.js:1698:67) at Field.template (eval at compile (https://odoo.simplyfeu.com/web/assets/1913698-b61fd5b/web.assets_common.min.js:2057:374), <anonymous>:17:13) at Fiber._render (https://odoo.simplyfeu.com/web/assets/1913698-b61fd5b/web.assets_common.min.js:1496:96) at Fiber.render (https://odoo.simplyfeu.com/web/assets/1913698-b61fd5b/web.assets_common.min.js:1495:6) at ComponentNode.initiateRender (https://odoo.simplyfeu.com/web/assets/1913698-b61fd5b/web.assets_common.min.js:1563:47)
Currently translated at 100.0% (15 of 15 strings) Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/it/
Currently translated at 100.0% (15 of 15 strings) Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/it/
Currently translated at 40.0% (6 of 15 strings) Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/fr/
Currently translated at 53.3% (8 of 15 strings) Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/fr/
Currently translated at 100.0% (15 of 15 strings) Translation: web-16.0/web-16.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-16-0/web-16-0-web_m2x_options/pt_BR/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: web-17.0/web-17.0-web_m2x_options Translate-URL: https://translation.odoo-community.org/projects/web-17-0/web-17-0-web_m2x_options/
…KanbanMany2OneAvatarUserField
… and Many2ManyTagsAvatarField
…sAvatarField ListMany2ManyTagsAvatarField already extends from Many2ManyTagsAvatarField
507e357
to
21fbaa1
Compare
Done. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On v16, the system parameters allowed to put were false
, False
or 0
for deactivating an option. Now, only False
is accepted.
Please restore the other options for fully compatibility. It seems this was lost on 17.0 migration, but still we need it, and it should be added on both versions. If you put it on a separate commit, it can be backported.
No description provided.