基于bsdiff(v4.3)的node扩展模块
最近在做热更新有关的事情,需要实现增量热更的功能,调研发现bsdiff算法可以实现二进制文件的diff和patch Binary Diff。官方网站提供了基于C的算法实现,有人基于此实现了node的扩展模块并发布到了npm,例如bsdiff和node-bsdiff。但是bsdiff在node v7.6.0版本下安装失败,而node-bsdiff是基于旧版本算法实现,与v4.3版本不兼容,生成的patch包无法使用,而且只提供了diff方法,没有提供patch方法。因此,我基于最新的bsdiff v4.3的C代码实现了一个新的node扩展模块,提供了diff和patch方法。利用它,可以实现二进制文件的差分与合并。分享出来,供有需要的朋友使用。 [Github: https://github.com/tsyeyuanfeng/bsdp] [npm: https://www.npmjs.com/package/bsdp]
2 回复
顶,npm 收藏了
赞