debuggable

 
Contact Us
 

Releasing node-mysql 2.0.0-alpha

Posted on 15/5/12 by Felix Geisendörfer

Today I am releasing an alpha version of node-mysql v2.0. If you are using v0.9.x at this point, I highly encourage you to try it out, as now is your best chance to influence the API and features of the final release.

To install the new version, do:

npm install mysql@2.0.0-alpha

Then check out the Upgrading Guide and adjust your code as needed.

After that make sure to join the new mailing list or #node-mysql IRC channel to provide any feedback you may have.

This new version comes with a few exciting improvements:

  • ~5x faster than v0.9.x for parsing query results
  • Support for pause() / resume() (for streaming rows)
  • Support for multiple statement queries
  • Support for stored procedures
  • Support for transactions
  • Support for binary columns (as blobs)
  • Consistent & well documented error handling
  • A new Connection class that has well defined semantics (unlike the old Client class).
  • Convenient escaping of objects / arrays that allows for simpler query construction
  • A significantly simpler code base
  • Many bug fixes & other small improvements (Closed 62 out of 66 GitHub issues)

I have been working on this new version for quite some time, but only now was able to complete the final work thanks to my amazing new sponsors:

For those of you interested in the future of v0.9.x:

  • There will be no v1.0 release, the way 0.9.x handles its queue and reconnect mechanism are broken and not easily fixable without breaking BC.
  • I will merge critical bug fixes that come with tests and don't break BC.
  • There will be no major changes, especially features.

Going forward, I also hope to find some time to write about:

  • The new parser and what makes v2 so fast
  • The choice of rewriting vs. refactoring (I tried both)
  • My failed first attempt for a new parser design

--fg

 
&nsbp;

You can skip to the end and add a comment.

William  said on Jun 09, 2012:

Hi Felix,

The Upgrading Guide link is broken.

Thanks!

Felix Geisendörfer said on Jun 09, 2012:

William: thanks, fixed it.

This post is too old. We do not allow comments here anymore in order to fight spam. If you have real feedback or questions for the post, please contact us.