YUM已死,DNF永生

2021-07-02 16:55:08 字數 906 閱讀 3388

這個應該是從fedora22開始的……

dnf從yum分支出來,使用

專注於效能的c語言庫hawkey進行依賴關係解析工作,大幅度提公升包管理操作效率並降低記憶體消耗,按原先的節奏本應該是fedora 22實現這一替代方案,隨著dnf 1.0版本的發布,這一刻終於到來。

這樣的激進更新是不可避免的,主要是由於yum不能「python 3 as default」,而dnf支援python 2和python3。(python 3分支自2023年發布以來積極開發了五年,已經成熟和穩定,而目前仍在維護的python 2分支不增加新特性,只接受bug和安全修正,它最早的版本是在2023年發布的。)與此同時,dnf python api和yum是完全不同的,這兩個專案中所有已知的不相容問題也都被記錄。

在fedora 22 core中只有dnf而yum專案正式宣告死亡。

可執行檔案被重新命名為yum-deprecated,以及yum呼叫的命令列被重新定向至dnf。這樣你就可以在乙個系統上同時保有yum和dnf。

啟動dnf專案的原因是yum的三個陷阱: l

undocumented api l

broken dependency solving algorithm l

inability to refactor internal functions。

最後被提及的問題是缺少檔案鏈結。yum外掛程式可以在yum**中使用任何method,這會造成yum utility因一些細小變化而突然崩潰。

dnf目標是為了避免yum執行的錯誤。從一開始所有暴露的api都被適當的記錄,且測試幾乎包含了每一次新的提交。這個專案採用了敏捷開發,會提供使用者一些優先順序功能實現。

dnf現在也在極力推進yum遷移至dnf,並改善使用者體驗。為了實現輕鬆遷移,已經將dnf遷移外掛程式匯入了包、組和事務元資料,實現從yum至新的fedora包管理器。

APP已死,服務永生

舉幾個簡單的例子來證明一下。雷軍創辦的小公尺為何會實現4年160倍的估值?有人說,雷軍會網際網路炒作。其實大錯特錯,我在 解密小公尺 網際網路思維下的商業奇蹟 一書中詳細的分析了成功的原因,順勢 定位 營銷 最高價效比,這其實根本沒有秘籍,小公尺仍然是一步步的用心做產品,做服務,並沒有以次充好。知名...

程式設計已死 碼農永生

datanitro是乙個excel外掛程式,它允許開發者在excel裡執行python指令碼。由於我對python是有所了解的,因此我再也不用學vba了。其實我並沒有在5分鐘內學會vba,我只是已經掌握了繞過它而達到相同效果的方法。對於我來說,這跟掌握了vba沒有什麼差別。大家還記得 黑客帝國 裡面...

傳統 Ajax 已死,Fetch 永生

注 這段 如果想執行,外面需要包乙個 async function 基於標準 promise 實現,支援 async await 同構方便,使用 isomorphic fetch 引入 promise 的 polyfill es6 promise 引入 fetch 探測庫 fetch detecto...