summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--debian/changelog10
-rw-r--r--debian/copyright1
-rwxr-xr-xdebian/get-hg-version15
-rw-r--r--debian/patches/big_endian.patch54
-rw-r--r--debian/patches/series1
-rw-r--r--debian/watch1
6 files changed, 76 insertions, 6 deletions
diff --git a/debian/changelog b/debian/changelog
index c3dd077..924ec4b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+ruamel.yaml (0.18.6+ds-1) unstable; urgency=medium
+
+ * Team upload
+ * Rename upstream version number as +ds as it is being repacked from
+ SourceForge clone
+ * Reinstate a version of the big-endian patch (removed in 0.18.6-1) as
+ it still fails on big-endian systems
+
+ -- Julian Gilbey <jdg@debian.org> Thu, 18 Apr 2024 06:20:52 +0100
+
ruamel.yaml (0.18.6-2~progress7.99u1) graograman-backports; urgency=medium
* Uploading to graograman-backports, remaining changes:
diff --git a/debian/copyright b/debian/copyright
index f4468c9..5dcabb6 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -2,6 +2,7 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: ruamel.yaml
Upstream-Contact: Anthon van der Neut <a.van.der.neut@ruamel.eu>
Source: https://sourceforge.net/p/ruamel-yaml/code/ci/default/tree
+Comment: Cloned and repacked from SourceForge repository
Files: *
Copyright: Anthon van der Neut <a.van.der.neut@ruamel.eu>
diff --git a/debian/get-hg-version b/debian/get-hg-version
index d548a78..d8257c1 100755
--- a/debian/get-hg-version
+++ b/debian/get-hg-version
@@ -17,10 +17,12 @@ fi
if ! hg --version > /dev/null
then
- echo 'Need to install the "mercurial" package to run uscan on ruamel.yaml' >&2
+ echo 'Need to install the "mercurial" package to run uscan on ruamel.yaml.clib' >&2
exit 1
fi
+PACKAGE=ruamel.yaml
+PACKAGE_DASH=ruamel-yaml
PWD=$(pwd)
cd ..
PPWD=$(pwd)
@@ -30,13 +32,14 @@ trap "rm -rf '$TMP'" INT QUIT TERM EXIT
uversion=$2
cd "$TMP"
-hg clone http://hg.code.sf.net/p/ruamel-yaml/code ruamel.yaml-$uversion
-cd ruamel.yaml-$uversion
+hg clone http://hg.code.sf.net/p/${PACKAGE_DASH}/code $PACKAGE-$uversion
+cd $PACKAGE-$uversion
hg update $uversion
cd ..
-tar Jcpf ruamel.yaml_$uversion.orig.tar.xz --exclude=.hg ruamel.yaml-$uversion
-rm -f "$PPWD"/ruamel.yaml_$uversion.orig.tar.gz
-mv ruamel.yaml_$uversion.orig.tar.xz "$PPWD"
+mv $PACKAGE-$uversion $PACKAGE-$uversion+ds
+tar Jcpf ${PACKAGE}_$uversion+ds.orig.tar.xz --exclude=.hg $PACKAGE-$uversion+ds
+rm -f "$PPWD"/${PACKAGE}_$uversion.orig.tar.gz
+mv ${PACKAGE}_$uversion+ds.orig.tar.xz "$PPWD"
cd "$PWD"
rm -rf "$TMP"
diff --git a/debian/patches/big_endian.patch b/debian/patches/big_endian.patch
new file mode 100644
index 0000000..ae0af7d
--- /dev/null
+++ b/debian/patches/big_endian.patch
@@ -0,0 +1,54 @@
+Author: Michael R. Crusoe <crusoe@debian.org>, Julian Gilbey <jdg@debian.org>
+Description: Default to pure python parsing on big endian systems
+ The current version fails on big-endian systems as described in
+ https://sourceforge.net/p/ruamel-yaml/tickets/360/ and
+ https://sourceforge.net/p/ruamel-yaml-clib/tickets/34/
+ .
+ The current version of this patch completely disables the C extension on
+ big-endian systems.
+ .
+ Thanks to Rebecca N. Palmer for the tip about sys.byteorder!
+Forwarded: not-needed
+Last-Update: 2024-04-18
+
+--- a/__init__.py
++++ b/__init__.py
+@@ -1,4 +1,5 @@
+
+ from __future__ import annotations
++import sys
+
+ if False: # MYPY
+@@ -47,11 +47,13 @@
+ version_info = _package_data['version_info']
+ __version__ = _package_data['__version__']
+
+-try:
+- from .cyaml import * # NOQA
+-
+- __with_libyaml__ = True
+-except (ImportError, ValueError): # for Jython
+- __with_libyaml__ = False
++__with_libyaml__ = False
++if sys.byteorder == "little":
++ try:
++ from .cyaml import * # NOQA
++
++ __with_libyaml__ = True
++ except (ImportError, ValueError): # for Jython
++ pass
+
+ from ruamel.yaml.main import * # NOQA
+--- a/_test/test_cyaml.py
++++ b/_test/test_cyaml.py
+@@ -7,6 +7,10 @@
+
+ NO_CLIB_VER = (3, 12)
+
++@pytest.mark.skipif(
++ sys.byteorder == "big",
++ reason="compiled library disabled on big-endian machines"
++)
+
+ @pytest.mark.skipif( # type: ignore
+ platform.python_implementation() in ['Jython', 'PyPy'],
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..605700a
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+big_endian.patch
diff --git a/debian/watch b/debian/watch
index 4cf0f0d..9818d43 100644
--- a/debian/watch
+++ b/debian/watch
@@ -1,4 +1,5 @@
version=4
+opts="dversionmangle=auto" \
https://pypi.python.org/packages/source/r/ruamel.yaml/ \
ruamel.yaml-@ANY_VERSION@@ARCHIVE_EXT@ \
debian debian/get-hg-version