2012-09-25 137 views
-4

我有一些紅寶石腳本寫在1.8.6。現在我想升級到1.9.2或任何其他穩定的版本。升級紅寶石1.8.6到紅寶石1.9.2

我在這個腳本中有一些寶石和紅寶石內置庫,所以如果我升級到紅寶石1.9.2我可以面對什麼樣的問題?

+1

只是升級,看看會發生什麼。如果出現問題,您將收到錯誤消息。 – three

回答

1

在Ruby中,我們很多人面對這類情況,在升級到新的版本可能會破壞你的代碼,其應用在一老一做工精細。

偉大的先生韋恩大腸桿菌塞金也面對它,並創造了一個偉大的工具來解決這個叫rvm

簡而言之RVM讓您安裝不同版本的Ruby(1.8.7或1.9.2爲例),並且這些之間輕鬆切換用一個簡單的

rvm use 1.8.7 

你應該去https://rvm.io/並學習如何在您的機器上安裝rvm。然後你可以安裝你當前的ruby版本和你想升級的版本。在兩者之間切換並測試腳本是否正常工作。這至少應該爲你節省一些時間。

1

這幾句是常見的我遇到升級時:

如果require local_file在1.8.x的你會發現,在當前目錄已經從負載路徑中移除,1.9.x的介紹require_relative用於此目的。

字符串可以稍微不同地處理。

1.9.2 c? 
=> c 
1.8.7 c? 
=> 99 

在1.9.2中字符串數組與1.8.7 Array.inspect相同,即添加標點符號。

1.9.2 [1,2,3].to_s 
=> 1,2,3 
1.8.7 [1,2,3].to_s 
=> 123 

對於1.8.7使用inspect舊的行爲在1.9.2使用join新的行爲。

A review of other changes