4 Commits
15 changed files with 1684 additions and 187 deletions
-2
View File
@@ -1,2 +0,0 @@
/node_modules/
/tests/
+9
View File
@@ -0,0 +1,9 @@
/node_modules/
/coverage/
/.nyc_output/
/tests/
/doc/
.covignore
.travis.yml
.npmignore
bower.json
+1 -2
View File
@@ -4,8 +4,7 @@ node_js:
- "8.6.0"
before_install:
- npm install coveralls
- npm install mocha-lcov-reporter
script: npm run-script coveralls
after_success: npm run coveralls
branches:
only:
- master
+16
View File
@@ -1,5 +1,21 @@
# Change Log
## v0.7.3 / 2017-12-18
### Fixed
- incorrect result when first bit is 1 of bytes. #18
## v0.7.2 / 2017-10-31
### Improved
- performance of hBytes increment.
## v0.7.1 / 2017-10-29
### Fixed
- incorrect result when file size >= 4G.
## v0.7.0 / 2017-10-29
### Fixed
- incorrect result when file size >= 512M.
## v0.6.1 / 2017-10-07
### Fixed
- ArrayBuffer.isView issue in IE10.
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "js-md5",
"version": "0.6.1",
"version": "0.7.3",
"main": ["src/md5.js"],
"ignore": [
"tests"
+2 -2
View File
File diff suppressed because one or more lines are too long
+8 -8
View File
@@ -206,7 +206,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line574">line 574</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line579">line 579</a>
</li></ul></dd>
@@ -326,7 +326,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line586">line 586</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line591">line 591</a>
</li></ul></dd>
@@ -446,7 +446,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line621">line 621</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line626">line 626</a>
</li></ul></dd>
@@ -568,7 +568,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line608">line 608</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line613">line 613</a>
</li></ul></dd>
@@ -688,7 +688,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line552">line 552</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line557">line 557</a>
</li></ul></dd>
@@ -808,7 +808,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line507">line 507</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line512">line 512</a>
</li></ul></dd>
@@ -928,7 +928,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line540">line 540</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line545">line 545</a>
</li></ul></dd>
@@ -1185,7 +1185,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sat Oct 07 2017 09:51:51 GMT+0800 (CST)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Mon Dec 18 2017 18:48:59 GMT+0800 (CST)
</footer>
<script> prettyPrint(); </script>
+2 -2
View File
@@ -214,7 +214,7 @@
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line654">line 654</a>
<a href="md5.js.html">md5.js</a>, <a href="md5.js.html#line659">line 659</a>
</li></ul></dd>
@@ -300,7 +300,7 @@ md5(new Uint8Array([])); // d41d8cd98f00b204e9800998ecf8427e</code></pre>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sat Oct 07 2017 09:51:51 GMT+0800 (CST)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Mon Dec 18 2017 18:48:59 GMT+0800 (CST)
</footer>
<script> prettyPrint(); </script>
+1 -1
View File
@@ -96,7 +96,7 @@ md5.base64(''); // 1B2M2Y8AsgTpgAmY7PhCfg==</code></pre><h2>License</h2><p>The p
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sat Oct 07 2017 09:51:51 GMT+0800 (CST)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Mon Dec 18 2017 18:48:59 GMT+0800 (CST)
</footer>
<script> prettyPrint(); </script>
+2 -2
View File
@@ -47,7 +47,7 @@
<dt class="tag-version">Version:</dt>
<dd class="tag-version"><ul class="dummy"><li>0.6.1</li></ul></dd>
<dd class="tag-version"><ul class="dummy"><li>0.7.3</li></ul></dd>
@@ -1460,7 +1460,7 @@ hash.update('The quick brown fox jumps over the lazy dog');</code></pre>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sat Oct 07 2017 09:51:51 GMT+0800 (CST)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Mon Dec 18 2017 18:48:59 GMT+0800 (CST)
</footer>
<script> prettyPrint(); </script>
+8 -3
View File
@@ -30,7 +30,7 @@
* [js-md5]{@link https://github.com/emn178/js-md5}
*
* @namespace md5
* @version 0.6.1
* @version 0.7.3
* @author Chen, Yi-Cyuan [emn178@gmail.com]
* @copyright Chen, Yi-Cyuan 2014-2017
* @license MIT
@@ -226,7 +226,7 @@
this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
}
}
this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = 0;
this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = this.hBytes = 0;
this.finalized = this.hashed = false;
this.first = true;
}
@@ -338,6 +338,10 @@
this.start = i;
}
}
if (this.bytes > 4294967295) {
this.hBytes += this.bytes / 4294967296 &lt;&lt; 0;
this.bytes = this.bytes % 4294967296;
}
return this;
};
@@ -359,6 +363,7 @@
blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;
}
blocks[14] = this.bytes &lt;&lt; 3;
blocks[15] = this.hBytes &lt;&lt; 3 | this.bytes >>> 29;
this.hash();
};
@@ -720,7 +725,7 @@
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sat Oct 07 2017 09:51:51 GMT+0800 (CST)
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Mon Dec 18 2017 18:48:59 GMT+0800 (CST)
</footer>
<script> prettyPrint(); </script>
+1608 -154
View File
File diff suppressed because it is too large Load Diff
+12 -7
View File
@@ -1,23 +1,23 @@
{
"name": "js-md5",
"version": "0.6.1",
"version": "0.7.3",
"description": "A simple MD5 hash function for JavaScript supports UTF-8 encoding.",
"main": "src/md5.js",
"devDependencies": {
"expect.js": "~0.3.1",
"jscoverage": "~0.5.9",
"jsdoc": "^3.4.0",
"mocha": "~2.3.4",
"nyc": "^11.3.0",
"requirejs": "^2.1.22",
"uglify-js": "~2.4.10",
"uglify-js": "^3.1.9",
"webworker-threads": "^0.7.11"
},
"scripts": {
"test": "mocha tests/node-test.js -r jscoverage",
"report": "mocha tests/node-test.js -r jscoverage --covout=html",
"coveralls": "mocha tests/node-test.js -R mocha-lcov-reporter -r jscoverage | coveralls",
"test": "nyc mocha tests/node-test.js",
"report": "nyc --reporter=html --reporter=text mocha tests/node-test.js",
"coveralls": "nyc report --reporter=text-lcov | coveralls",
"doc": "rm -rf doc;jsdoc src README.md -d doc",
"compress": "uglifyjs src/md5.js --compress --mangle --comments --output build/md5.min.js",
"compress": "uglifyjs src/md5.js -c -m eval --comments --output build/md5.min.js",
"build": "npm run-script compress;npm run-script doc"
},
"repository": {
@@ -36,5 +36,10 @@
"homepage": "https://github.com/emn178/js-md5",
"bugs": {
"url": "https://github.com/emn178/js-md5/issues"
},
"nyc": {
"exclude": [
"tests"
]
}
}
+7 -2
View File
@@ -2,7 +2,7 @@
* [js-md5]{@link https://github.com/emn178/js-md5}
*
* @namespace md5
* @version 0.6.1
* @version 0.7.3
* @author Chen, Yi-Cyuan [emn178@gmail.com]
* @copyright Chen, Yi-Cyuan 2014-2017
* @license MIT
@@ -198,7 +198,7 @@
this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
}
}
this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = 0;
this.h0 = this.h1 = this.h2 = this.h3 = this.start = this.bytes = this.hBytes = 0;
this.finalized = this.hashed = false;
this.first = true;
}
@@ -310,6 +310,10 @@
this.start = i;
}
}
if (this.bytes > 4294967295) {
this.hBytes += this.bytes / 4294967296 << 0;
this.bytes = this.bytes % 4294967296;
}
return this;
};
@@ -331,6 +335,7 @@
blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;
}
blocks[14] = this.bytes << 3;
blocks[15] = this.hBytes << 3 | this.bytes >>> 29;
this.hash();
};
+7 -1
View File
@@ -241,8 +241,14 @@
});
});
});
});
context('when large size', function () {
var hash = md5.create();
hash.bytes = 4294967295;
hash.update('any');
expect(hash.hBytes).to.be(1);
});
});
describe('#bas64', function () {
for (var testCaseName in base64TestCases) {