让需求直接指向 git 存储库而不是 PyPi 有什么好处?
What's the advantage of having requirements point directly to git repository rather than PyPi?
最近我问 Python 库维护者是否可以将他的库的新标记版本上传到 PyPI (https://pypi.org/)。
他说 PyPI 现在没那么重要了 [1].
是真的吗?人们(即你)确实倾向于不使用 PyPI 吗?如果是这样,你用什么来代替?为什么?
requirements.txt
显然允许您直接指定 git 存储库,直接使用 git+https://github.com/<repo>
跳过 PyPI。虽然我想不出比使用 PyPI 有什么特别的优势。
有没有图表支持这个说法?如果该声明属实,我预计 PyPI 的下载量(每个时间间隔)会及时减少。 PyPI 将此类数据发布到 Google BigQuery。现已查看,下载数如下:
202009 1565855136 -- the query was run on 11th of September 2020
202008 5155068175
202007 5409386519
202006 5211181171
202005 5108756961
202004 4812648839
202003 4670947975
202002 4067963794
202001 4155726766
201912 3867376444
201911 3845881964
201910 3922992929
201909 3492788322
201908 3374679723
201907 3338326277
201906 2998812162
201905 3028973146
201904 2436032402
201903 2732697164
使用此查询获得:
SELECT
SUBSTR(_TABLE_SUFFIX, 1, 6) AS `month`,
COUNT(1) AS num_downloads
FROM `the-psf.pypi.downloads*`
WHERE
_TABLE_SUFFIX BETWEEN FORMAT_DATE(
'%Y%m01', DATE_SUB(CURRENT_DATE(), INTERVAL 18 MONTH))
AND FORMAT_DATE('%Y%m%d', CURRENT_DATE())
GROUP BY `month`
ORDER BY `month` DESC
我知道这个问题可能没有正确答案,因此可能没有遵循 Whosebug 提出的所有问题标准。但是我想不出更好的地方来问这个问题。
PyPI is not so important nowadays Is is true?
完全没有。在 PyPI 上发布的优势:
可以在 PyPI 上发布 wheel,因此 pip install package
下载 platform-specific wheel。
PyPI 托管在 CDN(内容分发网络)上,因此从 PyPI 下载速度很快。
3a. pip
缓存下载的包,因此它不会 re-download 每个虚拟环境的包。它通过它们的原始 URL 进行缓存,并且 PyPI 的 URL 是稳定的。
3b。 pip
非常糟糕地缓存克隆的存储库。通常它 re-clones a-new 整个存储库。
最近我问 Python 库维护者是否可以将他的库的新标记版本上传到 PyPI (https://pypi.org/)。 他说 PyPI 现在没那么重要了 [1].
是真的吗?人们(即你)确实倾向于不使用 PyPI 吗?如果是这样,你用什么来代替?为什么?
requirements.txt
显然允许您直接指定 git 存储库,直接使用 git+https://github.com/<repo>
跳过 PyPI。虽然我想不出比使用 PyPI 有什么特别的优势。
有没有图表支持这个说法?如果该声明属实,我预计 PyPI 的下载量(每个时间间隔)会及时减少。 PyPI 将此类数据发布到 Google BigQuery。现已查看,下载数如下:
202009 1565855136 -- the query was run on 11th of September 2020
202008 5155068175
202007 5409386519
202006 5211181171
202005 5108756961
202004 4812648839
202003 4670947975
202002 4067963794
202001 4155726766
201912 3867376444
201911 3845881964
201910 3922992929
201909 3492788322
201908 3374679723
201907 3338326277
201906 2998812162
201905 3028973146
201904 2436032402
201903 2732697164
使用此查询获得:
SELECT
SUBSTR(_TABLE_SUFFIX, 1, 6) AS `month`,
COUNT(1) AS num_downloads
FROM `the-psf.pypi.downloads*`
WHERE
_TABLE_SUFFIX BETWEEN FORMAT_DATE(
'%Y%m01', DATE_SUB(CURRENT_DATE(), INTERVAL 18 MONTH))
AND FORMAT_DATE('%Y%m%d', CURRENT_DATE())
GROUP BY `month`
ORDER BY `month` DESC
我知道这个问题可能没有正确答案,因此可能没有遵循 Whosebug 提出的所有问题标准。但是我想不出更好的地方来问这个问题。
PyPI is not so important nowadays Is is true?
完全没有。在 PyPI 上发布的优势:
可以在 PyPI 上发布 wheel,因此
pip install package
下载 platform-specific wheel。PyPI 托管在 CDN(内容分发网络)上,因此从 PyPI 下载速度很快。
3a. pip
缓存下载的包,因此它不会 re-download 每个虚拟环境的包。它通过它们的原始 URL 进行缓存,并且 PyPI 的 URL 是稳定的。
3b。 pip
非常糟糕地缓存克隆的存储库。通常它 re-clones a-new 整个存储库。