Python 新提案 PyBI:分发 Python 二进制文件的标准格式


CPython 核心开发者 Nathaniel J. Smith 提交了一项新提案:

  • PEP 711 —— PyBI: a standard format for distributing Python Binaries

根据该提案的描述,PyBI (Python Binary) 是用于分发 Python 二进制文件的标准格式。Nathaniel 对 PyBI 的概括如下:它不是预构建的 Python 软件包,而是预构建的 Python 解释器。

此提案定义了一个标准的打包文件格式来保存预构建的 Python 解释器,并尽可能重用现有的 Python 打包标准。

命名格式:{distribution}-{version}[-{build tag}]-{platform tag}.pybi

示例:

  • cpython-3.9.3-manylinux_2014.pybi
  • cpython-3.10b2-win_amd64.pybi

详情查看原始草案:https://github.com/njsmith/posy/blob/main/pybi/README.md

PyBI 构建工具:https://github.com/njsmith/pybi-tools

pybi 构建示例:https://pybi.vorpus.org/

Nathaniel 还介绍道,他希望 PyBI 能像 Pypi.org 一样——为所有流行平台上的所有 Python 版本预构建软件包,以便自动化工具可以轻松获取其中任何一个并进行设置。让尝试 Python 预发布、在 CI 中修复 Python 版本、创建一个临时环境来重现仅在特定 Python 点版本上发生的错误报告等都变得快速和容易。


相關推薦

2022-05-19

字节码。目前 PEP 659 提案的工作基本完成,但 for 循环和二进制操作的动态优化仍有待完成。 在提速 25% 的同时,Python 3.11 仍有一些需要改善的地方,比如 Python 在 3.11 中的内存消耗与 3.10 中的基本相同。此外还需关注 C 扩展的

2023-10-27

CPython 核心开发者 Thomas Wouters 代表 Python 指导委员会宣布:正式接受 PEP 703 提案。 PEP 703(Making the Global Interpreter Lock Optional,让全局解释器锁成为可选),简称 no-GIL,也被称为自由线程 (free-threaded)。 根据提案的描述

2023-01-13

去年的2022 Python 语言峰会上,开发者 Sam Gross 带来了新提案:删除全局解释器锁 GIL,解放多线程性能。但由于 GIL 历史悠久,许多官方/非官方的 Python 包和模块都深度融合了 GIL 模块,彻底移除 GIL 功能可能会对生态造成影响

2023-06-28

。 一个简单且相对快速的依赖解析器,特别是对于大的二进制包发布。 兼容 PEP 517 的构建后端,用于构建发布包 (源码格式与 wheel 格式) 灵活且强大的插件系统 PEP 621 元数据格式 功能强大的用户脚本 像 pnpm&n

2022-05-18

据 Python 基金会博客介绍,开发者 Sam Gross 在 2022 Python 语言峰会上带来了一个新提案:完全移除 CPython 解释器的 GIL- 全局解释器锁,使 Python 程序获得更快的性能 —— 尤其是多线程程序。 Python 有多个版本,包括 JVM 、 .NET CLR

2023-07-11

Meta 正致力于推动 Python 项目采纳 PEP 703 提案,以改进 Python 代码的多线程性能。PEP 703 指的是 Making the Global Interpreter Lock Optional in CPython,让全局解释器锁在 CPython 中成为可选。 该提案建议向 CPython 添加构建配置 (--disable-gil),

2023-05-06

I 基础设施公司 Modular AI 最近发布的编程语言,它结合了 Python 的语法以及 C 语言的可移植性和性能,目标是使其成为 AI 研究和生产的理想选择。 根据介绍,Mojo 不仅兼容 Python,还比它快 35000 倍。详情查看:AI 开发有了新编程

2023-04-01

Python 指导委员会拒绝了 PEP 582 提案——Python local packages directory,即本地包目录。 此 PEP 提议向 Python 添加一种自动识别__pypackages__目录的机制,并优先导入安装在此位置的包,而不是用户或全局站点包。这将避免创建、激活或

2022-06-24

92) Ruby 将“支持 x64-mingw-ucrt 平台上的预构建 Ruby 二进制文件 ( #29684 )”向后移植到 1.47.x。( #29868 ) 升级 ruby​​ rake-compiler-dock images(并停止在 mac 上构建 ruby​​ gem 工件,以支持 rake-compile-dock darwin 构

2022-04-09

效地开发 OpenCL 应用程序和库。 此次更新后的 OpenCL SDK 以二进制的形式提供,以避免编译源码的繁琐过程,但目前官方二进制文件仅限于 Windows x86 和 Windows x64 。此外,新的 SDK 包含 OpenCL 指南入门,提供了有关使用 OpenCL 进行开

2022-09-10

况以缺少加载点或找不到指定文件进行替代。 更新的二进制包 适用于Windows-x86平台的已编译的可执行文件包 适用于Windows-x64平台的已编译的可执行文件包 不兼容的更新 无 Demo展示 通过海龟库,交互式绘图

2022-11-07

Python 3.12.0 首个 alpha 版本已发布,这是 Python 3.12 的早期开发者预览版。 目前 Python 3.12 处于开发阶段,3.12.0a1 是计划中的七个 alpha 版本中的第一个,许多新特性仍在计划和编写之中。下面简单介绍与 3.11 相比,3.12 系列的主

2022-12-09

可以在 KCL 发布页面 获得更多详细发布信息和 KCL 二进制下载链接。 背景​ KCL 是一个开源的基于约束的记录及函数语言,期望通过成熟的编程语言技术和实践来改进对大量繁杂配置和策略的编写,致力于构建围绕配置

2022-11-17

Python 3.12.0 第二个 alpha 版本已发布,这是 Python 3.12 的早期开发者预览版。 目前 Python 3.12 处于开发阶段,3.12.0a2 是计划中的七个 alpha 版本中的第二个,许多新特性仍在计划和编写之中。下面简单介绍与 3.11 相比,3.12 系列的