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

fix: make setItems and getItems work with prefixStorage #455

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

AQian-Cup
Copy link

πŸ”— Linked issue

fix #396

❓ Type of change

  • πŸ“– Documentation (updates to the documentation, readme, or JSdoc annotations)
  • 🐞 Bug fix (a non-breaking change that fixes an issue)
  • πŸ‘Œ Enhancement (improving an existing functionality like performance)
  • ✨ New feature (a non-breaking change that adds functionality)
  • 🧹 Chore (updates to the build process or auxiliary tools and libraries)
  • ⚠️ Breaking change (fix or feature that would cause existing functionality to change)

πŸ“š Description

When using setItems and getItems, prefixStorage can't handle base and key splice properly. storageKeyProperties doesn't contain setItems and getItems, and the original processing doesn't support passing parameters as arrays.

I added a regular expression to determine what type the current storageKey should be, and when it meets the condition, it will use traversal to splice the base and key together. The regular expression is now set to /(set|get)\w+s/, which I think should be backward compatible with APIs that conform to the naming convention, and since this processing is performed during traversal, it can be overridden later if the developer isn't happy with the established processing.

πŸ“ Checklist

  • I have linked an issue or discussion.
  • I have updated the documentation accordingly.

@pi0
Copy link
Member

pi0 commented Sep 4, 2024

Thanks for PR dear @AQian-Cup. However it is the right fix, it also changes behavior that can potentially break projects relying on current wrong behavior, therefore we need to land it as semver-major version.

@pi0 pi0 added breaking bug Something isn't working labels Sep 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

getItems does not work with prefixStorage
2 participants