我有一些紅寶石腳本寫在1.8.6
。現在我想升級到1.9.2
或任何其他穩定的版本。升級紅寶石1.8.6到紅寶石1.9.2
我在這個腳本中有一些寶石和紅寶石內置庫,所以如果我升級到紅寶石1.9.2
我可以面對什麼樣的問題?
我有一些紅寶石腳本寫在1.8.6
。現在我想升級到1.9.2
或任何其他穩定的版本。升級紅寶石1.8.6到紅寶石1.9.2
我在這個腳本中有一些寶石和紅寶石內置庫,所以如果我升級到紅寶石1.9.2
我可以面對什麼樣的問題?
在Ruby中,我們很多人面對這類情況,在升級到新的版本可能會破壞你的代碼,其應用在一老一做工精細。
偉大的先生韋恩大腸桿菌塞金也面對它,並創造了一個偉大的工具來解決這個叫rvm。
簡而言之RVM讓您安裝不同版本的Ruby(1.8.7或1.9.2爲例),並且這些之間輕鬆切換用一個簡單的
rvm use 1.8.7
你應該去https://rvm.io/並學習如何在您的機器上安裝rvm。然後你可以安裝你當前的ruby版本和你想升級的版本。在兩者之間切換並測試腳本是否正常工作。這至少應該爲你節省一些時間。
這幾句是常見的我遇到升級時:
如果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
新的行爲。
只是升級,看看會發生什麼。如果出現問題,您將收到錯誤消息。 – three