Paul Dreik
1d9926698e
update how boost.json is invoked, fix missing separators ( #1203 )
...
* initial try at adding boost json to the benchmark
* clean up
* qualify memcpy etc. with std::
* clang format
* extra space
* update benchmark with help from Vinnie Falco from Boost.json
* add missing separators
2020-10-09 18:22:37 -04:00
Daniel Lemire
b04f64e02c
Simplifying slightly the logic in the cmake ( #1219 )
2020-10-09 18:10:58 -04:00
Daniel Lemire
c6d710b14b
Merge branch 'master' of github.com:simdjson/simdjson
2020-10-09 16:46:51 -04:00
Daniel Lemire
2e07850622
Updating cxxopts to latest.
2020-10-09 16:46:30 -04:00
Daniel Lemire
1b6888281e
Update README.md
2020-10-09 10:54:48 -04:00
Daniel Lemire
ce94411dff
Tweaking the documentation to better answer https://github.com/simdjson/simdjson/issues/1218
2020-10-09 10:02:56 -04:00
Paul Dreik
58a3098cd8
fix broken fuzzing github action job ( #1221 )
2020-10-09 12:44:17 +02:00
Paul Dreik
8a68163905
simplify fuzzing only dynamically supported implementations ( #1201 )
...
This refactors the dynamic check of which implementations are supported at runtime.
It also reduces duplicated effort in the CI fuzzing job, the differential fuzzers don't need to run with different values of SIMDJSON_FORCE_IMPLEMENTATION.
There is also a convenience script to run the fuzzers locally, to quickly check that the fuzzers still build, run and no easy to find bugs are there. It should be handy not only when developing the fuzzers, but also when modifying simdjson.
2020-10-09 05:29:54 +02:00
Paul Dreik
1f98e64b71
fix merge conflict on master ( #1217 )
2020-10-07 10:05:31 +02:00
John Keiser
a9480a768b
Merge pull request #947 from simdjson/jkeiser/stream-parse
...
On-Demand Parsing
2020-10-06 16:04:27 -07:00
John Keiser
ed94514fc2
Remove ondemand_basictests from Win32 for now
2020-10-06 14:38:28 -07:00
Daniel Lemire
1f41cc2030
Making it clearer that parse_many is meant for *small* documents. ( #1205 )
...
* Making it clearer that parse_many is meant for *small* documents.
* Update parse_many.md
2020-10-06 17:19:34 -04:00
John Keiser
6455ec36ec
Reamalgamate
2020-10-06 11:29:46 -07:00
John Keiser
676a3d068c
Add non-top-level array iteration test
2020-10-06 11:29:46 -07:00
John Keiser
5533f8d87b
Add object iteration error tests
2020-10-06 11:29:46 -07:00
John Keiser
93af7b61ce
Add array iteration error tests
2020-10-06 11:29:46 -07:00
John Keiser
364ad5529d
Add basic error tests
2020-10-06 11:29:46 -07:00
John Keiser
1974a46fe0
Remove validate tests and unimplemented cast tests from ondemand
2020-10-06 11:29:46 -07:00
John Keiser
5327ab9903
Remove ondemand minify and format tests
2020-10-06 11:29:46 -07:00
John Keiser
235d191bae
Add Twitter exception tests
2020-10-06 11:29:46 -07:00
John Keiser
4eb80ec75a
Add DOM API exception tests
2020-10-06 11:29:45 -07:00
John Keiser
2900459222
Separate twitter tests from DOM API tests
2020-10-06 11:29:45 -07:00
John Keiser
9088792b0e
Disable value["x"] (unsafe, convert to object first)
2020-10-06 11:29:45 -07:00
John Keiser
b41fe7beab
Add object indexing tests
2020-10-06 11:29:45 -07:00
John Keiser
00f9bb8a07
Add null tests
2020-10-06 11:29:45 -07:00
John Keiser
a90e1637cb
Add boolean tests
2020-10-06 11:29:45 -07:00
John Keiser
4bad5c0241
Add numeric value tests
2020-10-06 11:29:45 -07:00
John Keiser
ce09d82fc7
Test strings
2020-10-06 11:29:45 -07:00
John Keiser
5b926b8196
Support array iteration over document
2020-10-06 11:29:45 -07:00
John Keiser
c719ccdb48
Add tests for empty object/array
2020-10-06 11:29:45 -07:00
John Keiser
9f1786aeb1
Add .get(T) to value/document
2020-10-06 11:29:45 -07:00
John Keiser
0bb83e06bc
Fix root number parsing
2020-10-06 11:29:45 -07:00
John Keiser
2ba67c2bc2
[WIP] && and & versions of each operator
2020-10-06 11:29:45 -07:00
John Keiser
cae91983ec
Fix issue with early destruction
2020-10-06 11:29:45 -07:00
John Keiser
3190ef0c1f
Check benchmark results in release builds
2020-10-06 11:29:45 -07:00
John Keiser
c7c1372833
Allow reuse of value to try multiple types
2020-10-06 11:29:45 -07:00
John Keiser
ba02cda55f
Allow direct document iteration
2020-10-06 11:29:45 -07:00
John Keiser
512a94afaa
Move error to json_iterator
2020-10-06 11:29:45 -07:00
John Keiser
6d978c383a
Kinder, gentler implementation selection
...
- Allow user to specify SIMDJSON_BUILTIN_IMPLEMENTATION
- Make cmake -DSIMDJSON_IMPLEMENTATION=haswell *only* specify haswell
- Move negative implementation selection to
-DSIMDJSON_EXCLUDE_IMPLEMENTATION
- Automatically select SIMDJSON_BUILTIN_IMPLEMENTATION if
SIMDJSON_IMPLEMENTATION is set
- Move implementation enablement mostly to implementation files
- Make implementation enablement and selection simpler and more robust
- Fix bug where programs linked against simdjson were not passed
SIMDJSON_XXX_IMPLEMENTATION or SIMDJSON_EXCEPTIONS
2020-10-06 11:29:45 -07:00
John Keiser
938678f87f
Complete draft design doc
2020-10-06 11:29:45 -07:00
John Keiser
9dcf5fca5b
Add ondemand rationale to beginning of document
2020-10-06 11:29:45 -07:00
John Keiser
88f0dc4726
Add API docs, ensure parser and field methods called with &
2020-10-06 11:29:45 -07:00
John Keiser
8ae7910aba
Namespace documentation
2020-10-06 11:29:45 -07:00
John Keiser
b70e85fd10
Only include source in bench_sax
2020-10-06 11:29:45 -07:00
John Keiser
99bc591366
Don't enable fallback test unless fallback is explicitly selected
2020-10-06 11:29:45 -07:00
John Keiser
f4963cd1c5
Ensure CI builds all tested implementations
2020-10-06 11:29:45 -07:00
John Keiser
4859cb8528
Add SIMDJSON_ONDEMAND_SAFETY_RAILS
2020-10-06 11:29:45 -07:00
John Keiser
c42b91980b
Fix VC++ forward friend declarations
2020-10-06 11:29:45 -07:00
John Keiser
8b3c8820e0
Fix numberparsingcheck to define found_invalid_number before simdjson.h
2020-10-06 11:29:39 -07:00
John Keiser
29bc78a486
Add ondemand to arm64/fallback/westmere
2020-10-04 12:47:30 -07:00