CHANGELOG.md
1 # 6.0.0 (2025-02-28) 2 * Drop support for NodeJS <= 16 3 * Remove `node-pre-gyp` in favor of `prebuildify`, prebuilt binaries are now shipped with the package 4 * Update `node-addon-api` to 8.3.0 5 * Update JS code to newer ES syntax 6 7 # 5.1.0 (2022-10-06) 8 * Update `node-pre-gyp` to 1.0.11 9 10 # 5.1.0 (2022-10-06) 11 * Update `node-pre-gyp` to 1.0.10 12 * Replace `nodeunit` with `jest` as the testing library 13 14 # 5.0.1 (2021-02-22) 15 16 * Update `node-pre-gyp` to 1.0.0 17 18 # 5.0.0 (2020-06-02) 19 20 * Fix the bcrypt "wrap-around" bug. It affects passwords with lengths >= 255. 21 It is uncommon but it's a bug nevertheless. Previous attempts to fix the bug 22 was unsuccessful. 23 * Experimental support for z/OS 24 * Fix a bug related to NUL in password input 25 * Update `node-pre-gyp` to 0.15.0 26 27 # 4.0.1 (2020-02-27) 28 29 * Fix compilation errors in Alpine linux 30 31 # 4.0.0 (2020-02-17) 32 33 * Switch to NAPI bcrypt 34 * Drop support for NodeJS 8 35 36 # 3.0.8 (2019-12-31) 37 38 * Update `node-pre-gyp` to 0.14 39 * Pre-built binaries for NodeJS 13 40 41 # 3.0.7 (2019-10-18) 42 43 * Update `nan` to 2.14.0 44 * Update `node-pre-gyp` to 0.13 45 46 # 3.0.6 (2019-04-11) 47 48 * Update `nan` to 2.13.2 49 50 # 3.0.5 (2019-03-19) 51 52 * Update `nan` to 2.13.1 53 * NodeJS 12 compatibility 54 * Remove `node-pre-gyp` from bundled dependencies 55 56 # 3.0.4-napi (2019-03-08) 57 58 * Sync N-API bcrypt with NAN bcrypt 59 60 # 3.0.4 (2019-02-07) 61 62 * Fix GCC, NAN and V8 deprecation warnings 63 64 # 3.0.3 (2018-12-19) 65 66 * Update `nan` to 2.12.1 67 68 # 3.0.2 (2018-10-18) 69 70 * Update `nan` to 2.11.1 71 72 # 3.0.1 (2018-09-20) 73 74 * Update `nan` to 2.11.0 75 76 # 3.0.0 (2018-07-06) 77 78 * Drop support for NodeJS <= 4 79 80 # 2.0.1 (2018-04-20) 81 82 * Update `node-pre-gyp` to allow downloading prebuilt modules 83 84 # 2.0.0 (2018-04-07) 85 86 * Make `2b` the default bcrypt version 87 88 # 1.1.0-napi (2018-01-21) 89 90 * Initial support for [N-API](https://nodejs.org/api/n-api.html) 91 92 # 1.0.3 (2016-08-23) 93 94 * update to nan v2.6.2 for NodeJS 8 support 95 * Fix: use npm scripts instead of node-gyp directly. 96 97 # 1.0.2 (2016-12-31) 98 99 * Fix `compare` promise rejection with invalid arguments 100 101 # 1.0.1 (2016-12-07) 102 103 * Fix destructuring imports with promises 104 105 # 1.0.0 (2016-12-04) 106 107 * add Promise support (commit 2488473) 108 109 # 0.8.7 (2016-06-09) 110 111 * update nan to 2.3.5 for improved node v6 support 112 113 # 0.8.6 (2016-04-20) 114 115 * update nan for node v6 support 116 117 # 0.8.5 (2015-08-12) 118 119 * update to nan v2 (adds support for iojs 3) 120 121 # 0.8.4 (2015-07-24) 122 123 * fix deprecation warning for the Encode API 124 125 # 0.8.3 (2015-05-06) 126 127 * update nan to 1.8.4 for iojs 2.x support 128 129 # 0.8.2 (2015-03-28) 130 131 * always use callback for generating random bytes to avoid blocking 132 133 # 0.8.1 (2015-01-18) 134 * update NaN to 1.5.0 for iojs support 135 136 # 0.8.0 (2014-08-03) 137 * migrate to NAN for bindings 138 139 # v0.5.0 140 * Fix for issue around empty string params throwing Errors. 141 * Method deprecation. 142 * Upgrade from libeio/ev to libuv. (shtylman) 143 ** --- NOTE --- Breaks 0.4.x compatability 144 * EV_MULTIPLICITY compile flag. 145 146 # v0.4.1 147 * Thread safety fix around OpenSSL (GH-32). (bnoordhuis - through node) 148 * C++ code changes using delete and new instead of malloc and free. (shtylman) 149 * Compile options for speed, zoom. (shtylman) 150 * Move much of the type and variable checking to the JS. (shtylman) 151 152 # v0.4.0 153 * Added getRounds function that will tell you the number of rounds within a hash/salt 154 155 # v0.3.2 156 * Fix api issue with async salt gen first param 157 158 # v0.3.1 159 * Compile under node 0.5.x 160 161 # v0.3.0 162 * Internal Refactoring 163 * Remove pthread dependencies and locking 164 * Fix compiler warnings and a memory bug 165 166 # v0.2.4 167 * Use threadsafe functions instead of pthread mutexes 168 * salt validation to make sure the salt is of the correct size and format 169 170 # v0.2.3 171 * cygwin support 172 173 # v0.2.2 174 * Remove dependency on libbsd, use libssl instead 175 176 # v0.2.0 177 * Added async functionality 178 * API changes 179 * hashpw -> encrypt 180 * all old sync methods now end with _sync 181 * Removed libbsd(arc4random) dependency...now uses openssl which is more widely spread 182 183 # v0.1.2 184 * Security fix. Wasn't reading rounds in properly and was always only using 4 rounds