2012-04-20 14 views
1

我們有一個寶石foo曾經有一個依賴我們的另一個寶石bar。但是現在我們已經將bar代碼直接拉入foo如何使用我的gemspec刪除另一個寶石

下次我們的用戶升級foo時,是否有可能刪除bar寶石?

+1

可能要接受一些回答您以前的問題。 – 2012-04-20 21:08:48

回答

0

我似乎找到了一個快速和骯髒的解決方案,類似於adding conditional install time deps。不幸的是,我還沒有想出如何告訴用戶,因爲gem壓縮擴展輸出,除非用戶指定詳細。

在EXT/mkrf_conf.rb

,我說:

require 'rubygems' 
require 'rubygems/uninstaller.rb' 
begin 
    gem = Gem::Specification.find_by_name('other_gem'); 
    Gem::Uninstaller.new('other_gem').uninstall 
rescue Gem::LoadError 
end