发行说明

PycURL 7.45.3-2024-02-17

此版本修复了几个小问题,并添加了对几个libcurl选项的支持。此外,我们现在正在为Linux/MacOS/Windows构建轮子。

PycURL 7.45.2-2022-12-16

此版本修复了几个小问题,并添加了对几个libcurl选项的支持。

PycURL 7.45.1-2022-03-13

此版本修复了使用libcurl<7.64.1时的构建。

PycURL 7.45.0-2022-03-09

此版本增加了对SecureTransport SSL后端(MacOS)的支持,增加了取消设置多个选项的能力,增加了复制轻松句柄的能力,并允许对pycurl类进行子类化。

PycURL 7.44.1-2021-08-15

此版本修复了导致操作挂起的错误Python线程初始化逻辑。

PycURL 7.44.0-2021-08-08

此版本恢复了对Python2的尽力而为支持,添加了Python3.9和Python3.10alpha支持,并实现了对多个libcurl选项的支持。

目前还没有生产正式的Windows版本。

PycURL 7.43.0.6-2020年9月2日

此版本改进了各种系统上的SSL后端检测,添加了对libcurl的多SSL后端功能的支持,并添加了对多个libcurl选项的支持。

PycURL 7.43.0.5-2020年1月29日

此版本修复了CentOS/RHEL发行版上最近的python上的一个构建问题。

它还带回了Windows二进制文件。特别感谢gislevanen贡献了nghttp2 makefile。

PycURL 7.43.0.4-2020年1月15日

此版本改进了与Python3.8的兼容性,并删除了对Python2和Python3.4的支持。它还添加了wolfSSL支持和多接口的线程安全性。

PycURL 7.43.0.3-2019-06-17

这个版本主要修复了与openssl相关的安装问题,并修复了在不支持ftp的情况下编译的新libcurl中使用pycurl的能力。此外,姆贝特尔斯的支持也由约瑟夫·施莱霍夫提供。

PycURL 7.43.0.2-2018-06-02

此版本的亮点:

  1. 在curl对象中添加了实验性的perform-rs和perform-rb方法。它们分别以字符串和字节字符串的形式返回响应体。这些方法的目标是提高pycurl在典型用例中的可用性,特别是消除了设置Stringio/Bytesio对象来存储响应体的需要。

  2. 已经将getinfo_raw和errstr_raw方法添加到curl对象中,以返回字节字符串形式的传输信息,从而允许应用程序使用python的默认编码来检索不可解码的传输信息。

  3. errstr和“fail or error”异常现在替换不可编码的字节以提供可用的字符串;使用errstr_raw检索原始字节字符串。

  4. 当CurlMulti对象中使用curl对象时,不再需要保留对curl对象的引用-pycurl现在在内部维护此类引用。

  5. 官方的Windows版本现在包括HTTP/2和国际域名支持。

  6. Pycrl现在正式支持Boringssl。

  7. 已经进行了一些较小的改进并修复了错误。

PycURL 7.43.0.1-2017-12-07

此版本收集过去两年中所做的修复和改进,特别是更新Windows依赖项以解决DNS解析和TLS连接问题。

PycURL 7.43.0-2016-02-02

此版本的亮点:

  1. 现在为Windows系统构建了二进制车轮。

  2. setopt_string方法添加到curl对象中,以允许设置pycurl不知道的字符串libcurl选项。

  3. curl模块现在可以再次导入Windows。

  4. OpenSocketFunction回调现在在python 3上以字节的形式调用,如文档所述。

  5. 添加了对许多libcurl选项和常量的支持。

PycURL 7.21.5-2016-01-05

此版本的亮点:

  1. 现在完全实现了套接字回调 (CURLOPT_OPENSOCKETFUNCTIONCURLOPT_SOCKOPTFUNCTIONCURLOPT_CLOSESOCKETFUNCTION )不幸的是,这需要改变 OPENSOCKETFUNCTION API再次以向后不兼容的方式。支持 SOCKOPTFUNCTIONCLOSESOCKETFUNCTION 已添加到此版本中。 OPENSOCKETFUNCTION 现在支持Unix套接字。

  2. 许多其他libcurl选项和常量已添加到pycurl中。

  3. 什么时候? pycurl 模块初始化失败, ImportError 引发,而不是终止进程的致命错误。

  4. 官方windows版本的可用性已经大大提高:

    • 依赖项以静态方式链接,消除可能的dll冲突。

    • 使用openssl代替winsl。

    • libcurl与c-ares和libssh2相关联。

PycURL 7.19.5.3-2015-11-03

pycurl 7.19.5.2版本的清单中没有包含一些测试套件文件,导致无法从sdist tarball运行测试套件。由于卡米尔·杜德卡的帮助,现在这个问题得到了解决。

PycURL 7.19.5.2-2015-11-02

打破变化:debugfunction现在在python 3上使用字节而不是(unicode)字符串作为参数。

突破性的变化:curlmopt_u*选项常量从简单到多类移动。它们在pycurl模块中仍然可用。

ssl库检测再次得到改进,添加了libcurl dll选项到setup.py。

需要元组的选项现在也接受列表,反之亦然。

此版本修复了几个内存泄漏,并在释放问题后一次性使用。

添加了对几个新libcurl选项和常量的支持。

PycURL 7.19.5.1-2015-01-06

此版本主要修复libcurl 7.19.4到7.21.1的构建中断,例如CentOS附带的版本。

PycURL 7.19.5-2014-07-12

pycurl C代码已被显著地重新组织。curl、curllmulti和curlshare类现在已正确导出,而不是针对各自对象的工厂函数。pycurl api未更改。

文档已转换为Sphinx并重新组织。现在,docstring和独立文档都提供了更多信息。

文档不再包含在发布的发行版中。它可以通过运行从源代码生成 make docs .

测试不再包含在发布的发行版中。相反,对于示例代码,应该参考文档和快速启动示例。

官方的windows版本现在与zlib相连接。

PycURL 7.19.3.1-2014-02-05

这个版本恢复了pycurl在大多数情况下自动检测使用中的ssl库的能力,这要归功于andjelko horvt。

PycURL 7.19.3-2014-01-09

这个版本为pycurl提供了官方的python 3支持。几个GNU/Linux发行版以前提供了pycurl的python 3包;这些包基于不完整的补丁,在某些地方不正确。因此,pycurl 7.19.3及更高版本的行为可能与之前pycurl版本的非官方python 3包的行为不同。

为了总结Python3下的行为,pycurl将接受 bytes 它接受python 2下的字符串,并且只为方便起见接受包含ASCII码位的Unicode字符串。请参考 Unicodefile 有关进一步详细信息的文档。

出于兼容性的考虑,pycurl还将接受python 2上的unicode数据,这与python 3下的约束相同。

虽然Unicode和文件处理规则对于所有用例都是合理的,并且与以前的pycurl版本保持向后兼容性,但是请将此版本在python 3下的行为视为实验性的,并可能发生更改。

pycurl中另一个潜在的破坏性变化是对编译时和运行时SSL后端进行匹配的需求。请参阅自述文件了解如何将ssl后端指示为setup.py。