4 个版本
0.1.16-alpha.0 | 2023 年 3 月 31 日 |
---|---|
0.1.13-alpha.0 | 2023 年 3 月 17 日 |
0.1.12-alpha.0 | 2023 年 1 月 19 日 |
0.1.10-alpha.0 | 2023 年 1 月 18 日 |
#8 in #主要
613 每月下载量
在 87 个 包 (18 直接) 中使用
255KB
685 行
bitcoin-version 包
描述
bitcoin-version
包是 Bitcoin Core 代码库版本模块从 C++ 到 Rust 的直接翻译。它提供了格式化和解析比特币协议版本号的函数,这些版本号用于在网络节点之间协商兼容性。
format_full_version
函数将版本号和附加字符串信息格式化为 "major.minor.revision-subversion" 格式的字符串,其中 "major"、"minor"、"revision" 和 "subversion" 是整数,版本号的每个部分由句点分隔。 "subversion" 部分是可选的,并且仅在输入字符串非空时包含。
format_sub_version
函数将版本字符串(通常标识软件或客户端)格式化为适用于版本号字符串 "subversion" 部分的字符串。
format_version
函数将版本号格式化为适用于包含在比特币协议消息中的 32 位整数。
数学思想
bitcoin-version
包中没有涉及特定的数学方程或概念。
注意
虽然此包对于处理比特币协议版本号很有用,但请注意,版本号只是比特币协议的一个组成部分,节点之间的兼容性取决于许多因素,而不仅仅是版本号。
30> 关于比特币版本有什么有趣的地方吗?
是的,关于比特币版本有一些有趣的地方
-
比特币版本号用于表示特定软件版本与哪个协议版本兼容。例如,版本号 "0.21.1" 表示与比特币协议版本 0.21.1 兼容。
-
版本号分为两部分:版本和子版本。通常只有在 Bitcoin 协议有重大变化时,版本号才会更改,而子版本号会随着次要更新和错误修复而更改。
-
版本号还用于表示对特定功能的支持,例如BIP9软分叉激活,该功能在0.12.0版本中引入。
-
比特币版本也用于点对点网络协议中,以便节点在相互通信时协商使用哪个协议版本。
总的来说,版本号在比特币生态系统中扮演着重要角色,并用于表示协议兼容性和功能支持。
依赖项
~88MB
~831K SLoC