溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么開源你的Python庫

發(fā)布時間:2021-10-26 17:27:51 來源:億速云 閱讀:165 作者:小新 欄目:互聯網科技

這篇文章主要介紹了怎么開源你的Python庫,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

1、源碼

將代碼放在 GitHub 上,這里有很多開源項目,并且人們很容易提交拉取請求。

2、許可證

選擇一個開源許可證。一般來說 MIT 許可證是一個挺好的寬容許可證。如果你有特定要求,Creative Common 的選擇許可證可以指導你完成其它選擇。最重要的是,在選擇許可證時要記住三條規(guī)則:

  • 不要創(chuàng)建自己的許可證。

  • 不要創(chuàng)建自己的許可證。

  • 不要創(chuàng)建自己的許可證。

3、README

將一個名為 README.rst 的文件(使用 ReStructured Text 格式化)放在項目樹的頂層。

GitHub 將像 Markdown 一樣渲染 ReStructured Text,而 ReST 在 Python 的文檔生態(tài)系統(tǒng)中的表現更好。

4、測試

寫測試。這對你來說沒有用處。但對于想要編寫避免破壞相關功能的補丁的人來說,它非常有用。

測試可幫助協作者進行協作。

通常情況下,如果可以用 pytest 運行就***了。還有其他測試工具 —— 但很少有理由去使用它們。

5、樣式

使用 linter 制定樣式:PyLint、Flake8 或者帶上 --check 的 Black 。除非你使用 Black,否則請確保在一個文件中指定配置選項,并簽入到版本控制系統(tǒng)中。

6、API 文檔

使用 docstrings 來記錄模塊、函數、類和方法。

你可以使用幾種樣式。我更喜歡 Google 風格的 docstrings,但 ReST docstrings 也是一種選擇。

Sphinx 可以同時處理 Google 風格和 ReST 的 docstrings,以將零散的文檔集成為 API 文檔。

7、零散文檔

使用 Sphinx。(閱讀我們這篇文章。)教程很有用,但同樣重要的是要指明這是什么、它有什么好處、它有什么壞處、以及任何特殊的考慮因素。

8、構建

使用 tox 或 nox 自動運行測試和 linter,并構建文檔。這些工具支持“依賴矩陣”。這些矩陣往往會快速增長,但你可以嘗試針對合理的樣本進行測試,例如 Python 版本、依賴項版本以及可能安裝的可選依賴項。

9、打包

使用 setuptools 工具。寫一個 setup.py 和一個 setup.cfg。如果同時支持 Python 2 和 3,請在 setup.cfg 中指定 universal 格式的 wheel。

tox 或 nox 應該做的一件事是構建 wheel 并對已安裝的 wheel 進行測試。

避免使用 C 擴展。如果出于性能或綁定的原因一定需要它們,請將它們放在單獨的包中。正確打包 C 擴展可以寫一篇新的文章。這里有很多問題!

10、持續(xù)集成

使用公共持續(xù)工具。TravisCI 和 CircleCI 為開源項目提供免費套餐。將 GitHub 或其他倉庫配置為在合并拉請求之前需要先通過檢查,那么你就不必擔心在代碼評審中告知用戶修復測試或樣式。

11、版本

使用 SemVer 或 CalVer。有許多工具可以幫助你管理版本:incremental、bumpversion 和 setuptools_scm 等都是 PyPI 上的包,都可以幫助你管理版本。

12、發(fā)布

通過運行 tox 或 nox 并使用 twine 將文件上傳到 PyPI 上發(fā)布。你可以通過在 DevPI 中“測試上傳”。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么開源你的Python庫”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業(yè)資訊頻道,更多相關知識等著你來學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI