嗨,我正在构建一个依赖于multi_json gem的gem,这基本上是所有其他json编码器/解码器的适配器。
所以一个用户在我的gem上提交了一个问题。他有问题,因为multi_json在其中一个适配器中有一个小错误,后来在multi_json的末端修复,所以这不是我的问题。
我想知道我是否应该改变我的gemspec硬编码依赖于固定版本的multi_json。我认为直接告诉用户明确指定使用固定版本的multi_json会更容易。这样我的依赖就不会太严格,也不会和其他使用multi_json的gem发生冲突。
对此有何看法?
您不必完全锁定依赖版本,只需确保您的版本已经修复了上述错误。例如,
gem 'multi_json', '> 1.9.1'
它迟早会出现在rubygems上,你肯定不会对两次遇到同样的错误感兴趣。
我的观点是,你的库目前的可靠性比未来发展的不便更重要,这些不便可能会发生,也可能不会发生。
至于告诉你的用户什么,他们应该已经听说了(如果他们还没有,你可以在README.md
中提醒他们),大多数关键问题通常在一天内解决,可以在master
中找到。因此,如果他们想利用最新的修复(和最新的新错误),他们可以指定github
作为源代码:
gem 'your_gem', github: 'lulalala/your_gem'