4.0.2 is a quick update to sneak in some important bugfixes in anticipation of the next monthly release.
The most visible change in 4.0.2 is the long-awaited upgrade of
leveldown to 1.x (#3873), which contains some big improvements to how
leveldown is installed. With 4.0.2, instead of needing to recompile
leveldown every time PouchDB is
npm installed, it will simply be downloaded thanks to leveldown-prebuilt. So if you've ever groaned at the dreaded
node-gyp rebuild console message, hop onto 4.0.2 and enjoy the faster install times!
Also noteworthy is that the in-memory adapter is now fully tested and working in IE 10+, thanks to fixes in #4216.
Another big change is that PouchDB is more stable when replicating during intermittent connectivity, thanks to a new "stateless constructor" in the HTTP adapter (#4146). Instead of kicking off HTTP requests immediately when you call
new PouchDB('http://example.com/db'), the new version will wait for the first method call, such as
- Handle errors thrown from
leveldownto 1.4.1, and
level-sublevelto 6.5.0 (#3873)
- Stateless constructor for the HTTP adapter, fixes errors syncing while offline (#4146)
- Ensure document properties are maintained, e.g. docs with keys like
- Validate attachment names don't start with
- Correctly respect the
revs_limitof 1000, trim revision trees (#4204)
- Allow passing in opts to
requestto 2.61.0 (#4260)
Function.prototype.nameshim consistently for IE (#4216)
- Better CORS warning (#4256)