2.1.0
- added
enableKeepAlive
connection option #1081, #683
2.0.2
- Fix for clearing connection timeout state when
connection is re-attempted (failure or success) #1075
- Avoid setting numeric config options to NaN #1074, #721
- PoolCluster#end now accepts a callback function #1065, #1063
2.0.1
- Add missing authPlugins assignment in
ConnectionConfig #1052
- Fix 4.1 auth on old servers not
supporting PLUGIN_AUTH #1062, #1054, #1053
2.0.0
- Mysql8 caching_sha2_password - fix bug in
authenticating when password is longer
than 19 chars #1044 #1045
- Support ConnectionConfig.flags as an array #1003
2.0.0-alpha1
- MAJOR: new
authPlugins
api replacing
authSwitchHandler
, added caching_sha2_password
and mysql_native_password as default plugins.
Added tests for mysql 8 and ssl. Mysql 8 server
now supported with default settings. #1021, #906, #991
- MAJOR: LOCAL INFILE does not automatically read #1034
from the local fs and now requires an explicit
infileStreamFactory
to be specified in query options.
- Update to 2019 CA Amazon RDS certificates #1032
- Update SSL Profile for AWS Serverless Aurora #1026
- fix pool ignoring namedPlaceholders config #1022
1.7.0
- Fix crashing when session info packet does not
start with length-coded string #1004, #989
- build: drop node 4 and 6 and add node v12 #997
- Add support for timezone connection option #996, #15, #262,
#642, #877, #888
- Make mysql2 compatible with minification #992, #890, #899,
#890
- fix serialisation of '00:00:00' time #968, #967
- Allow to set minVersion ssl option #961, #960
- Fix a MaxListenersExceededWarning with stream
local infile #965
1.6.5 (08/02/2019)
- allow to use namedPlaceholders flag per query #879
- migrate to more modern code style ( classes /
arrow functions ) #861, #870
- be more defencive about ssl config object #895
- fix(debug): remove usage of callee #882
1.6.4 (08/11/2018)
- revert changes breaking node v4 and add v4 to
build matrix #872, #873
1.6.3 (06/10/2018)
- Don't treat selector-making function as a class. #869, #871
1.6.2 (05/10/2018)
- Fix "Socket ended by other party" error #447, #867, #868
- replace var with let/const #849
- Fix "close emitted before end" error #711, #859
- fix docs #856
- migrate to es6 classes where appropriate #848
1.6.1 (02/08/2018)
- Fix missing Promise option in checks for Pool #826
1.6.0 (01/08/2018)
- Fixed
PromiseConnection.ping()
ignoring errors #813
- Added a uri parameter to the connection config #815
- Added a
.promise()
method shortcut on Pool,
Connection and PoolConnection #810
- Added more functions from node-mysql:
createQuery
, raw
, escape
, escapeId
,
format
#799
- Added
acquire
and release
and release events
on Connection #783
- Added support for a Japanese charset
ujis
#772
- Improved error handling on
ECONNRESET
#768
- Drop support for Node 4 #791
1.5.3 (19/03/2018)
- fix incorrect denque dependency #740
- build: bump to node 8.10 and 6.16
- use strich lru-cache version #751
- bump sqlstring to 2.3.1
- remove noAssert flag from Buffer functions #748
1.5.2 (06/02/2018)
- perf: Store Compiled Packet Parsers in a global
cache #722, #723
- Improve performance of removing connections from
pools #720
- use source parameters types with execute, fix
crash when parameter is undefined #718, #705
- PromisePool to always use the specified promises
library #697
1.5.1 (19/11/2017)
- Fix empty buffer incorrectly returned instead of
NULL value #668, #671
- promise wrapper: pass sqlMessage from original
error #682, #678
1.5.0 (13/11/2017)
- Added sqlMessage to Error callback object #665
- Normalized sqlState to a string of 5 chars #667
as Mysql specifies it
- Remove destroyed promise pool connections from
pool #674, #672
- Expose escape & format methods on connection pool #669, #663
- Support fractional seconds variable precision for
the temporal types #660, #659
- fix null values breaking typeCast behaviour #652
1.4.2 ( 27/08/2017 )
fix null value incorrectly returned as empty
string from int values in text protocol #637
build: bump to node 8.4
promise wrapper: use promise implementation passed
to PromisePool #631, #632
1.4.1 ( 16/08/2017 )
- add missing encodings #628, #630
- (binary protocol) Fix parsing microsecond in
datatime type #629
- (promise wrapper) Fix handling of errors in promise
prepared statement execute #622
1.4.0 ( 30/07/2017 )
- fix DATETIME going into incorrect state when
milliseconds part present #618
- (promise wrapper) add changeUser #615, #614, #613
- redo event delegation in promise wrappers to be #577, #620, #577, #568
lazy, self-cleaning
1.3.6 ( 12/07/2017 )
- fix crash when initial packet from server is error #607
1.3.5 ( 15/06/2017 )
- update iconv-lite to 0.4.18 to fix node 8 cesu8
encoding regression. Add node 8 to build matrix #591
1.3.4 ( 13/06/2017 )
- use safe-buffer in string decoder #589, #585
- allow to use pool.execute() without parameters #589
1.3.3 ( 8/06/2017 )
- fix node encodings lookup in string parser #583, #582
- fix connection not released to the pool on error #579, #551, #540, #508, #569
- better stack traces in promise wrapper #580, #530
1.3.2 ( 31/05/2017 )
- fix PromiseConnection.prepare and add #574, #575
PromisePreparedStatementInfo
1.3.1 ( 31/05/2017 )
- move lint-staged to devDependencies #573
1.3.0 ( 29/05/2017 )
- Make Promise Pool wrapper extend EventEmitter #567, #468
- build: integrate prettier #563
- do not send 23 unallocated bytes over wire #547
- fix: PromiseConnection missing interface functions
from Connection #531, #495
1.2.0 ( 17/02/2017 )
- add new MySQL 5.6/8.0 charsets #494
- build: drop support for node 0.10 and 0.12
- fix: Connection not released when Pool.Execute
called without values #509, #485, #488, #475
1.1.2 ( 15/11/2016 )
- (fix) memory leak introduced with iconv
encoder/decoder cache #459, #458
- remove use of domains #451, #449
- (fix) handle correctly packets over 0xffffff bytes
long + compressed protocol rewrite #421, #248, #419, #426
- (perf) replace double-ended-queue with denqueue #444
- (feat) automatically track client encoding change #437, #389
- (feat) add support for CLIENT_SESSION_TRACK info #388, #436
1.1.1 ( 06/10/2016 )
- (fix) do not crash when result of execute().stream()
is paused #174, #424
- (fix) do not call .destroy() on stream when connect timeout
is fired (destroy() method exist only on Net stream
but not on custom streams) #417, #414
- (internal) parser generator now uses generate-function
package to prepare dynamically generated parser func #412, #167
- (docs) fix readme test/code errors #413
- (tests) use docker+mysql 5.7 on travis #410
- (fix) use correct encoding for JSON type (despite
reported by server BINARY enc utf8 should be used
instead) #410, #409
- (docs) refactor readmy to be more firendly for first
time readers
1.1.0 ( 20/09/2016 )
- promise wrappers: fix object form parameters being
ignored #405
- listen for errors in socket.write, prevent from crash
when server disconnects mid query. In LOAD INFILE
command disconnect from input stream when there is
error #404 #289 #57 #38
- ensure prepare+execute commands are enqueued one after
another (previously execute was appended at the end
of the queue) #404
- add linting to readme and docs code #403 405
- build: bump to node 6.6
- (SEMVER MINOR) use LRU cache to store prepared
statements add maxPreparedStatements options parameter #401
- (SEMVER MINOR) support connectTimeout option #396 #376
- (SEMVER MINOR) support changedRows in insert results #400 #299
- (SEMVER MINOR) allow to use nestTables as connection
options in addition to query/execute option #399
1.0.0 ( 16/09/2016 )
- set default server encoding so that strings from server
can be decoded before initiol connection handshake packet
is sent
- add files section to package.json #398
1.0.0-rc.13 ( 14/09/2016 )
- text protocol: fix a bug the prevented row parser
from being used #397
1.0.0-rc-12 ( 06/09/2016 )
- support for non-utf8 server, results, and client
encodings #302, #374
- replace deprecated Buffer APIs with Buffer.from
and Buffer.allocUnsafe #381, #380
- build: bump to node v6.5
1.0.0-rc-11 ( 14/08/2016 )
- pool: support namedPlaceholder flag in
pool.query
and pool.execute
helpers #369
- pool: do not emit error on query command if callback #372
was passed
- pool: propagate connection time error back
to .getConnection() #372
1.0.0-rc-10 ( 09/08/2016 )
ssl: do not use deprecated tls.createSecurePair
if TLSSocket is avaiable #367, 363
use supportBigNumbers and bigNumberStrings flags in
parser
pass supportBigNumbers and bigNumberStrings from
query({sql, ...opts})
and execute({sql, ...opts})
type of calls
use supportBigNumbers and bigNumberStrings as part of
parser key
binary protocol: use long.js to calculate resulting
number from two 32 byte valuse
text protocol: fix in detecting potentially big number.
Split parseLong* into functions with and without big
number checks, use no check version if type is < long #366
documentation:
- Split documentation into
/documentation
folder with sub
docs inside this folder
- Use badge for license
Added .npmignore
#365
handle correctly negative insert IDs #364, #341, #336
build: add v6.3 to matrix
docs: add CONTRIBUTING.md #138, #359
1.0.0-rc-9 ( 01/08/2016 )
- remember and send credentials for initial
AuthSwitch request #331, #357
- fix re-emitting error event during initial handshake #356
1.0.0-rc-8 ( 22/07/2016 )
- enabled use of global typeCast #347, #351
- custom typeCast: fix incorrect buffer() and geometry() #349
functions
- documentation: fix async/await example #342
1.0.0-rc-7 ( 03/07/2016 )
- fix incorrect MockBuffer property assignment #333
- implement typeCast option #338
1.0.0-rc-6 ( 29/06/2016 )
- AuthSwitch support and partial support for
plugin-based authentication #331
1.0.0-rc-5 ( 16/06/2016 )
- Fix incorrect releasing of dead pool connections #326, #325
- Allow pool options to be specified as URL params #327
1.0.0-rc.4 ( 14/06/2016 )
- fix double-interpolation in pool.query #323, #324
1.0.0-rc.3 ( 08/06/2016 )
- switch to external sqlstring labrary, same
as used by node-mysql
6b559c565f
- new built-in Promise api #269
- server: allow to listen to all packets via 'packet' event #297
- fix broken rowAsArray flag
05585aa242
1.0.0-rc.2 (02/06/2016)
- add eslintrc #268
- callbacks on pool.query are never called #281 #182 #218
- allow namedParameters for queries on pool as well #281
- (semver-major) server: pass handshake packet in
'connect' event instead of 'true'
2c066aca20
- server: fix packet length calculation for
multibyte characters input #295
1.0.0-rc.1 (17/02/2016)
- (semver-major) remove 'number of statements'
from callback parameter #192, #266, #45, #46
- fix in deserealisation of binary datetime packet #260
- return null date as null, not INVALID_DATE. #244, #247
- fix incorrect name for flag ( binary protocol ) #245, #246
- completely refactored compression protocol support #252, #173
- server: add serailisation of NULL strings #232
- security: SSL does not verify remote certificate #103, #171
- Allow parameters in query(options) object #216, #230
- Pool query now returns query reference #183 #230
- perf: use double-ended queue in the pool instead of arrays #227 #228 #156
- JSON type support #207 #208
- build: add node 4.2 and 5.1 to matrix
- Make SSL ciphers configurable #190 #103
- Emit enqueue event if conn is queued #177 #189
- call command callback if stream was disconnected mid
command #202, 204
- use correct variable in error reporting #197
- build: add mariadb to tests. #191
- add support for named placeholders for field & tables #176, 205
- update error codes from node-mysql #201 209
- bump named-placeholders to 1.0.0, fixes problems with
placeholders inside quotation ( https://github.com/sidorares/named-placeholders/issues/2 )
- catch exceptions during named placeholders processing #187
0.15.8 - 22/06/2015
- Add .escapeId() to Connection and Pool #180
- Build: iojs 2.2.1 & 2.3.0
- Binary protocol: fix crash when server return null
for 'NOT NULL' column #178
0.15.7 - ?
0.15.6 - 04/06/2015
- Include errno in error object #168
- server: fix fields in OK and column header packets
(fix errors when connecting with node-mysql)
- build: add iojs 1.8.x to matrix
0.15.5 - 08/04/2015
- fix broken 'stream rows' functionality #165, #166
- add io.js 1.6 to build matrix
0.15.4 - 11/03/2015
- added COM_QUIT command, sent from conn.end() #163, #150
- io.js 1.5
- don't crash on unexpected protocol packets, emit #164, #160
connection error event instead
0.15.3 - 24/02/2015
- multiple results support in binary protocol #157 #26 #27
- add io.js 1.4 to CI matrix
0.15.2 - 24/02/2015
- update Amazon RDS certificates #154
- add io.js 1.3 to CI matrix
- fix packet parser bug #155
0.15.1 - 18/02/2015
- add io.js 1.0 - 1.2 to build matrix
- add windows CI using Appveyor #151 #152
0.15.0 - 1/10/2015
- connection.threadId
- connection.changeUser() #63
- named placeholders #117
- new prepared statements api #132 #139
- support LOAD INFILE #64 #142
- refactored faster packet parser #140
- lazy parse rarely used column definition fields #137
0.14.1 - 9/12/2014
- stream connection option now can be a function #80
- bugfix/prepared statements: fix case when no columns
in statement header but there are columns in results #130
0.14.0 - 26/11/2014
- added connection.pause() and connection.resume() #129
0.13.0
- connection errors sent to all commands in queue
- server-side authentication support #122
- server.listen() is now chainable (returns server)
- allow to login using sha1(password) #124
- Query.sql as alias to Query.query #121
0.12.5 - 30/07/2014
- add 'execute' pool method similar to Pool##query #114
- more debug output behind debug flag
0.12.4 - 17/07/2014
- 'debug' connection option now result in lots of
debug output #112 #77
- send corectly compression flag if compression is on #102
0.12.3 - 11/07/2014
- fix node 0.8 - incompatible dependency version
0.12.2 - 11/07/2014
- output milliseconds in date type #107
- deserialise length coded int with > 24 bit numbers
to js int / float (and not throw "Bignts not supported") #108
- support for Bigint numbers in insertId
0.12.1 - 30/04/2014
- 'dateStrings' connection option support #99
- use anonymous function for packet routing instead
of .bind() 3-5% speed improvement
- GEOMETRY type support in binary protocol #97
0.12.0 - 29/04/2014
route connection time errors from handshke command to
connection #96
support for nestTables and rowsAsArray options in query()
and execute() #95, #94
bugfix: date as parameter in prepared statement,
day of week was used incorrectly
instead of day of month #89 ab28dfca83
0.11.8
0.11.7
0.11.6
0.11.5
- fix for non-utf strings serialisation (binary protocol only)
cf9594aaab
0.11.4
- support YEAR type in prepared statements
a0f33b5a4d
0.11.3
0.11.2
0.11.1
- buxfix: connection.connect callback was called more than once
#72
0352eefdaf
0.11.0
- Bundle Amazon RDS cert and allow to connect using
e6af097b5f
'Amazon RDS' as ssl value
0.10.7
0.10.6
0.10.5
- node-mysql compatibility: remove 'number of results in response'
callback argument (Brian White) #46
40af053040
- node 0.11 (use on('data') instead of ondata )
39906c78b8
- fix again ssl (#41)
713051bf99
0.10.4
- node-mysql compatibility: remove 'number of results in response'
callback argument (Brian White) #45
c9cb926360
- 'resultIndex' parameter for non-multiple results query
8879bdde39
0.10.3
- various ssl fixes and refactoring (ssl was broken for some time)
213d375f72
- Server protocol: handle null values serialisation
(Michael Muturi Njonge) #36
831b2a1007
0.10.2
- return DECIMAL and NEWDECIMAL as string in binary prot #40
969fba6ff1
0.10.1
0.9.2
- correctly parse NULL result for string and number #35
0a4ac65ec8
- do not pollute global namespace from evaled parser #11
4b6ddaf0f7
0.9.1
- PoolClaster ported from node-mysql #34
0.8.21
- Fix in error message parsing (Noam Wasersprung) #31
6cc80a67ea
- return insert/delete header for insert/delete commands #32
72aa8fe709
0.8.20
- Make packet parser work with 0.11 ondata(buffer) with no start,end
9005fd1
- Allow to use Date-like objects as date parameters (Amir Livneh)
6138dad058
0.8.19
- Multiple results support in text protocol #15
4812adaf1a
- Use connection flags from createConnection parameters/url string
9218f055ce