Comments (6)
If it compiled with the node v0.10, then there is no error
from i-json.
if compiled OK and then run under the node v.0.12 it's allright
from i-json.
This is the expected behavior. I can improve it by having an install script that deploys binaries in bin/os-arch-v8-version subdirectories.
from i-json.
@bjouhier hey, thanks for this!!! I got ~20M monthly users, desperately needing to reduce JSON parse blocking time, looking into this.
I can't get it to install at all on my mac (some complaint about xcode, ugh) due to the node-gyp part failing, but this means npm doesn't finish the install for even the remaining JS version!
Any chance you'd be willing to move the node-gyp part to an optional section? (would post-install work?) so that way at least the JS version is available?
Also, I want to say I'm really impressed, and want to commend you for working on this.
Unless I did my research wrong (multiple days), there are barely any proper async (as in CPU partitioning) JSON parsers out there, despite the fact this seems like an obvious thing every website in the world would have needed for at least a decade+! This boggles my mind. Am I missing something? Would you still recommend in 2020 that i-json is the best option? The only other (proper) async (CPU partitioning) option I noticed was something from IBM (tho it was open source). The whole "streaming" JSON libraries are infinitely popular but seem to miss the important boat by being synchronous or feature bloat. Seems like i-json is literally the only option unless I hand roll (really don't want to, but hey, I had to write a CPU scheduler in JS the other day... so...), any tips or latest thoughts/updates for 2020?
from i-json.
@amark I haven't worked on this package for a while. It works on mac with node 10 but got broken by node 12 C++ API changes.
I won't have time to work on it this week but maybe next week-end. In the mean time you may be able the just extrace the parser.js source.
I don't know if there is an easy way to make the node-gyp part optional. The node-gyp compilation is somewhat built into npm install
but maybe there is a way to control it (haven't investigated yet). If you find a way let me know and I can publish a fix.
from i-json.
@bjouhier no worries, and thanks for the reply.
There was a few other changes I wanted outside the scope of ijson, so I did wind up writing my own custom parser.
I had already made some edits to ijson, such as fixing new Buffer
warnings, to Buffer.from(
etc., made that a PR in case it is helpful to you (no worries accepting/rejecting).
Would it be OK if I stole your tests tho? How thorough are the escape sequences / edge cases? I haven't done much research on this front. Are there an exhaustive set of edge cases that you already have researched/tested? Or more/others to be added?
Thanks again for your work! :)
from i-json.
Related Issues (8)
- Is this project is still active? HOT 2
- Materialization of individual properties HOT 1
- Two different files, two different parse errors. HOT 3
- build error HOT 4
- Add the option for ignoring the __proto__ property HOT 7
- Appears to throw for both programmer and operational errors HOT 2
- parser is incorrect HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from i-json.