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

Refactor options and add MaxArraySize constraint #923

Merged
merged 1 commit into from Sep 10, 2021

Conversation

lahma
Copy link
Collaborator

@lahma lahma commented Jul 8, 2021

  • introduce public options object that has sub-categories for interop, debugger, constraints - and API documented
  • move fluent configuration to extension methods to keep model clean
  • add array size constraint that allows limiting the size of created arrays
  • don't switch to dictionary based arrays too eagerly, there's a large performance penalty
  • move constraint related tests to own class

fixes #917
fixes #887
fixes #683

@lahma
Copy link
Collaborator Author

lahma commented Jul 8, 2021

While implementing came up with couple questions, should this be MaxCollectionSize and enforce to other collection types too later (typed array, map, set?) and whether Options should be renamed to JintOptions, maybe easier story for disambiguating but a breaking change.

@lahma
Copy link
Collaborator Author

lahma commented Aug 11, 2021

@sebastienros please take a look.

@lahma
Copy link
Collaborator Author

lahma commented Aug 26, 2021

@sebastienros any input?

@ByronAP
Copy link

ByronAP commented Sep 9, 2021

Bump requesting this get resolved

@lahma lahma merged commit f5571d0 into sebastienros:main Sep 10, 2021
@lahma lahma deleted the refactor-options branch September 10, 2021 02:20
@lahma
Copy link
Collaborator Author

lahma commented Sep 10, 2021

Let's refine in later pull requests if needed, the groundwork is now done.

@sebastienros
Copy link
Owner

Can I still approve?

@lahma
Copy link
Collaborator Author

lahma commented Sep 10, 2021

Thanks for the gesture 😄 You can still also list improvement ideas though!

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