Daniel Lemire
ff77ac801e
Additional documentation based on issue 2063 ( #2065 )
...
* Additional documentation based on issue 2063
* Update basics.md
2023-09-11 10:01:35 -04:00
Daniel Lemire
e3bd0828d1
Fix for issue 2045. ( #2046 )
...
* Fix for issue 2045.
* Retauring single-header code.
2023-08-02 16:00:45 -04:00
Daniel Lemire
2934892c0b
Improving documentation. ( #2020 )
...
* Improving documentation.
* Fix typo
* Moving the definition.
* [skip ci] typo
2023-06-20 13:51:53 -04:00
Ng Yong Xiang
b399c0165e
Add comma separated value parsing as an option in iterate_many ( #2016 )
...
* Add comma separated value parsing
* Fix failing tests
* Make tests work for exceptions
* Fix test
* Fix try catch making test fail
---------
Co-authored-by: Yong Xiang Ng <yxng@drwholdings.com >
2023-06-15 09:11:14 -04:00
Daniel Lemire
445ae024ba
fix: bug identified by Yagiz Nizipli ( #2019 )
2023-06-15 09:10:13 -04:00
Daniel Lemire
65f9822542
Adding tests for issue 2017 ( #2018 )
2023-06-07 09:57:28 -04:00
Daniel Lemire
7db3f97ba8
Adding CXX 20 to CI ( #2005 )
...
* Adding CXX 20 to CI
* side-stepping new CXX 20 guard.
* Going another way
* Saving.
* Explicit.
* Saving...
---------
Co-authored-by: Daniel Lemire <dlemire@lemire.me >
2023-05-26 09:23:02 -04:00
Daniel Lemire
6d92563280
Fixing issue 1943 ( #2006 )
...
* Fixing issue 1943
* Tweaking.
2023-05-23 11:15:22 -04:00
Daniel Lemire
0998233d58
More documentation. ( #2007 )
2023-05-23 11:15:07 -04:00
Ng Yong Xiang
e9d5d5088a
Introduce logging levels for conditional logging and log key for NO_SUCH_FIELD error ( #2004 )
...
* Add info and error logging
* Add tests for error logging
* Add logging for missing field
* Update docs for logging usage
* Fix style and pass by ref for string format args
* Make log_level explicit and simplify get log level from env
* Make log level int32_t
* Format enum class
* Fix ci
* Move enum to header
* Fix compilation for noexception build in test case
* Disable warnings and putenv
---------
Co-authored-by: Yong Xiang Ng <yxng@drwholdings.com >
2023-05-22 12:58:55 -04:00
Daniel Lemire
48152a0326
Fix for issue 1981 ( #1982 )
...
* Fix
* Rewording.
* Doing it differently.
2023-04-08 16:11:40 -04:00
Daniel Lemire
b5cf53232c
More documentation.
2023-04-06 10:52:18 -04:00
Daniel Lemire
3c29f40f2f
Trying to verify issue 1979 ( #1980 )
2023-04-04 11:03:37 -04:00
Daniel Lemire
cfd337bb50
This PR adds an 'at_end()' method. ( #1978 )
...
* This PR adds an 'at_end()' method.
* Adding 1111 }
* Tweaking test.
2023-03-30 10:47:13 -04:00
Daniel Lemire
59025bc8b1
Avoiding the issue where doc.get_value().get_object() differs from doc.get_object() in how errors are reported. ( #1975 )
...
* Avoiding the issue where doc.get_value().get_object() differs from doc.get_object() in how errors are reported.
* Minor tweaks
2023-03-24 12:44:18 -04:00
Daniel Lemire
5ad7698af1
...
2023-03-13 17:07:25 -04:00
Daniel Lemire
f6f359d3eb
Very silly.
2023-03-13 17:05:53 -04:00
Daniel Lemire
185e157e0c
Silencing the stupid compiler warnings.
2023-03-13 16:06:10 -04:00
Daniel Lemire
3f3f6cde7c
Bad compiler
2023-03-13 13:33:20 -04:00
Daniel Lemire
005054916d
Bad compiler
2023-03-13 13:02:01 -04:00
Daniel Lemire
338224849d
Disabling memory sanitizer with one function. Might help with issue 1965 ( #1966 )
...
* Might help with issue 1965
* Fix macro
* Adding test.
* Stupid compiler
* Silly compiler
* Stupid compilers
* Unnecessary fixes
* Update developer-options.cmake
2023-03-13 12:34:47 -04:00
Daniel Lemire
7bf33f6c8a
Bad compiler
2023-03-13 12:29:01 -04:00
Daniel Lemire
d62b789cb3
More curly.
2023-03-13 10:49:15 -04:00
Daniel Lemire
33dbd44098
Better way to put -Og in debug mode ( #1967 )
...
* Better way to put -Og in debug mode
* Silly compiler
* Stupid compiler.
* Stupid compiler.
* Silly compiler
2023-03-13 10:11:33 -04:00
Daniel Lemire
4a587cb898
Adding guards.
2023-03-06 16:04:42 -05:00
Daniel Lemire
d65acbd47b
Tuning documentation.
2023-03-02 09:39:35 -05:00
Daniel Lemire
12a1b6db53
This adds some examples to the documentation. ( #1959 )
...
* This adds some examples to the documentation.
* Fix
2023-02-28 22:59:42 -05:00
Daniel Lemire
37e87f6f99
Adding support for wobbly strings to On Demand and lossy trancoding from escaped (with replacement) ( #1947 )
...
* Adding support for wobbly strings.
* Minor tweak.
* Adopt substitution code point.
* Lossy
* Patching
2023-02-28 22:56:44 -05:00
Daniel Lemire
b9234be80f
complete number_in_string for documents, stringify the version macro and improving trailing content errors ( #1934 )
...
* This completes the '*_in_string' support within documents.
* Minor updates.
* Additional fixes.
2023-01-21 15:29:08 -05:00
Daniel Lemire
0a2563e13e
Testing and fixing log issues. ( #1939 )
...
* Testing and fixing log issues.
* Cleaning it a bit.
2023-01-21 15:28:56 -05:00
Daniel Lemire
8a26cb3c8e
Adding a couple of string tests. ( #1935 )
...
* Adding a couple of string tests.
2023-01-05 21:18:54 -05:00
Daniel Lemire
db08d78ed0
Documents better the type method and makes is_null return an error condition in some instances ( #1909 )
2022-10-06 11:47:40 -04:00
Daniel Lemire
b92cbbe280
Fixing issue 1898 ( #1899 )
...
* Fixing issue 1898 Preserve sign for number with underflowing exponent (#1900 )
Before this commit, simdjson parsed "-1e-999" and "-0e-999" and "-1e-342"
as 0.0.
After this commit, those JSON strings get parsed as -0.0.
(https://en.wikipedia.org/wiki/Signed_zero )
The old behavior was inconsistent with the way simdjson parsed "-0.0" as -0.0.
Co-authored-by: Daniel Lemire <daniel@lemire.me >
Co-authored-by: Tyson Andre <tysonandre775@hotmail.com >
2022-10-02 16:25:39 -04:00
Tyson Andre
5809e51ae4
fix: Reject surrogate pairs with invalid low surrogate ( #1896 )
...
Closes #1894
Reject low surrogates outside of the range U+DC00—U+DFFF
Related to https://unicodebook.readthedocs.io/unicode_encodings.html#utf-16-surrogate-pairs
A surrogate pair should consist of a high surrogate and low surrogate.
They're used to represent 0x010000-0x10FFFF in the JSON spec because
the JavaScript specification originally only supported `\uXXXX`.
Previously, simdjson would accept some combinations of valid high
surrogates and invalid low surrogates due to a bug in the check.
(e.g. `\uD888\u1234` was accepted)
U+D800—U+DBFF (1,024 code points): high surrogates
U+DC00—U+DFFF (1,024 code points): low surrogates
2022-09-30 12:13:16 -04:00
Daniel Lemire
fbb46b99e2
Fixes and verifies issue 1878. ( #1880 )
...
* Fixes and verifies issue 1878.
* Changing how NULL is handled.
* Different design.
2022-08-08 22:00:38 -04:00
Daniel Lemire
db3e813aa6
Verifying and fixing issue 1876 ( #1877 )
...
* Verifying and fixing issue 1876
* Typo
2022-07-28 21:45:54 -04:00
Daniel Lemire
40b397a3d4
Fixing issue 1870 ( #1871 )
2022-07-19 15:17:12 -04:00
Daniel Lemire
bd3d67e889
Documenting a specific use case where you need a value if and only if it is another key is not present ( #1865 )
...
* Documenting a specific use case.
* Adding more comments and documentation.
2022-07-09 10:54:28 -04:00
Daniel Lemire
3fde8a4eac
New release candidate ( #1856 )
...
* Patch for possible AVX-512 overflow.
* Updating the test for new padding.
* Preparing new version.
* replace binary integer literals with hex literals for C++11 compatibility (#1855 )
Binary integer literals are a C++14 feature, so those are not supported
in C++11 and should be replaced by hexadecimal literals instead.
Fixes #1854 .
Co-authored-by: Dirk Stolle <striezel-dev@web.de >
2022-07-04 21:54:19 -04:00
Daniel Lemire
1a195623a5
Improve string performance in ondemand by making the string processing runtime dispatched. ( #1849 )
...
* This should improve string performance in ondemand by making the string processing runtime dispatched.
2022-06-24 09:57:16 -04:00
Daniel Lemire
4e1e002cb0
This verifies and fixes issue 1834. ( #1843 )
2022-06-15 13:42:04 -04:00
Daniel Lemire
fbe955e9a4
gcc12 without warnings. ( #1836 )
2022-06-02 22:53:39 -04:00
Daniel Lemire
e8f370b085
Basic AVX-512 implementation (icelake or better) ( #1813 )
...
* Add cascadelake implementation, which use AVX512 Intrinsics to optimize performance(#1811 )
Co-authored-by: mellonyou <fangzheng.zhang@intel.com >
Co-authored-by: wanweiqiangintel <weiqiang.wan@intel.com >
2022-05-25 11:14:02 -04:00
Daniel Lemire
8c1bfe782b
Adds 'current_depth()'. ( #1824 )
2022-05-17 18:06:42 -04:00
Daniel Lemire
b169dc2ea7
Fixing get_number_type() ( #1819 )
2022-05-12 12:15:38 -04:00
Daniel Lemire
c6f9c93c33
Use static variables to enforce initialization order. ( #1773 ) ( #1777 )
...
Fixes https://github.com/simdjson/simdjson/issues/1771
Co-authored-by: Hao Chen <chenhao.yalier@gmail.com >
2022-01-03 15:54:57 -05:00
Daniel Lemire
6db8ceb46c
Verify and fix 1768. ( #1769 )
...
* Verify and fix 1768.
* Breaking down the namespaces for C++11 compilers.
2021-12-21 15:12:38 -05:00
N. Kolotov
7e1893db42
Added SIMDJSON_ prefix to STRINGIFY and to NO_SANITIZE_UNDEFINED macros. ( #1766 )
2021-12-21 09:53:06 -05:00
epoll-reactor
69ee84973a
Fix some typos in source files. ( #1761 )
...
Co-authored-by: epoll-reactor <>
2021-12-06 16:56:15 -05:00
Daniel Lemire
1b01969bda
Adding tests for issue 1745. ( #1746 )
...
* Adding tests for issue 1745.
* Tweaking the documentation so that it is clearer.
2021-11-03 10:12:18 -04:00