对npm依赖进行本地修改

我有一个nodejs项目,在我的package.json文件中包含一个库( hubot-xmpp )作为依赖项。 然而,这个图书馆有一个问题,我有一个解决scheme,但这种变化不会回到上游,因为这是一个非常具体的情况。 为了进一步复杂化, hubot-xmpp依赖于库node-xmpp ,我还必须修补OpenForm和TLS握手问题。

因为这些库是由npm自动安装的,所以如果我部署到heroku或(我假设)运行npm update ,我的更改将不会被包含。

我对nodejs不是很有经验,通常如何处理这些情况。 总结:

  • 我的应用程序将作为依赖项引入hubot-xmpp
  • 我需要修补hubot-xmpp
  • hubot-xmpp对node-xmpp具有依赖性
  • 我需要修补node-xmpp

我如何以一种理智的方式解决这个问题? 我叉这两个项目,应用我的补丁,更改我的依赖hubot-xmpp指向我的叉,然后更新hubot-xmpp分叉中的依赖项指向我的fork-xmpp? 我想这似乎是一种理智的方式,但我不知道是否有更好的方法。