- Message type: mini program for Message.type\(\)[\#1444](https://github.com/Chatie/wechaty/issues/1444)
- Promote PuppetPadchat to SOLO NPM Module wechaty-puppet-padchat [\#1372](https://github.com/Chatie/wechaty/issues/1372)
- PuppetPadchat: support message type of `StatusNotify` with `op id` push update information [\#1310](https://github.com/Chatie/wechaty/issues/1310)
- Make tslint.json to be simple with `extends` standard. [\#1303](https://github.com/Chatie/wechaty/issues/1303)
- feat: PuppetPadchat supports get QrCode for userSelf\(can be scan by others for adding friend\)[\#1301](https://github.com/Chatie/wechaty/issues/1301)
- New Puppet: PuppetPadchat [\#1249](https://github.com/Chatie/wechaty/issues/1249)
- feat: add `Wechaty.unref\(\)` support to unref all the underlying resources. [\#1197](https://github.com/Chatie/wechaty/issues/1197)
- Disable HotImport in PRODUCTION Environment [\#907](https://github.com/Chatie/wechaty/issues/907)
- Reconstruction PuppeteerMessage Class [\#724](https://github.com/Chatie/wechaty/issues/724)
-\[New Puppet\] PuppetWechat4u - enable by `WECHATY\_PUPPET=wechat4u`[\#69](https://github.com/Chatie/wechaty/issues/69)
**Fixed bugs:**
- TypeError: Cannot read property 'type' of undefined at AnotherOriginalClass.type [\#1545](https://github.com/Chatie/wechaty/issues/1545)
- contact alias not sync after call contact.alias\(string\) to set alias [\#1517](https://github.com/Chatie/wechaty/issues/1517)
- Fix Puppet Memory Multiplex Problem with Multi-Instance Wechaty and Pre-Instanced Puppet [\#1516](https://github.com/Chatie/wechaty/issues/1516)
- Question: How to pre-set puppet module to be used by wechaty with docker [\#1478](https://github.com/Chatie/wechaty/issues/1478)
- Add method in ContactSelf to update name and signature [\#1526](https://github.com/Chatie/wechaty/pull/1526)([windmemory](https://github.com/windmemory))
- remove useless param type in example code [\#1514](https://github.com/Chatie/wechaty/pull/1514)([lijiarui](https://github.com/lijiarui))
- feat: \[Prototype\] adding new data-ready event [\#1503](https://github.com/Chatie/wechaty/pull/1503)([windmemory](https://github.com/windmemory))
- Contact get alias from sync to async [\#1502](https://github.com/Chatie/wechaty/pull/1502)([lijiarui](https://github.com/lijiarui))
- add Contact self class [\#1498](https://github.com/Chatie/wechaty/pull/1498)([lijiarui](https://github.com/lijiarui))
- remove a outdated file-box function [\#1497](https://github.com/Chatie/wechaty/pull/1497)([lijiarui](https://github.com/lijiarui))
- Add api to explain which belongs to web API, which belongs to padchat API, which belongs… [\#1486](https://github.com/Chatie/wechaty/pull/1486)([lijiarui](https://github.com/lijiarui))
- move wechaty-getting-started from lijiarui to chatie [\#1482](https://github.com/Chatie/wechaty/pull/1482)([lijiarui](https://github.com/lijiarui))
- file\(\) desperate, use toFileBox instead [\#1481](https://github.com/Chatie/wechaty/pull/1481)([lijiarui](https://github.com/lijiarui))