-
-
Notifications
You must be signed in to change notification settings - Fork 209
Improve performance for const schemas #511
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
Merged
Merged
Changes from 11 commits
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
68ff81c
Improved performance for const schema
DanieleFedeli dbd3395
Merge branch 'master' of github.com:DanieleFedeli/fast-json-stringify
DanieleFedeli 5fa6e25
Improve const object schema performance
DanieleFedeli ca55edf
Improve string and object performance
DanieleFedeli b2ce4d5
Remove unwanted validation for 'const' properties
DanieleFedeli 05c92cf
Restored example file
DanieleFedeli f73da5a
Changed findIndex with indexOf
DanieleFedeli e2c3bd6
Removed useless inference when schema is const
DanieleFedeli ca1357d
Review requests
DanieleFedeli 844eba5
Rebase to #510 (use hasOwnProperty from Object.prototype)
DanieleFedeli 49301dc
Use isRequired when available
DanieleFedeli 0eb362a
Restored FJS format style
DanieleFedeli b80bc4a
Restore FJS format style
DanieleFedeli 3879db9
Added support for nullable / type: [..., 'null']
DanieleFedeli File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
This should work in a different way.
fast-json-stringify/index.js
Line 365 in 844eba5
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.
Null checks you mean this?
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.
To answer 2.
If I don't have that checks how can I handle this?
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.
I think that the const value shouldn't work as a default value. It shouldn't have any other additional behavior.
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.
I am OK with that, but I remember that someone agrees on this comment.
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.
Yes, you are right, it should. From my point of view. But let's wait for other opinions.
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.
If you are waiting for me, I'm leaving this to you.
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.
I would like to hear @climba03003 opinion as it was his suggestion #505 (comment).
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.
When the schema said the property is required, and missing one from the input.
It just convenient to always put the value there since it is
required
.Just like why we always put the
const
value regardless the input.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.
I do not block if it turns to throw.
It consistences with the current
required
handling for other properties.