-
Notifications
You must be signed in to change notification settings - Fork 242
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
Use consistent element order in pretty.write #293
Merged
Merged
Conversation
This file contains 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
Having consistent output makes it easier to use it for test purposes, such as when dumping tables and comparing it to some expected output.
@hth313 would you mind fixing the tests? |
Previous commit did not emit numeric table entries for tables that had mixed numeric and non-numeric keys.
1 similar comment
thank you |
No problem, it was a good test and it spotted a problem in my change. |
netbsd-srcmastr
pushed a commit
to NetBSD/pkgsrc
that referenced
this pull request
Feb 15, 2020
## 1.7.0 (2019-10-14) ### New features - `utils.quote_arg` will now optionally take an array of arguments and escape them all into a single string. - `app.parse_args` now accepts a 3rd parameter with a list of valid flags and aliasses - `app.script_name` returns the name of the current script (previously a private function) ### Changes - Documentation updates - `utils.quit`: exit message is no longer required, and closes the Lua state (on 5.2+). - `utils.assert_arg` and `utils.assert_string`: now return the validated value - `pl.compat`: now exports the `jit` and `jit52` flags - `pretty.write`: now sorts the output for easier diffs [#293](lunarmodules/Penlight#293) ### Fixes - `utils.raise` changed the global `on_error`-level when passing in bad arguments - `utils.writefile` now checks and returns errors when writing - `compat.execute` now handles the Windows exitcode -1 properly - `types.is_empty` would return true on spaces always, indepedent of the parameter - `types.to_bool` will now compare case-insensitive for the extra passed strings - `app.require_here` will now properly handle an absolute base path - `stringx.split` will no longer append an empty match if the number of requested elements has already been reached [#295](lunarmodules/Penlight#295) - `path.common_prefix` and `path.relpath` return the result in the original casing (only impacted Windows) [#297](lunarmodules/Penlight#297) - `dir.copyfile`, `dir.movefile`, and `dir.makepath` create the new file/path with the requested casing, and no longer force lowercase (only impacted Windows) [#297](lunarmodules/Penlight#297) - added a missing assertion on `path.getmtime` [#291](lunarmodules/Penlight#291) - `stringx.rpartition` returned bad results on a not-found [#299](lunarmodules/Penlight#299) ## 1.6.0 (2018-11-23) ### New features - `pl.compat` now provides `unpack` as `table.unpack` on Lua 5.1 ### Changes - `utils.unpack` is now documented and respects `.n` field of its argument. - `tablex.deepcopy` and `tablex.deepcompare` are now cycle aware (#262) - Installing through LuaRocks will now include the full rendered documentation ### Fixes - Fixed `seq.last` returning `nil` instead of an empty list when given an empty iterator (#253). - `pl.template` now applies `tostring` when substituting values in templates, avoiding errors when they are not strings or numbers (#256). - Fixed `pl.import_into` not importing some Penlight modules (#268). - Fixed version number stuck at 1.5.2 (#260). - Fixed `types.is_empty` returning `true` on tables containing `false` key (#267). - Fixed `test.assertraise` throwing an error when passed an array with a function to call plus its arguments (#272). - Fixed `test.assertraise` not throwing an error when given function does not error but instead returns a string matching given error pattern. - Fixed placeholder expressions being evaluated with wrong precedence of binary and unary negation. - Fixed placeholder expressions being evaluated assuming wrong binary operator associativity (e.g. `_1-(_2+_3)` was evaluated as `(_1-_2)+_3`. - Fixed placeholder expressions being evaluated as if unary operators take precedence over power operator (e.g. `(-_1)^_2`) was evaluated as `-(_1^2)`). - Fixed vulnerable backtracking pattern in `pl.stringx.strip` (#275)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Having consistent output makes it easier to use it for test purposes,
such as when dumping tables and comparing it to some expected output.