Skip to content

Release 4.0.0

Compare
Choose a tag to compare
@KrisSiegel KrisSiegel released this 09 Mar 04:51
· 45 commits to master since this release

Version 4.0 brings along many performance improvements (20% faster! ha!), API changes, new features and some deprecations.

_What's new?_

  • msngr.uuid() This method returns a valid UUID and was simply renamed from the original msngr.id() which has now changed (see breaking changes below)
  • msngr.asyncify() This method takes a function that operates and returns a synchronous result and adds a .async() method on top of it so it can be used asynchronously.
  • msngr.mache() This creates a new merge cache. Data can be cached into it with all objects always being merged. It also provides a way to revert changes on an individual basis or it can be used in a transaction! Neat, huh?

_Breaking changes_

  • msngr.id() no longer returns a UUID. Instead it returns a higher performance but unique ID. This is used mostly internally to msngr.
  • msngr.warnings is no longer a property. It was never used and I don't like the idea of adding logging inside of a library. Could revisit it in the future if there is any demands.
  • msngr.config() still exists but is now powered by a msngr.mache() instance so its API has changed accordingly.

_Misc changes_

  • Moved test resources to yet another dedicated folder (this time just test)
  • Upgraded all development dependencies to latest versions
  • Removed documentation for msngr.getDomPath(); unless the element contains an ID this method is unreliable but I want to later improve upon it so for now it's considered part of the "private API" aka don't use it.
  • Re-ordered the files that are included in the build process and made them explicit instead of wildcards so I can explicitly tune them to the correct ordering.