跳转到主要内容

AutoRest Swagger生成器Python客户端运行时。

项目描述

https://travis-ci.org/Azure/msrest-for-python.svg?branch=master https://codecov.io/gh/azure/msrest-for-python/branch/master/graph/badge.svg

安装

安装

$ pip install msrest

发布历史

2022-06-10 版本 0.7.1

错误修复

  • 正确声明msrest为Python 3.6及以上版本,以提高清晰度 #251

2022-06-07 版本 0.7.0

功能

  • 添加azure-core作为安装要求 #247

  • msrest.exceptions中的SerializationErrorDeserializationError替换为azure.core中的那些 #247

错误修复

  • LROPoller中的类型注解(感谢akx) #242

感谢kianmeng在文档中的错别字修复。

2021-01-26 版本 0.6.21

错误修复

  • 修复了在0.6.20中引入的failsafe_deserialize #232

2021-01-25 版本 0.6.20

功能

  • Deserializer对象添加failsafe_deserialize方法。 #232

  • 在序列化对象时,正确序列化datetimedatetimetimedeltaDecimal。 #224

2020-09-08 版本 0.6.19

错误修复

  • 修复随机Model对象的序列化问题 #220

  • 修复Py2和对象模式下的unicode字符串序列化问题 #221

2020-07-27 版本 0.6.18

功能

  • 支持同一XML节点中的属性/文本 #218

2020-06-25 版本 0.6.17

错误修复

  • 修复XML和discriminator问题 #214

2020-06-09 版本 0.6.16

错误修复

  • 修复具有命名空间和属性的XML解析问题 #209

功能

  • 添加py.typed以支持mypy

2020-06-04 版本 0.6.15

错误修复

  • 修复0.6.14中引入的RFC回归(RFC解析的日期不再可拾取) #208

  • 修复具有命名空间的XML解析问题 #206

感谢ivanst0的贡献

2020-05-18 版本 0.6.14

错误修复

  • 修复某些复杂扁平化场景中的“from_dict”问题 #204

  • 修复如果机器区域不是英语,则RFC日期解析的问题 #201

2020-04-07 版本 0.6.13

错误修复

  • 修复如果中间节点为None,则反序列化和扁平化的问题 #198

  • 修复最小/最大检查的验证异常消息 #199

2020-04-06 版本 0.6.12

功能

  • 添加“time”序列化/反序列化器 #196

2020-01-30 版本 0.6.11

功能

  • 即使给定的Model没有XML元数据,现在也可以启用XML模式 #184

  • 添加Kerberos身份验证 #186

  • 改进如果期望的类型是字典而提供的是其他内容时的错误消息 #188

错误修复

  • 修复查询中数组的逗号分隔序列化问题 #186

  • 修复某些复杂场景中基本类型的验证问题 #189

感谢catatonicprime的贡献

2019-09-04 版本 0.6.10

功能

  • XML模式现在支持OpenAPI附加属性 # 174

错误修复

  • 接受“is_xml”关键字参数以强制XML序列化 #178

  • 如果接收到的元素不是ElementTree,则禁用XML反序列化 #178

  • “null”枚举反序列化为None,而不是“None” #173

  • 修复Python 2.7和XML模式中的某些UTF8编码问题 #172

2019-07-24 版本 0.6.9

功能

  • 接受JSON mimetypes的扩展作为有效的JSON #167

2019-06-24 版本 0.6.8

错误修复

  • 如果模型包含UTF8字符,则Python 2.7中无法序列化XML #165

  • 如果body包含UTF8字符,则Python 2.7中无法反序列化HTTP响应为XML #165

  • 加载序列化的配置失败,出现NoOptionError时的NameError #162

感谢cclauss的贡献

2019-06-12 版本 0.6.7

功能

  • 为EventGrid添加DomainCredentials凭据

感谢kalyanaj的贡献

2019-03-21 版本 0.6.6

错误修复

  • 使0.6.x系列再次与pyinstaller兼容

  • sdist现在包含测试

感谢dotlambda的贡献

2019-03-11 版本 0.6.5

错误修复

  • 修复如果提供除法,则整数列表序列化的问题 #151

  • 修复带有BOM的UTF8解析问题 #145

感谢eduardomourar的贡献

2019-01-09 版本 0.6.4

错误修复

  • 修复在Autorest范围外使用时凭据配置的回归问题 #135

2019-01-08 版本 0.6.3

功能

  • 更新实验性异步支持。需要Autorest.Python 4.0.64。

2018-11-19 版本 0.6.2

错误修复

  • 修复TYPE_CHECKING模式中的循环依赖问题 #128

2018-10-15 版本 0.6.1

错误修复

  • 删除不必要的冗余“警告”日志 #126

2018-10-02 版本 0.6.0

功能

  • 如果存在,环境变量AZURE_HTTP_USER_AGENT现在将注入到UserAgent部分

  • 新的预览 msrest.universal_http模块。提供通用HTTP管理工具(同步/异步、requests/aiohttp等)

  • 新的预览 msrest.pipeline实现

  • 向Configuration实例添加新属性

    • http_logger_policy - 处理HTTP日志的策略

    • user_agent_policy - 处理UserAgent的策略

    • pipeline - SDK客户端当前使用的管道

    • async_pipeline - 当前由异步SDK客户端使用的异步管道

  • 现在安装“msrest[async]”将安装实验性的异步支持。仅适用于Autorest.Python 4.0.63。

破坏性更改

  • 在0.5.0版本中引入的HTTPDriver API已被Pipeline实现所取代。

  • 以下类已从“msrest.pipeline”移动到“msrest.universal_http”

    • ClientRedirectPolicy

    • ClientProxies

    • ClientConnection

  • 以下类已从“msrest.pipeline”移动到“msrest.universal_http.requests”

    • ClientRetryPolicy

错误修复

  • 如果与“object”类型一起使用Python 2的“long”问题修复 #121

感谢robgolding的贡献

2018-09-04 版本 0.5.5

错误修复

  • 修复了声明了additional_properties并使用“自动模型”语法(“自动模型”是指将字典传递给命令并自动创建模型的能力)的序列化问题 # 120

2018-07-12 版本 0.5.4

功能

  • 支持additionalProperties和XML

错误修复

  • 更好地解析空节点和非字符串类型

  • 改进“object”XML解析

2018-07-10 版本 0.5.3

错误修复

  • 修复了一些XML序列化的微妙场景

2018-07-09 版本 0.5.2

功能

  • deserialize/from_dict现在接受content-type参数以解析XML字符串

错误修复

  • 修复了一些复杂的XML Swagger定义。

此版本可能会破坏已生成的XML SDK,需要使用autorest.python 3.0.58重新生成。

2018-06-21 版本 0.5.1

错误修复

  • 降低Accept头部覆盖日志消息 #110

  • 修复“object”类型和XML格式

感谢dharmab的贡献

2018-06-12 版本 0.5.0

免责声明

本版本旨在与0.4.x版本向后兼容,但由于内部重构和新功能太多,无法继续使用0.4.x版本号

功能

  • 添加XML支持

  • 添加许多类型提示,并在CI上执行MyPY测试。

  • HTTP调用通过HTTPDriver API进行。目前仅实现了requests。此驱动API目前**不稳定**,如果您想提供个人实现,则应固定msrest版本。

错误修复

  • 某些datetime对象的毫秒序列化不正确 #94

弃用

如果使用旧的Autorest生成的代码,则会触发DeprecationWarning。

  • _client.add_header已弃用,应使用config.headers代替

  • _client.send_formdata已弃用,应使用_client.put/get/delete/post + _client.send代替

2018-04-30 版本 0.4.29

错误修复

  • 改进SDKClient.__exit__以将exc_details作为可选参数而不是必需参数 #93

  • refresh_session也应使用可用的永久HTTP会话 #91

2018-04-18 版本 0.4.28

功能

  • msrest现在能够保持“requests.Session”的活性以提高性能。要激活此行为

    • 使用最终Client作为上下文管理器(需要使用Autorest.Python 3.0.50至少生成)

    • 使用client.config.keep_alive = True和client.close()(需要使用Autorest.Python 3.0.50至少生成)

    • 使用client.config.keep_alive = True和client._client.close()(不推荐,但在旧版本的SDK中可用)

  • 所有认证类现在都定义了带有可选session参数的signed_session和refresh_session。要利用会话改进的优势,Authentication的子类**必须**添加此可选参数并使用它(除非它为None)

    def signed_session(self, session=None)

    session = session or requests.Session()

    # 如常进行。

2018-03-07 版本 0.4.27

功能

  • 默认禁用HTTP日志(安全性),添加enable_http_log以恢复它 #86

错误修复

  • 修复了ms精度超过6位数字时日期解析不正确的问题 #82

2018-01-30 版本 0.4.26

功能

  • 为EventGrid客户端添加TopicCredentials

错误修复

  • 修复isodate的最小依赖项

  • 修复了提供datetime时的序列化问题

2018-01-08 版本 0.4.25

功能

  • 添加 LROPoller 类。这是一个可定制的 LRO 引擎。这是 Autorest.Python 3.0 的轮询引擎,不适用于之前 Autorest 版本生成的代码。

2018-01-03 版本 0.4.24

错误修复

  • 日期解析现在符合 Autorest / Swagger 2.0 规范(更严格)

内部优化

  • 不返回可流式对象的方法现在在请求流模式 False 下执行(无论调用类型如何都为 True)。这应该会减少已泄露的打开会话数量,并允许 urllib3 更有效地管理连接池。只有使用 Autorest.Python >= 2.1.31 生成的客户端(其他不受影响,完全向后兼容)

2017-12-21 版本 0.4.23

错误修复

  • 接受将不同类型的枚举反序列化,如果内容字符串匹配 #75

  • 如果枚举字符串未知,则停止反序列化失败。返回字符串。

功能

  • 模型现在在构造函数中接受 kwargs 以支持未来的 kwargs 模型

2017-12-15 版本 0.4.22

错误修复

  • 不要验证 additional_properties #73

  • 改进验证错误,如果预期类型是 dict,但实际类型不是 #73

2017-12-14 版本 0.4.21

错误修复

  • 修复 Swagger 展平后的 additional_properties #72

2017-12-13 版本 0.4.20

功能

  • 添加对 additional_properties 的支持

    • 默认情况下,保留所有 additional_properties。

    • 只有当 Swagger 中指定了 additional_properties,或者当调用模型上的 “enable_additional_properties_sending” 时,才会将 additional_properties 发送到服务器。这是一个类方法,它为该模型的所有实例启用它。

2017-11-20 版本 0.4.19

功能

  • 现在对 Swagger 2.0 “discriminator” 的解释更加宽松。这意味着对于以下两种情况

    • 接收到的负载中缺少 discriminator 值

    • Swagger 中未定义 discriminator 值

    而不是抛出异常,现在返回此 “discriminator” 的基本类型。

    请注意,这并不与 Swagger 2.0 规范相矛盾,该规范指定“验证应失败……在某些特定情况下可能存在忽略特定项的有效理由,但在选择不同的方案之前必须充分理解全部影响并仔细权衡。”

    目前无法配置,但这是新的默认行为,但将来如果需要,可以配置。

错误修复

  • 可选的表单数据参数会引发异常 (#65)

  • 使用 “multipart/form-data” 发送了 “application/x-www-form-urlencoded” 表单。如果服务器不支持 “multipart/form-data”,这会导致问题 (#66)

2017-10-26 版本 0.4.18

功能

  • 添加 ApiKeyCredentials 类。这可以用于支持 OpenAPI ApiKey 功能。

  • 添加 CognitiveServicesAuthentication 类。为认知服务预声明 ApiKeyCredentials 类。

2017-10-12 版本 0.4.17

功能

这使认证类更加一致

  • OAuthTokenAuthentication 现在是 BasicTokenAuthentication 的子类(原来是 Authentication)

  • BasicTokenAuthentication 现在有一个 “set_token” 方法,它什么都不做。

这允许测试如 “isinstance(o, BasicTokenAuthentication)” 保证以下属性存在

  • token

  • set_token()

  • signed_session()

这意味着对于“msrestazure”的用户,他们可以保证所有 AD 类以某种方式继承自“BasicTokenAuthentication”

2017-10-05 版本 0.4.16

错误修复

  • 修复回归:接受 “set” 作为有效的 “[str]” (#60)

2017-09-28 版本 0.4.15

错误修复

  • 始终记录响应体 (#16)

  • 改进了如果错误 JSON 是 Odata v4 时的异常信息 (#55)

  • 拒绝 “str” 作为有效的 “[str]” 类型 (#41)

  • 如果来自服务器的输入不是有效的 JSON,则改进异常处理

功能

  • 添加 Configuration.session_configuration_callback 以在必要时自定义 requests.Session (#52)

  • 向序列化器添加一个标志以禁用客户端验证 (#51)

  • 从“exceptions.py”中删除“import requests”,以适应需要快速加载时间的应用程序(#23)

感谢jayden-at-arista的贡献

2017-08-23 版本 0.4.14

错误修复

  • 修复了msrest 0.4.12中引入的回归 - 将枚举作为字符串建模并使用枚举的dict语法

2017-08-22 版本 0.4.13

错误修复

  • 修复了msrest 0.4.12中引入的回归 - 使用isodate.Duration的dict语法(#42)

2017-08-21 版本 0.4.12

功能

  • 输入现在更加宽容

  • 模型现在有一个“validate”方法来检查内容约束

  • 模型现在有4个新方法

    • “serialize”,它给出将要发送的RestAPI

    • “as_dict”,它返回模型的字典版本。提供了回调功能。

    • “deserialize”,解析RestAPI JSON到模型

    • “from_dict”,它解析多个字典语法到模型。提供了回调功能。

更多详细信息以及示例请参阅Github上的Wiki文章:https://github.com/Azure/msrest-for-python/wiki/msrest-0.4.12—Serialization-change

错误修复

  • 改进的枚举检查(#38)

2017-06-21 版本 0.4.11

错误修复

  • 修复了对“requests” 2.14.x的不正确依赖,而不是0.4.8中指明的2.x

2017-06-15 版本 0.4.10

功能

  • 将requests钩子添加到配置中

2017-06-08 版本 0.4.9

错误修复

  • 接受分页数组中的“null”值作为空列表,并且不引发异常(#30)

2017-05-22 版本 0.4.8

错误修复

  • 修复了随机的“池已关闭”错误(#29)

  • 修复对requests依赖的版本2.x,因为版本3.x被宣布为破坏性版本。

2017-04-04 版本 0.4.7

错误修复

  • 重构分页 #22

    • “next”重命名为“advance_page”,并且“next”只返回一个元素(Python 2期望的行为)

    • 分页对象现在是真正的生成器,并支持“next()”内置函数,无需使用“iter()”

  • 在错误使用RestAPI区分器时引发准确的DeserialisationError #27

  • 修复了基类名称的区分器使用 #27

  • 在客户端中删除默认可变参数 #20

  • 修复了某些场景中的对象比较 #24

2017-03-06 版本 0.4.6

错误修复

  • 允许Model子类在类型为“object”时进行序列化

2017-02-13 版本 0.4.5

错误修复

  • 修复了多态反序列化 #11

  • 修复了在Python 2.7中使用‘\w’时的正则表达式验证 #13

  • 修复了在Python 2.7中键为unicode时的字典反序列化

改进

  • 从字典对象添加多态序列化

  • 删除chardet并使用HTTP字符集声明(回退到utf8)

2016-09-14 版本 0.4.4

错误修复

免责声明

为了获取受影响客户端的分页修复,您需要此软件包和Autorest > 0.17.0 Nightly 20160913

2016-09-01 版本 0.4.3

错误修复

2016-08-15 版本 0.4.2

错误修复

2016-08-08 版本 0.4.1

错误修复

2016-05-25 版本 0.4.0

本版本没有错误修复,但实现了Autorest的新功能:- Base64 URL类型 - unixtime类型 - x-ms-enum modelAsString标志

行为变更

  • 在UserAgent中添加平台信息

  • 需要Autorest > 0.17.0 Nightly 20160525

2016-04-26 版本 0.3.0

错误修复

行为变更

  • 需要Autorest > 0.16.0 Nightly 20160426

2016-03-25 版本 0.2.0

错误修复

行为变更

  • 需要 Autorest > 0.16.0 夜间版 20160324

2016-03-21 版本 0.1.3

错误修复

2016-03-14 版本 0.1.2

错误修复

2016-03-04 版本 0.1.1

错误修复

2016-03-04 版本 0.1.0

行为变化

  • 移除自定义日志设置和配置。所有日志记录器现在都是根日志记录器 'msrest' 的子记录器,没有预定义的配置。

  • 用更广泛的有效性字典替换了 Model 类中的 _required 属性。

改进

  • 从基 Model 类中删除了属性映射的层次结构扫描 - 依赖于生成器根据层次结构填充属性映射。

  • 基类 Paged 现在继承自 collections.Iterable。

  • 在序列化期间使用自定义参数(例如 max、min 等)进行数据验证。

  • 如果序列化期间遇到无效数据,则抛出 ValidationError。

2016-02-29 版本 0.0.3

错误修复

2016-02-19 版本 0.0.2

错误修复

  • 修复了在配置日志记录器之前记录异常的bug。

2016-02-19 版本 0.0.1

  • 初始发布。

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。

源分布

msrest-0.7.1.zip (175.3 kB 查看哈希值)

上传时间 源代码

构建分发版

msrest-0.7.1-py3-none-any.whl (85.4 kB 查看哈希值)

上传时间 Python 3

由以下支持