跳至内容

变更日志

最新

  • BUGFIX:完全解析 URL,修复 #141

1.6.1

  • BUG:在允许流时,不要检查缩进一致性。

1.6.0

没有相关的代码更改。

1.5.0

  • FEATURE:HexInt 标量验证器。不区分大小写地解析十六进制整数,同时保留“往返”的样式。(#157)

1.4.4

没有相关的代码更改。

1.4.3

  • FEATURE:在 python 2.7.14 上进行回归测试。这可能是最后一个支持 Python 2 的版本。
  • FEATURE:将最后一个正常工作的 ruamel.yaml 版本捆绑到 strictyaml 中。

1.4.2

  • BUGFIX:确保 strictyaml 继续工作 - 更新了临时修复。

1.4.1

  • BUGFIX:确保 strictyaml 继续工作。
  • FEATURE:NullNone - 像 YAML 1.2 一样将“null”解析为 None。

1.3.2

  • BUGFIX:修复 #135,感谢 @eulores。

1.3.1

  • BUGFIX:修复有故障的 Url 验证器。

1.3.0

  • BUGFIX:修复以确保 python 2.7.14 兼容性。这可能是我最后一次这样做。
  • FEATURE:对于 Python 3.7+,使用字典而不是有序字典
  • BUGFIX:要求正则表达式完全匹配
  • FEATURE:在整数和十进制中支持下划线

1.2.0

  • FEATURE:#129:映射中的可选键并将值设置为 None - 感谢 @wwoods。

1.1.1

没有相关的代码更改。

1.1.0

  • FEATURE:添加对 NaN 和无穷大表示的支持(#122)

1.0.7

  • BUGFIX:修复 #116 - 处理 Enum 或整数错误
  • BUGFIX:修复意外的 python 2 崩溃。
  • BUGFIX:意外地将布尔值错误地识别为数字 - #85 的原因。
  • BUGFIX:修复 #86 - 处理更改多行字符串。
  • BUGFIX:在解析器中处理已弃用的 collections 导入(#82)

  • bugfix - 在解析器中处理已弃用的 collections 导入

  • import sys

1.0.5

  • BUGFIX:修复在修复 #72 时引入的 python 2 错误。
  • BUG:问题 #72。现在 **setitem** 使用模式。

在此提交之前,在为 Map/Sequence 成员分配时,模式可能会被违反。现在,对数据的修改必须符合数据的模式。

此外,如果调用 **setitem** 的节点具有复合模式,则复合模式中的选定验证器可能会正确更改。

1.0.4

  • FEATURE:在包中包含测试/故事。
  • BUG:问题 #72。现在 **setitem** 使用模式。

在此提交之前,在为 Map/Sequence 成员分配时,模式可能会被违反。现在,对数据的修改必须符合数据的模式。

1.0.3

  • BUGFIX:修复 #64 YAML 对象上的整数值被解释为字符串的问题。

1.0.2

  • BUGFIX:#63 CommaSeparated 应该将空字符串识别为有效的空列表。
  • BUGFIX:#61 修复在使用非字符串(浮点数)作为键解析 MapPattern 时发生的异常 - 感谢 @dgg5503。
  • BUGFIX:修复由 #60 引发的 collections 中 Iterable 的弃用警告 - 感谢 @dthonon。
  • FEATURE:如果组合了多个序列验证器,则引发异常。

1.0.1

  • 功能:#51 - 使用多个 Map 验证器进行 OrValidation 不起作用 - 如果用户尝试使用多个验证器,则引发异常。

1.0.0

没有相关的代码更改。

0.15.4

  • BUGFIX:如果使用 Or 验证器重新验证子模式,然后更改解析数据的內容,则会引发一个难以理解的错误。

0.15.3

  • BUGFIX:#46 的修复 - 阻止 Enum 解析的值变成 YAML 对象。

0.15.2

  • BUGFIX:使用 **getitem** 修改 YAML(其中 YAML 使用 OR 运算符进行验证)失败 - 或者验证器没有 key_validator。

0.15.1

  • BUGFIX:使用 Optional 解析的可选值将出现在有序字典的**末尾**。
  • BUGFIX:阻止 YAML 对象出现在 .data 中。
  • BUGFIX:修复由使用 Optional 默认值进行重新验证引起的错误。

0.15.0

  • 功能:当在 Optionals 中使用无效的默认数据时引发异常。
  • 功能:不要将 Optional() 的默认值输出到 YAML,并且忽略解析后的默认值,其中解析后的数据等于 Optional() 中指定的默认值。
  • BUGFIX:包含 README.md。

0.14.0

  • BUGFIX:使逗号分隔序列化程序正确序列化。
  • BUGFIX:修复了对空列表、字典、None 和日期时间的序列化处理方式。
  • BUGFIX:Float - 修复了转换为 YAML 的转换。
  • BUGFIX:对浮点数进行适当的序列化。
  • BUGFIX:对正则表达式进行适当的序列化。
  • BUGFIX:逗号分隔序列化。
  • BUGFIX:Enum - 修复了转换为 YAML 的转换。
  • BUGFIX:对字典的序列化进行更严格的验证。
  • BUGFIX:对序列的序列化进行更严格的验证。
  • BUGFIX:简化并修复了将数据序列化为 YAML 的方式,以便可以对 YAML 文档进行复杂的更改,并且可以从头开始组装复杂的 YAML 文档。
  • BUGFIX:停止转储空字典/列表。
  • BUGFIX:修复了 README 上的内容编码。

0.13.0

  • 功能:允许使用 dirty_load 方法解析流式风格。

0.12.0

  • 功能:根据 #39 实现映射抽象基类。

0.11.10

  • BUGFIX:#15 - 修复由 ruamel.yaml 0.15.48 版本发布引起的回归。
  • 功能:更合理地处理文档构建 - 仅从字符串、浮点数、字典、列表等构建文档。

0.11.8

  • 功能:在包中包含 LICENSE.txt - #34 - 感谢 @mcs07。
  • BUGFIX:#32 的修复,感谢 @NoahTheDuke - 在文档的变体中呈现给定的部分。

0.11.7

  • 功能:在 setup.py 中用 README.md 中的读取内容替换了 README.rst 中的读取内容。

0.11.6

  • 功能:在 setup.py 中将链接替换为新网站。

0.11.5

  • 次要 BUGFIX:#31,感谢 @karantan - 解析后,YAML 对象上的验证器设置不正确。

0.11.4

  • BUGFIX:修复了重新验证后在 YAML 中更改项失败的错误。

0.11.3

  • PATCH BUGFIX:确保重新验证保留验证器。

0.11.2

  • BUGFIX:当在其他 YAML 对象上使用 YAML 对象作为键时,它应该只使用该值。

0.11.1

  • BUGFIX PATCH:修复了在键已通过验证器的情况下,在 YAML 对象上获取和删除项的行为。
  • PATCH BUGFIX:允许在使用键验证器时使用 **setitem** 设置属性。
  • PATCH REFACTOR:序列和映射验证器现在继承自 SeqValidator 和 MapValidator。
  • PATCH REFACTOR:添加了一些文档字符串并删除了不必要的方法。
  • PATCH REFACTOR:添加了文档字符串并澄清了变量名称。
  • PATCH REFACTOR:将 YAMLPointer 类移到它自己的文件中。
  • PATCH REFACTOR:重构了处理代码。
  • BUGFIX PATCH:修复使用处理键的映射进行重新验证时的问题。
  • 次要功能:在缩进不一致时引发异常。
  • PATCH:REFACTOR:清理了故事。
  • PATCH:REFACTOR:为启用文档生成所做的更改。
  • PATCH:REFACTOR:在 hitch 环境中升级了 hitchstory 和 strictyaml。

0.10.0

  • 次要功能:在 MapPattern 中可选地指定 minimum_keys 和 maximum_keys。

0.9.0

  • 次要功能:使用 any(使其与标量值一起使用)解析的代码的重新验证。
  • PATCH:REFACTOR:将延迟验证重命名为重新验证。
  • 次要功能:使用 Any 解析的代码的重新验证。
  • PATCH:REFACTOR:添加了更多有用的 YAMLChunk 方法。
  • PATCH:REFACTOR:修复了类型断言。
  • PATCH:功能:为或验证器添加了断言。
  • PATCH:功能:为不匹配的标量提供更清晰的错误消息。
  • PATCH:REFACTOR:使 linter 高兴。
  • 次要功能:提供更清晰的异常消息,并防止在复合验证器中使用无效的验证器。
  • PATCH:REFACTOR:重新设计了创建 YAML 对象的方式。
  • PATCH:REFACTOR:重新设计了映射、序列、“或”和标量验证器的工作方式。
  • PATCH:REFACTOR:向回归套件添加了 doctests。
  • PATCH:REFACTOR:清理 Map() 类,使其仅通过 chunk.process() 进行交互。
  • PATCH:REFACTOR:清理了一些故事。
  • PATCH:REFACTOR:使 linter 高兴。
  • PATCH:REFACTOR:将更多验证功能移到块对象中。
  • PATCH:REFACTOR:清理验证器代码。
  • PATCH:REFACTOR:将更多核心代码从验证器移到 YAMLChunk 中。

0.8.0

  • 次要功能:带有项验证器的枚举。
  • 次要功能:带有键验证器的映射。
  • 次要功能:使用 Map() 进行键验证。
  • PATCH:性能改进:避免每次使用验证器时都使用 deepcopy()。
  • 次要 BUGFIX:修复了往返失败。
  • PATCH:REFACTOR:仅在标量验证器中使用块对象。
  • PATCH:REFACTOR:删除了对两个变量馈送到 validate_scalar 方法的依赖关系。

0.7.3

  • 性能:通过限制调用 deepcopy() 的次数来提高转储性能。
  • 功能:性能改进。
  • 功能:从简单的 Python 数据字典/列表创建可转储的 YAML 文档。
  • 功能:从头开始创建文档。
  • 功能:直接创建 YAML 文档。
  • 功能:合并 YAML 文档。
  • BUGFIX:处理对序列中更改的索引元素进行往返。
  • BUGFIX:修复了标量值往返。
  • 功能:使用列表设置序列。
  • 功能:使用“yes”和“no”作为默认布尔值。
  • 功能:使用 YAML() 对象上的 **setitem** 接口设置嵌套的映射,这些映射将得到正确验证。
  • BUGFIX:通过 **setitem** 设置变量时,不要影响键的顺序。

0.7.2

  • BUGFIX:小数点表示器不适用于 decimal.Decimal() 对象,因此使用浮点数代替。
  • BUGFIX:在 python 2.x 中,**ne** 魔术方法在 != 上被调用,而不是对 **eq** 方法的结果进行取反。这导致了 python 2.x 中的意外行为。
  • 功能:解析器错误将附带正确的标签。
  • 功能:.data 现在返回有序字典。
  • BUG:布尔值“y”和“n”应该解析为 True 和 False。
  • BUG:映射键意外地默认情况下是可选的。
  • BUG:以前不允许的异常没有被标记。
  • BUG:以前没有标记重复键异常。
  • BUG:修复了在 python 2 中对多行字符串进行往返的问题。
  • 功能:标记解析的 YAML,并在异常中显示标签。
  • BUG:修复了通过 **setitem** 将数据往返加载到 yaml 对象中的方式。
  • BUG:修复了不使用 load() 进行往返的问题。

0.7.0

  • 功能:修改了往返的工作方式。

0.6.2

  • 功能:从 **init**.py 添加了版本号。
  • BUG:修复了在获取 start_line/end_line 时对列表行的错误计数。

0.6.0

  • BUG:修复了导入问题。
  • 功能:添加了电子邮件和 url 验证器。
  • 功能:添加了 Regex 验证器。

0.5.9

没有相关的代码更改。

0.5.8

  • BUG:修复了布尔错误。

0.5.7

  • BUG:修复了在编辑项时出现的 MapPattern 错误。

0.5.6

  • 功能:在设置值时进行严格的类型检查。

0.5.5

  • BUG:修复了使用非 ASCII 字符时的往返问题。
  • BUG:修复了 Unicode 往返错误。

0.5.4

  • BUG:修复了在映射中错误处理特殊字符的问题。
  • BUG:优雅地处理无效的键,这些键是非 ASCII 字符。
  • BUG:修复了当非字符串标量看到无效输入时出现的字符编码问题。

0.5.3

  • BUG:第三个修复字符编码问题(#18:感谢 @jpscaletti)
  • BUG:第二个修复字符编码问题(#18:感谢 Juan Pablo-Scaletti)
  • BUG:#18 的修复(感谢 Juan Pablo-Scaletti)

0.5.2

  • BUG:#17 的修复(感谢 @kshpytsya)

0.5.1

  • 功能:YAML 对象可以直接从模块导入。

0.5.0

  • BUG:修复了一些往返的损坏元素。
  • BUG:.data 表示形式没有将键作为字符串给出。
  • BUG:修复了 python 2 中的 bool(x) 覆盖。
  • 功能:实现了大于/小于,以及对映射的更好的后表示赋值。
  • 功能:更好的 repr()
  • BUG:键现在被表示为 YAML() 对象,可以完全访问键在 YAML 文档中的位置。
  • 功能:添加了 is_[scalar|mapping|sequence] 方法。
  • 功能:YAML 对象上的 .values()。
  • 功能:向 YAML 对象添加了 .value 属性。
  • 功能:实现了 **contains**,以便可以使用“in”方法。
  • 功能:添加了 .get(val) 和 .keys(),以便可以像字典一样对待映射 YAML 对象。
  • 功能:向 YAML 对象添加了 .items()。
  • 功能:处理对整数的字符串转换。
  • 功能:当尝试将字符串转换为布尔值时引发 TypeError。
  • 功能:当尝试将 YAML(bool) 转换为字符串时引发 TypeError。
  • 功能:获取特定 YAML 值的线条,以及它之前的线条和之后的线条。
  • 功能:打印 YAML 元素的行号。
  • 功能:Any 验证器。
  • 功能:修复了固定长度序列验证。
  • BUG:修复了往返。
  • 功能:修改后的往返 YAML。
  • BUG:在更高层面上修复了 ruamel.yaml 版本。
  • 功能:将 YAML 解析为可往返的 YAML 对象。

0.4.2

没有相关的代码更改。

0.4.1

  • BUG:修复了逗号分隔验证器 - 现在在解析“a, b, c”时会删除尾随空格,因此不会解析为“a”、“ b”、“ c”。

0.4.0

  • 功能:逗号分隔值。

0.3.9

  • 功能:添加了对 CommentedYAML 类型的导入。

0.3.8

  • 功能:空属性验证。

0.3.7

  • BUG:修复了 ruamel.yaml 导入,使其也适用于早期版本。

0.3.6

  • BUG:修复了 13.1 ruamel.yaml 问题。

0.3.5

  • BUG:多余的打印语句。

0.3.3

  • BUG:禁止流式风格对序列失败。

0.3.2

没有相关的代码更改。

0.3.1

  • BUG:修复了由字典键中的“null”和非字符串引起的错误解析。

0.3

  • 功能:日期时间解析。
  • BUG:使用“Any”加载空字符串时,它意外地返回了 None。

0.2

  • 功能:YAMLValidationError 现在继承自 MarkedYAMLError 并使用与之相同的机制。

0.1.6

没有相关的代码更改。

0.1.5

  • 功能:不允许重复键。

0.1.4

  • 功能:使默认值为将所有标量解析为字符串(Any 验证器),并添加了返回 CommentedSeq/CommentedMap 的验证器。

0.1.3

  • 功能:更清晰的异常消息。
  • BUG:修复了序列验证器中的错误。

0.1.2

  • BUG:现在允许单值 YAML 文档。
  • BUG:如果传入的不是字符串,则引发类型错误。