Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
utils-cjson-parse
Advanced tools
Attempts to parse an input string as commented JSON.
$ npm install utils-cjson-parse
var parse = require( 'utils-cjson-parse' );
Attempts to parse an input string
as commented JSON.
var out = parse( '{"beep":"boop"}' );
// returns {'beep':'boop'}
out = parse( '{beep:boop"}' );
// returns <SyntaxError>
The API is the same as cjson#parse
. Hence, to use a custom reviver
function
var out;
function reviver( key, value ) {
if ( key === '' ) {
return value;
}
if ( key === 'beep' ) {
return value;
}
}
out = parse( '{"beep":"boop","a":"b"}', reviver );
// returns {'beep':'boop'}
function
wraps cjson#parse
in a try/catch
block.try/catch
within any function
prevents JavaScript compiler optimization. By isolating the try/catch
block, we minimize the extent of optimization hell.var fs = require( 'fs' ),
path = require( 'path' ),
parse = require( 'utils-cjson-parse' );
// Load a commented JSON file...
var file = path.resolve( '/path/to/file.cjson' );
file = fs.readFileSync( file, {
'encoding': 'utf8'
});
// Attempt to parse the file...
file = parse( file );
console.dir( file );
To run the example code from the top-level application directory,
$ node ./examples/index.js
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
Copyright © 2015. Athan Reines.
FAQs
Attempts to parse an input string as commented JSON.
We found that utils-cjson-parse demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.