All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
<a href="https://github.com/zkat/protoduck/compare/v5.0.0...v5.0.1">5.0.1</a> (2018-10-26)
Bug Fixes
<a href="https://github.com/zkat/protoduck/compare/v4.0.0...v5.0.0">5.0.0</a> (2017-12-12)
Bug Fixes
- license: relicense to MIT (55cdd89)
- platforms: drop support for node 4 and 7 (07a19b1)
BREAKING CHANGES
- platforms: node 4 and node 7 are no longer officially supported
- license: license changed from CC0-1.0 to MIT
<a href="https://github.com/zkat/protoduck/compare/v3.3.2...v4.0.0">4.0.0</a> (2017-04-17)
Bug Fixes
- test: .name is inconsistently available (3483f4a)
Features
- api: Fresh New API⢠(#2) (534e5cf)
- constraints: added optional where-constraints (16ad124)
- defaults: allow default impls without arrays in defs (6cf7d84)
- deps: use genfun@4 (f6810a7)
- meta: bringing project stuff up to date (61791da)
BREAKING CHANGES
- api: The API was significantly overhauled.
- New protocol creating is now through protoduck.define() instead of protoduck()
- Implementations are through Duck::impl instead of Duck(...)
- The
private
option was removed
- Static protocols were removed – only method-style protocols are available now.
- As part of that: the target argument to impl can no longer be omitted
- The main export object is now the metaobject. protoduck.impl can be used to extend to MOP
- .isDerivable is now a property on Duck instances, not a static method
- .hasImpl is now a method on Duck instances, not a static method
- Protoduck will now genfunnify existing functions as default methods for genfuns declared in a protocol when implementing
- Error messages have been overhauled to be more helpful
- deps: nextMethod is now an extra argument to methods
- meta: node<4 is no longer supported