vault backup: 2025-01-10 13:43:35
This commit is contained in:
parent
6f1a9d3321
commit
22a4841d61
|
@ -13,12 +13,12 @@
|
||||||
"state": {
|
"state": {
|
||||||
"type": "markdown",
|
"type": "markdown",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "組織/EverfortuneAI/{Note} Packaging Python Project.md",
|
"file": "組織/EverfortuneAI/{Note} Nox.md",
|
||||||
"mode": "source",
|
"mode": "source",
|
||||||
"source": false
|
"source": false
|
||||||
},
|
},
|
||||||
"icon": "lucide-file",
|
"icon": "lucide-file",
|
||||||
"title": "{Note} Packaging Python Project"
|
"title": "{Note} Nox"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -140,13 +140,14 @@
|
||||||
"canvas:Create new canvas": false,
|
"canvas:Create new canvas": false,
|
||||||
"daily-notes:Open today's daily note": false,
|
"daily-notes:Open today's daily note": false,
|
||||||
"templates:Insert template": false,
|
"templates:Insert template": false,
|
||||||
"command-palette:Open command palette": false
|
"command-palette:Open command palette": false,
|
||||||
|
"obsidian-git:Open Git source control": false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"active": "e0251782d53c0c60",
|
"active": "e0251782d53c0c60",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
"README.md",
|
|
||||||
"組織/EverfortuneAI/{Note} Packaging Python Project.md",
|
"組織/EverfortuneAI/{Note} Packaging Python Project.md",
|
||||||
|
"README.md",
|
||||||
"Test.md",
|
"Test.md",
|
||||||
"組織/EverfortuneAI/resources/should_setup_py_be_deleted.png",
|
"組織/EverfortuneAI/resources/should_setup_py_be_deleted.png",
|
||||||
"組織/EverfortuneAI/resources",
|
"組織/EverfortuneAI/resources",
|
||||||
|
|
|
@ -14,6 +14,32 @@ tags:
|
||||||
|
|
||||||
- Abstract
|
- Abstract
|
||||||
- 在將Python專案打包時會遇到填寫依賴套件及其版本的問題,開發者必須逐一測試Python版本與依賴套件版本之間(甚至是跨平台)不同組合的可運行性,而Nox正是為了可以將此流程自動化而生
|
- 在將Python專案打包時會遇到填寫依賴套件及其版本的問題,開發者必須逐一測試Python版本與依賴套件版本之間(甚至是跨平台)不同組合的可運行性,而Nox正是為了可以將此流程自動化而生
|
||||||
- Concept
|
|
||||||
- Steps
|
- Steps
|
||||||
- Note
|
1. 在虛擬環境中安裝Nox(`pip install nox`)
|
||||||
|
2. 在Package資料夾中產生*noxfile.py* 並撰寫測試程式碼(範例程式碼可見Note)
|
||||||
|
3. 於終端機輸入`nox` 開始進行測試
|
||||||
|
- Note
|
||||||
|
- 以下為*noxfile.py*範例程式碼(透過環境是否能順利執行單元測試來判別套件之間的匹配性)
|
||||||
|
|
||||||
|
```python
|
||||||
|
# noxfile.py
|
||||||
|
#
|
||||||
|
# author: deng
|
||||||
|
# date : 20250110
|
||||||
|
|
||||||
|
import nox
|
||||||
|
|
||||||
|
|
||||||
|
@nox.session(python=['3.10', '3.11', '3.12'])
|
||||||
|
@nox.parametrize('numpy', ['1.26', '2.0'])
|
||||||
|
@nox.parametrize('scikit_learn', ['1.5', '1.6'])
|
||||||
|
def test_flexibility(session, numpy, scikit_learn):
|
||||||
|
|
||||||
|
# Install package dependencies
|
||||||
|
session.install(f'numpy=={numpy}')
|
||||||
|
session.install(f'scikit-learn=={scikit_learn}')
|
||||||
|
|
||||||
|
# Test
|
||||||
|
session.install('pytest')
|
||||||
|
session.run('pytest')
|
||||||
|
```
|
Loading…
Reference in New Issue