Skip to content
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][base_export_manager] Migration to 18.0 #969

Open
wants to merge 40 commits into
base: 18.0
Choose a base branch
from

Conversation

BT-crodriguez
Copy link

No description provided.

pedrobaeza and others added 30 commits November 11, 2024 10:53
* Improve UX for base_export_manager.

  - Improve user instructions in README.
  - Require some required fields.
  - Allow to select models from a list.
  - Allow to select up to 3 fields from dynamic lists.
  - Improve translations.
  - More tests.
  - Translate column labels.

  Some methods have been renamed, so version tag is raised to 8.0.2.0.0.

* Make inverse method be called at view time.
* Hardcode constraints in the `create` method instead of using normal ones.

  Depending on the context where the record is created, it gets `resource` or `model_id`. The problem is that Odoo checks constrains before inverses, so constrains would fail always.

  Test added to ensure future versions contemplate all use cases.

* Allow to reorder fields.
* Upgrade base_export_manager to v9
* Rename JS to base_export_manager
* Change osv_memory to transient for model_id domain
* Improve UX for base_export_manager.

  - Improve user instructions in README.
  - Require some required fields.
  - Allow to select models from a list.
  - Allow to select up to 3 fields from dynamic lists.
  - Improve translations.
  - More tests.
  - Translate column labels.

  Some methods have been renamed, so version tag is raised to 8.0.2.0.0.

* Hardcode constraints in the `create` method instead of using normal ones.

  Depending on the context where the record is created, it gets `resource` or `model_id`. The problem is that Odoo checks constrains before inverses, so constrains would fail always.

  Test added to ensure future versions contemplate all use cases.

* Allow to reorder fields.
[FIX][base_export_manager] Fix "Expected singleton" bug.

If you had a field that got translated in more than 1 addon, you'd possibly getto this error:

      File "/opt/odoo/0079_ahk_openerp/oca/base_export_manager/models/ir_exports_line.py", line 105, in _compute_label
        field.name)),
      File "/opt/odoo/common/openerp/v8/openerp/fields.py", line 825, in __get__
        record.ensure_one()
      File "/opt/odoo/common/openerp/v8/openerp/models.py", line 5355, in ensure_one
        raise except_orm("ValueError", "Expected singleton: %s" % self)
    except_orm: ('ValueError', 'Expected singleton: ir.translation(4899, 703976)')

With this patch, now we let Odoo return the translated string by using its
standard method to do so, so we have to care for less.

* Move installation outside a data file.

This makes the whole installation to be able to roll back if something goes
wrong, instead of entering an error loop.

* Include envorionment in its manager.

* Add 4th field

* Move to api.multi, refactoring some stuff.

- Add some comments in complex parts.
- Rename `onchange_name` to `_onchange_name` (guidelines).
- Make `_compute_name`'s try block shorter and easier to understand.

* Allow R/W of name directly in model.

* Update tests to cover new behaviors.
- Remove all possible translation commits
- Aesthetical changes
- Bump version
- Some new standards, such as split readme

Basically, nothing.
Currently translated at 80.0% (20 of 25 strings)

Translation: server-ux-11.0/server-ux-11.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-11-0/server-ux-11-0-base_export_manager/da/
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-12.0/server-ux-12.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-12-0/server-ux-12-0-base_export_manager/pt/
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-12.0/server-ux-12.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-12-0/server-ux-12-0-base_export_manager/zh_CN/
Currently translated at 90.3% (28 of 31 strings)

Translation: server-ux-12.0/server-ux-12.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-12-0/server-ux-12-0-base_export_manager/hr/
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-14.0/server-ux-14.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-14-0/server-ux-14-0-base_export_manager/es/
If not, we are not assigning the label value for the record and we get
a missing cache value error.
WARNING odoo.fields: Redundant default on ir.exports.line.model1_id
syera94 and others added 8 commits November 11, 2024 14:29
Steps to reproduce:

- Create an export profile in any model.
- Login with a user without setting permissions.
- Go to export popup on that model.
- Try to select the saved export profile.

You'll get an access error.

Using sudo for computed/related stuff linked to ir.model,  we avoid
the problem.

TT44721
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-16.0/server-ux-16.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-16-0/server-ux-16-0-base_export_manager/es/
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-16.0/server-ux-16.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-16-0/server-ux-16-0-base_export_manager/it/
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-16.0/server-ux-16.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-16-0/server-ux-16-0-base_export_manager/sv/
Currently translated at 100.0% (31 of 31 strings)

Translation: server-ux-16.0/server-ux-16.0-base_export_manager
Translate-URL: https://translation.odoo-community.org/projects/server-ux-16-0/server-ux-16-0-base_export_manager/pt_BR/
@BT-crodriguez BT-crodriguez mentioned this pull request Nov 11, 2024
17 tasks
@BT-crodriguez
Copy link
Author

@yajo @Tardo Hello, it would be awesome if any of you could do a review for this migration to V18 :D

Tests are failing due to a weird warning, maybe you guys have a clue on why it's happening? Any help is appreciated :)

Copy link

@BT-aleonard BT-aleonard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@@ -57,20 +57,21 @@
/>
<field
name="field2_id"
attrs="{'readonly': [('model2_id', '=', False)]}"
readonly="'model2_id', '=', False"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

readonly="not model2_id"

options="{'no_open': True, 'no_create': True}"
/>
<field
name="field3_id"
attrs="{'readonly': [('model3_id', '=', False)]}"
readonly="'model3_id', '=', False"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

readonly="not model3_id"

options="{'no_open': True, 'no_create': True}"
/>
<field
name="field4_id"
attrs="{'readonly': [('model3_id', '=', False)]}"
readonly="'model4_id', '=', False"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

readonly="not model4_id"

@BT-rmartin
Copy link

@BT-crodriguez Probably the errors were related to my suggestion of changes. Be careful when replacing the attrs in newer versions

- Removing unnecessary rendering of the technical field in the export menu as odoo core already does it
- Fixing JS super call
- Replacing tree for list
- More fixes
@BT-crodriguez
Copy link
Author

@BT-aleonard @BT-rmartin Thanks for the review!

Sadly the warnings are still showing :(

Copy link

@florenciafrigieri2 florenciafrigieri2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Functional review ok!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.