我想創建一個包含自定義rspec匹配器的gem。它們用於測試Web服務,因此這兩個字是RSpec和Webservice。現在,應該是寶石的名字;如何命名取決於他人的寶石的寶石?
rspec-webservice
rspec-matchers-webservice
rspec_webservice
...還是其他什麼東西?
的naming guidelines似乎並沒有解決這個情況:
rspec-webservice
似乎是正確的,因爲我在「添加功能的另一顆寶石」。但是這將對應於駐留在RSpec :: Webservice中的gem,並且我不是RSpec的維護者,因此可能會出現命名衝突。
rspec-matchers-webservice
是一種可能性,因爲這似乎是RSpec庫本身如何is organized。
rspec_webservice
是一個安全選項,因爲它只是在它自己的根名稱空間(RSpecWebservice)中,並且衝突將被排除,因爲rubygems系統將確保此名稱不能用於其他gem。
所有這些問題都與這樣一個RSpec擴展是否會在各種命名空間中運行甚至是完全分離。
編輯:我得到的一條建議是不去與任何這些,而是拿出一個非描述性的名字。類似於乘客的Web服務器。例如。 rspec-dogweather
。
沒有特別的約定。如果你正在創建發行版的gem,只要確保名稱不在[RubyGems](http://rubygems.org)上。 – zeantsoi
我想說肯定有一個約定:http://guides.rubygems.org/name-your-gem/ – Dogweather