-
-
Notifications
You must be signed in to change notification settings - Fork 54
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
v7.0.0 #110
base: master
Are you sure you want to change the base?
Conversation
…, stuck on clang-15.
…reased significantly over the years.
Run release workflow when github releases are published. Run tests only once when pushed into a PR.
For certain benchmarks, especially those that are string-heavy, this version is now roughly 45% faster.
|
I am using
The contents under With the new changes you destroy this feature. Now I propose
But this still requires one to know the full path. I am also using
First of all, the drop-in functionality of read-only P.S. |
Thanks for the feedback @edgarsi, appreciate it.
This PR won't be merged until it's back to feature parity with v5. The Array and Object interfaces have to disappear for memory safety. While there are a bunch of ways to make it "safe", they come at a severe performance penalty for small documents. They also tended to be used to access more than a key or two, which is often slower than just getting the entire object.
Most of the methods on
1 JSON Document will return 1
This was already fixed locally. |
This is a major breaking change release that removes Array and Object proxies. However, after checking all GitHub repos that have this one as a dependency with > 5 stars, only 2 were using these features. They were generally an anti-pattern - if you needed 1 value, use
at_pointer()
instead. If you needed more than 1 value, it was almost always faster to useat_pointer()
for an entire object at once. This new approach also alleviates memory management issues on PyPy.If all you used was simdjson.loads() and simdjson.parse(), you should notice no difference.
.0
(see Float aware mini #102)ToDo: