Closed knapply closed 4 years ago
Nothing actually requires it and I should've done it separately.
Initially it was another sanity check that everything not only works, but works with the updates upstream... and then I left it in.
I have vectorized (in the R sense) versions to parse multiple strings and multiple files ready to go to maximize the parser efficiency (instead of creating a new one over and over w/ lapply()
), but it seems something went funky with reusing the parser to read files. I reproduced and opened a simdjson issue here: https://github.com/simdjson/simdjson/issues/938.
It should've done the sync separately. That's 100% my bad.
It should've done the sync separately. That's 100% my bad.
Stuff happens. Do you just want to drop another commit on top and restore two two files?
Yes, I'll get it sorted ASAP.
Sounds good, and no need to rush.
The upstream issue has been reproduced. It should be "easy" to fix. :-) We will fix it before release 0.4 (which is coming soon).
cc @jkeiser
@lemire Your response time is amazing. We all really appreciate it.
@eddelbuettel The previous file versions have been restored and vectorized versions of .deserialize_json()
and .load_json()
with tests/docs are in.
I'll merge. It is still only from your branch off a fork of this into a branch here so we do need another pass anyway before any of this becomes "real".
Many refinements following some real-world usage:
int64_t
todouble
casting bugenum
s,constexpr
functions, exception options) used in multiple places.load_json()
function to read JSON files.deserialize_json()
Fingers crossed, but I feel more confident this is sustainable.
Last thoughts:
inst/include/RcppSimdJson/common.hpp
), butR CMD check
is passing for both cases..load_many()
/.parse_many()
by now, but they're going to take some more thought.