PyPDF2 棄用過程

2023-03-30 16:02 更新

PyPDF2 努力成為當(dāng)前用戶和新用戶的優(yōu)秀圖書館。我們謹(jǐn)慎地引入潛在的重大變化,但如果它們從長遠(yuǎn)來看能為社區(qū)提供價(jià)值,我們就會(huì)這樣做。

我們希望并認(rèn)為棄用不會(huì)很快再次發(fā)生。如果他們這樣做,用戶可以依賴以下過程。

語義版本控制

PyPDF2 使用語義版本控制。如果您想避免破壞性更改,請使用依賴固定(也稱為版本固定)。在 Python 中,這是通過在文件中指定要使用的確切版本來完成的 requirements.txt??梢灾С帜墓ぞ?code>pip-compile來自 pip-tools.

如果您使用的是Poetry,則文件已完成 poetry.lock。

PyPDF2 如何棄用功能

假設(shè) PyPDF2 的當(dāng)前版本是x.y.z. 經(jīng)過討論(例如通過 GitHub 問題),我們決定刪除一個(gè)類/函數(shù)/方法。這是我們的做法:

  1. x.y.(z+1): 添加棄用警告。如果有替換,也會(huì)引入替換,并且警告會(huì)告知更改及其發(fā)生的時(shí)間。這些文檔讓用戶了解棄用、棄用的時(shí)間和新功能。CHANGELOG 通知它。

  2. (x+1).0.0:通過將 DeprecationWarnings 替換為 DeprecationErrors,以破壞性方式刪除/更改代碼。我們這樣做是為了幫助那些以前沒有看過警告的人。CHANGELOG 通知它。

  3. (x+2).0.0:刪除了 DeprecationErrors。

這意味著用戶在 CHANGELOG 中有 3 個(gè)警告,一個(gè) DeprecationWarning 直到下一個(gè)主要版本,一個(gè) DeprecationError 直到那個(gè)之后的主要版本。

請注意,添加警告對于某些用戶來說可能是一項(xiàng)重大更改;很可能只是在 CI 中。這意味著需要對其進(jìn)行適當(dāng)記錄。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號