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

[IMP] stores: add resetStores method #3863

Closed
wants to merge 1 commit into from

Conversation

hokolomopo
Copy link
Contributor

@hokolomopo hokolomopo commented Mar 20, 2024

Description

Once the DependencyContainer was created and stores were injected, there was no way to remove them. It was a problem for the import of xlsx in Demo, because we created a new model and we'd want to inject a new ModelStore and re-create all the stores that had a reference to the old model.

This commit creates a resetStores method in the DependencyContainer that removes all the stores. Note that references to the old stores are not removed, so we need to destroy all the components that may use store to not end up in an incorrect state.

review checklist

  • feature is organized in plugin, or UI components
  • support of duplicate sheet (deep copy)
  • in model/core: ranges are Range object, and can be adapted (adaptRanges)
  • in model/UI: ranges are strings (to show the user)
  • undo-able commands (uses this.history.update)
  • multiuser-able commands (has inverse commands and transformations where needed)
  • new/updated/removed commands are documented
  • exportable in excel
  • translations (_t("qmsdf %s", abc))
  • unit tested
  • clean commented code
  • track breaking changes
  • doc is rebuild (npm run doc)
  • status is correct in Odoo

Once the `DependencyContainer` was created and stores were injected,
there was no way to remove them. It was a problem for the import of
xlsx in Demo, because we created a new model and we'd want to
inject a new ModelStore and re-create all the stores that had a
reference to the old model.

This commit creates a `resetStores` method in the `DependencyContainer`
that removes all the stores. Note that references to the old stores
are not removed, so we need to destroy all the components that may
use store to not end up in an incorrect state.
@robodoo
Copy link
Collaborator

robodoo commented Mar 20, 2024

@hokolomopo hokolomopo force-pushed the saas-17.2-fix-demo-xlsx-import-adrm branch from b48e046 to 497218d Compare March 20, 2024 09:53
Copy link
Collaborator

@LucasLefevre LucasLefevre left a comment

Choose a reason for hiding this comment

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

maybe find a better solution later, but it's blocking some of us right now.
robodoo r+

@robodoo
Copy link
Collaborator

robodoo commented Mar 20, 2024

@hokolomopo @LucasLefevre staging failed: timed out (>50 minutes)

@VincentSchippefilt
Copy link
Collaborator

robodoo retry

robodoo pushed a commit that referenced this pull request Mar 21, 2024
Once the `DependencyContainer` was created and stores were injected,
there was no way to remove them. It was a problem for the import of
xlsx in Demo, because we created a new model and we'd want to
inject a new ModelStore and re-create all the stores that had a
reference to the old model.

This commit creates a `resetStores` method in the `DependencyContainer`
that removes all the stores. Note that references to the old stores
are not removed, so we need to destroy all the components that may
use store to not end up in an incorrect state.

closes #3863

Signed-off-by: Lucas Lefèvre (lul) <lul@odoo.com>
@robodoo robodoo closed this Mar 21, 2024
@fw-bot fw-bot deleted the saas-17.2-fix-demo-xlsx-import-adrm branch April 4, 2024 15:46
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.

None yet

4 participants