我的VCR gem目前依赖于FakeWeb。我拿到了,在我的宝石规范中声明为依赖项。
我正在与WebMock (一个提供与FakeWeb类似功能的库)的作者一起工作,以使VCR也能与WebMock一起工作,这样VCR的用户就可以使用FakeWeb或WebMock作为http顽固库。
当需要发布下一个版本的VCR时,我不确定处理这些依赖关系的最佳方法。VCR将依赖于WebMock或FakeWeb (但两者都不需要),并且对两者都有特定的版本要求。我可以将两者作为依赖项添加到我的gem规范中,但是当您使用邦德勒时,它会捆绑所有的gem依赖项--因此FakeWeb和Webmock都将与应用程序捆绑在一起。
我一直在想,也许我不会将任何一个gem声明为依赖项,并在运行时检查其中一个库的存在(同时检查版本),如果支持的版本中没有一个库,则向用户提供一个有用的错误消息。但我也不太喜欢这种方式。
是否有人建议以最佳方式来处理“任”或“创业板”依赖关系?
谢谢!
发布于 2010-04-11 14:31:07
由于不可能声明任何/或依赖项,所以我认为在go规范中不指定任何依赖项并检查运行时是否存在任何一个库是可行的。
https://stackoverflow.com/questions/2614525
复制相似问题