New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

crc32c

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

crc32c - npm Package Compare versions

Comparing version 0.3.0 to 0.4.0

src/utils.cc

6

package.json
{
"name": "crc32c",
"version": "0.3.0",
"version": "0.4.0",
"description": "CRC32C C implementation for Linux.",

@@ -9,2 +9,6 @@ "keywords": [ "crc", "crc32", "crc32c", "hash", "castagnoli" ],

"dependencies" : {},
"devDependencies" : {
"crc32" : "latest",
"sse4_crc32" : "latest"
},
"main": "./bin/crc32c.node",

@@ -11,0 +15,0 @@ "repository": {

@@ -20,2 +20,4 @@ Node-crc32c

You have the function `compute`, which takes only one argument, the string to hash.
From JavaScript:

@@ -31,2 +33,5 @@ ```javascript

console.log(crc32c.compute(new Buffer('{"jsonString":"property1","jsonArray":["arr1","arr2","arr3"]}')));
// Or String Objects!
console.log(crc32c.compute(new String('A superb string!')));
```

@@ -38,2 +43,4 @@

You have to create an object called a Batcher. This object then has 3 methods: `openSocket`, `closeSocket`, and `compute`.
From JavaScript:

@@ -58,1 +65,8 @@ ```javascript

The plugin is under MIT license, please see the LICENSE file provided with the module.
## Benchmarks
Run the script `node benchmarks/benchmarks.js`!
*Soon more info.*

58

test/test.js

@@ -5,6 +5,5 @@ var crc32c = require('../bin/crc32c');

console.log(crc32c.compute(new Buffer('hello\n')));
console.log(crc32c.compute(new Buffer('{"jsonString":"property1","jsonArray":["arr1","arr2","arr3"]}')));
console.log(crc32c.compute('{"jsonString":"property1","jsonArray":["arr1","arr2","arr3"]}'));
console.log(crc32c.compute(new String('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent quis ipsum odio. Phasellus gravida mattis sem, at tempus lorem. Etiam hendrerit accumsan pretium. Suspendisse malesuada nisl urna, sed porta eros scelerisque sit amet. Nullam pulvinar metus.')));

@@ -17,56 +16,3 @@ // Using the batcher

console.log(Batcher.compute('{"jsonString":"property1","jsonArray":["arr1","arr2","arr3"]}'));
console.log(Batcher.compute(new String('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent quis ipsum odio. Phasellus gravida mattis sem, at tempus lorem. Etiam hendrerit accumsan pretium. Suspendisse malesuada nisl urna, sed porta eros scelerisque sit amet. Nullam pulvinar metus.')));
Batcher.closeSocket();
/**
* N repetition testing
*/
//** Using a new socket each time
var testString = '{"web-app":{"servlet":[{"servlet-name":"exampleCDS","servlet-class":"org.example.cds.CDSServlet","init-param":{"configGlossary:installationAt":"A Superb City, SW","configGlossary:adminEmail":"example@example.org","configGlossary:poweredBy":"example","configGlossary:poweredByIcon":"/images/example.gif","configGlossary:staticPath":"/content/static","templateProcessorClass":"org.example.WysiwygTemplate","templateLoaderClass":"org.example.FilesTemplateLoader","templatePath":"templates","templateOverridePath":"","defaultListTemplate":"listTemplate.htm","defaultFileTemplate":"articleTemplate.htm","useJSP":false,"jspListTemplate":"listTemplate.jsp","jspFileTemplate":"articleTemplate.jsp","cachePackageTagsTrack":200,"cachePackageTagsStore":200,"cachePackageTagsRefresh":60,"cacheTemplatesTrack":100,"cacheTemplatesStore":50,"cacheTemplatesRefresh":15,"cachePagesTrack":200,"cachePagesStore":100,"cachePagesRefresh":10,"cachePagesDirtyRead":10,"searchEngineListTemplate":"forSearchEnginesList.htm","searchEngineFileTemplate":"forSearchEngines.htm","searchEngineRobotsDb":"WEB-INF/robots.db","useDataStore":true,"dataStoreClass":"org.example.SqlDataStore","redirectionClass":"org.example.SqlRedirection","dataStoreName":"example","dataStoreDriver":"com.microsoft.jdbc.sqlserver.SQLServerDriver","dataStoreUrl":"jdbc:microsoft:sqlserver://LOCALHOST:1433;DatabaseName=goon","dataStoreUser":"sa","dataStorePassword":"dataStoreTestQuery","dataStoreTestQuery":"SET NOCOUNT ON;select test=\'test\';","dataStoreLogFile":"/usr/local/tomcat/logs/datastore.log","dataStoreInitConns":10,"dataStoreMaxConns":100,"dataStoreConnUsageLimit":100,"dataStoreLogLevel":"debug","maxUrlLength":500}},{"servlet-name":"exampleEmail","servlet-class":"org.example.cds.EmailServlet","init-param":{"mailHost":"mail1","mailHostOverride":"mail2"}},{"servlet-name":"exampleAdmin","servlet-class":"org.example.cds.AdminServlet"},{"servlet-name":"fileServlet","servlet-class":"org.example.cds.FileServlet"},{"servlet-name":"exampleTools","servlet-class":"org.example.cms.exampleToolsServlet","init-param":{"templatePath":"toolstemplates/","log":1,"logLocation":"/usr/local/tomcat/logs/exampleTools.log","logMaxSize":"","dataLog":1,"dataLogLocation":"/usr/local/tomcat/logs/dataLog.log","dataLogMaxSize":"","removePageCache":"/content/admin/remove?cache=pages&id=","removeTemplateCache":"/content/admin/remove?cache=templates&id=","fileTransferFolder":"/usr/local/tomcat/webapps/content/fileTransferFolder","lookInContext":1,"adminGroupID":4,"betaServer":true}}],"servlet-mapping":{"exampleCDS":"/","exampleEmail":"/exampleutil/aemail/*","exampleAdmin":"/admin/*","fileServlet":"/static/*","exampleTools":"/tools/*"},"taglib":{"taglib-uri":"example.tld","taglib-location":"/WEB-INF/tlds/example.tld"}}}'
var fails = 0;
var error;
var N = 100000;
var label = 'Batch + new socket ' + N;
console.time(label);
for(var i = 0; i < N; ++i) {
try {
crc32c.compute(testString);
} catch (err) {
error = err;
++fails;
}
}
console.timeEnd(label);
if (fails) {
console.log(fails);
console.log(error);
}
//** Using a single socket
fails = 0;
error = undefined;
// N is still defined
label = 'Batch + single socket ' + N;
console.time(label);
Batcher.openSocket();
for(var i = 0; i < N; ++i) {
try {
Batcher.compute(testString);
} catch (err) {
error = err;
++fails;
}
}
Batcher.closeSocket();
console.timeEnd(label);
if (fails) {
console.log(fails);
console.log(error);
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc