include $(TOPDIR)/rules.mk
PKG_NAME:=python-ruamel-yaml
-PKG_VERSION:=0.18.16
+PKG_VERSION:=0.19.1
PKG_RELEASE:=1
PYPI_NAME:=ruamel.yaml
+PYPI_SOURCE_NAME:=ruamel_yaml
PYTHON3_PKG_WHEEL_NAME:=ruamel_yaml
-PKG_HASH:=a6e587512f3c998b2225d68aa1f35111c29fad14aed561a26e73fab729ec5e5a
+PKG_HASH:=53eb66cd27849eff968ebf8f0bf61f46cdac2da1d1f3576dd4ccee9b25c31993
PKG_MAINTAINER:=Josef Schlehofer <pepe.schlehofer@gmail.com>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
PKG_CPE_ID:=cpe:/a:ruamel.yaml_project:ruamel.yaml
+PKG_BUILD_DEPENDS:=python-setuptools/host
+
include ../pypi.mk
+# The sdist tarball is ruamel_yaml-*.tar.gz (underscores) but internally
+# contains a directory ruamel.yaml-*/ (dots); override PKG_BUILD_DIR here,
+# before package.mk, so that STAMP_BUILT and friends use the correct path.
+PKG_BUILD_DIR:=$(BUILD_DIR)/pypi/$(PYPI_NAME)-$(PKG_VERSION)
include $(INCLUDE_DIR)/package.mk
include ../python3-package.mk
--- /dev/null
+#!/bin/sh
+
+[ "$1" = python3-ruamel-yaml ] || exit 0
+
+python3 - << 'EOF'
+from ruamel.yaml import YAML
+from io import StringIO
+
+yaml = YAML()
+
+# Test basic load/dump
+data = yaml.load("key: value\nlist:\n - a\n - b\n")
+assert data["key"] == "value"
+assert data["list"] == ["a", "b"]
+
+out = StringIO()
+yaml.dump({"x": 1}, out)
+assert "x: 1" in out.getvalue()
+
+# Test roundtrip comment preservation (key ruamel.yaml feature)
+doc = "# header\nname: test # inline\n"
+data2 = yaml.load(doc)
+assert data2["name"] == "test"
+buf = StringIO()
+yaml.dump(data2, buf)
+assert "# header" in buf.getvalue()
+assert "# inline" in buf.getvalue()
+
+print("python3-ruamel-yaml OK")
+EOF