深度 QGIS開發與發布規則解析

2021-10-06 15:48:25 字數 1774 閱讀 6704

軟體產品版本號的一般形式為:主版本號.子版本號.[修正版本號],方括號內的修正版本號為可選項。

示例1:3.6

示例2:3.10.0

示例3:3.12.3

qgis子版本號遵循以下規則:

備註:qgis主版本號與修正版本號不受上述規則影響。

qgis的開發與發布均遵循既定的時間計畫,基本上是每四個月推出乙個新的(子)版本,其中前三個月用於開發新功能,最後乙個月進入功能凍結階段,主要進行測試、缺陷修復、翻譯和發布準備工作。新版本發布時,會建立乙個偶數(子)版本號的分支,而主分支將進入下乙個奇數(子)版本號。

從2.8版本開始,每發布三個子版本後,第三個子版本將自動成為長期版本(long term release,簡稱ltr)。該版本將長期維護,直至產生下乙個長期版本。qgis 2.12、2.18、3.4、3.10均為長期版本,其中3.10為當前的長期版本,而下乙個長期版本將會是qgis 3.16。

在功能凍結階段,不允許再新增新功能,關注點從功能增強轉變為使之更加穩定。期間,每夜構建的成果將被轉化為預發布版(prereleases)。

qgis使用者可以在各自的環境中對這些預發布版進行廣泛測試,以驗證有沒有問題。對於發現的問題,如果希望在下乙個發布的版本中解決,一定要在github**上及時提交反饋報告(github.com/qgis/qgis/issues)。只有在出現嚴重問題的情況下,才會向後移植(backports)到最新發布的版本中解決。由此可見,測試預發布版和報告問題是非常重要的工作。

在功能凍結階段,開發人員監視缺陷管理工具(bugtracker),著手修復所報告的問題,並將新增的功能更新到視覺化更新日誌(visual changelog)中。

隨著功能凍結的開始,翻譯檔案將被更新,以便翻譯人員可以開始工作。需要注意的是,這可能是乙個漸進的過程,因為儘管功能已凍結,但缺陷修復工作仍可能導致翻譯字串的改變。

在發布前兩周,啟動硬凍結(hard freeze),此後僅允許修復非常嚴重的問題和功能凍結之後引入的回歸(regressions)。

發布主版本和子版本時,都會建立版本分支、標記發布版本並準備打包工具。對於點發布版本(point releases),只需要標記版本並建立打包工具。

負責打包的人員開始製作安裝包,完成後即可對外宣布並更新官網。

與版本發布有關的事件有很多,最重要的是四個:ltr(長期版本)、lr(最新版本)、ff(功能凍結)、pr(點發布版本)。

從2.12版本開始,開發階段始終為12周,而凍結階段至少為5周。其餘時間用於延長長期版本(ltr)的凍結階段。

如果存在向後移植(backports)的情況,則每個月都會在最新版本(lr)分支和長期版本(ltr)分支上進行點發布(point releases)。

在發布後的前四個月,新的長期版本(ltr)即是當前的最新版本(lr)。在此階段,新的長期版本(ltr)不會替代長期版本儲存庫中原先的長期版本(ltr),直至下乙個最新版本(lr)發布。例如,2023年10月25日,3.10版本取代3.4版本成為長期版本(ltr),但直至2023年2月21日3.12版本發布後,長期版本儲存庫中的3.4版本才會被替換為3.10版本。

當前的長期版本qgis 3.10發布於2023年10月25日,3.x版本的最後乙個子版本3.18預計將於2023年2月19日發布。

吳建玲2023年5月30日

深度解析資料探勘關聯規則Apriori演算法

01 關聯規則挖掘背景和基本概念 如下所示的資料集,表中的每一行代表一次購買清單,注意我們只關心記錄出現與否,不關心某條記錄購買了幾次,如購買十盒牛奶也只計一次。資料記錄的所有項的集合稱為總項集,上表中的總項集 s 關聯規則 就是有關聯的規則,形式是這樣定義的 兩個不相交的非空集合x y,如果有 x...

非同步與執行緒深度解析

注 一般人們都把非同步與同步做比較,今天我們把非同步與執行緒做比較。請大家多多指教 批評。最近用c framework 2.0 寫了乙個系統,這個系統用了很多非同步和執行緒。當我用異常或執行緒操作 更新控制項資訊的時候會提示乙個異常資訊 執行緒間操作無效,從不是建立控制項的執行緒訪問控制項 以前用也...

潛規則與團隊開發

潛規則是各種規章制度之外,約定俗成的行為準則。之所以是 潛 規則,是因為這些規則往往不好冠冕堂皇地說出來,而只能由個人憑藉著自己的 才智 去領會。各個國家可能有不同的潛規則,潛規則在實際生活中的作用極不一樣,在團隊開發中也起著不同的作用。通過不斷完善企業的規章制度,可以盡可能地避免不好的潛規則,引導...