Date: Friday, August 3, 2018 @ 04:39:58 Author: foutrelis Revision: 367476
upgpkg: blender 17:2.79.b.git3.32432d91-3 Add patch: "Fix PyRNA class registration w/ Python 3.7" Added: blender/trunk/python37.patch Modified: blender/trunk/PKGBUILD ----------------+ PKGBUILD | 5 ++++- python37.patch | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 1 deletion(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-08-02 23:44:13 UTC (rev 367475) +++ PKGBUILD 2018-08-03 04:39:58 UTC (rev 367476) @@ -17,7 +17,7 @@ pkgname=blender pkgver=2.79.b [[ -n $_gitcommit ]] && pkgver=${pkgver}.git3.${_gitcommit:0:8} -pkgrel=2 +pkgrel=3 epoch=17 pkgdesc="A fully integrated 3D graphics creation suite" arch=('x86_64') @@ -36,6 +36,7 @@ "git://git.blender.org/blender-translations.git" "git://git.blender.org/blender-dev-tools.git" "git://git.blender.org/scons.git" + python37.patch ffmpeg4.0.patch tree_hpp.patch util_sseb.patch @@ -50,6 +51,7 @@ 'SKIP' 'SKIP' 'SKIP' + '1d6d2064db0e8e4e3a52735406f5106a' 'da14d7cbdea1ab5499659a066658cdd2' 'feea89510de171946c41c6208461f453' '53da216adbc2a9d555a59c15b8f0ef08' @@ -67,6 +69,7 @@ git config submodule."scons".url ${srcdir}/scons git submodule update + patch -Np1 -i "$srcdir"/python37.patch patch -Np1 -i "$srcdir"/ffmpeg4.0.patch patch -Np1 -i "$srcdir"/tree_hpp.patch patch -Np1 -i "$srcdir"/util_sseb.patch Added: python37.patch =================================================================== --- python37.patch (rev 0) +++ python37.patch 2018-08-03 04:39:58 UTC (rev 367476) @@ -0,0 +1,40 @@ +From 1db47a2ccd1e68994bf8140eba6cc2a26a2bc91f Mon Sep 17 00:00:00 2001 +From: Campbell Barton <ideasma...@gmail.com> +Date: Thu, 12 Jul 2018 08:28:06 +0200 +Subject: [PATCH] Fix PyRNA class registration w/ Python 3.7 + +In Python3.7 this now raises an error. +--- + source/blender/python/intern/bpy_rna.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/source/blender/python/intern/bpy_rna.c b/source/blender/python/intern/bpy_rna.c +index 9052b6f580a..80b0aa7a51b 100644 +--- a/source/blender/python/intern/bpy_rna.c ++++ b/source/blender/python/intern/bpy_rna.c +@@ -7577,10 +7577,12 @@ static int bpy_class_validate_recursive(PointerRNA *dummyptr, StructRNA *srna, v + if (!(flag & PROP_REGISTER)) + continue; + ++ /* TODO(campbell): Use Python3.7x _PyObject_LookupAttr(), also in the macro below. */ + identifier = RNA_property_identifier(prop); + item = PyObject_GetAttrString(py_class, identifier); + + if (item == NULL) { ++ PyErr_Clear(); + /* Sneaky workaround to use the class name as the bl_idname */ + + #define BPY_REPLACEMENT_STRING(rna_attr, py_attr) \ +@@ -7596,6 +7598,9 @@ static int bpy_class_validate_recursive(PointerRNA *dummyptr, StructRNA *srna, v + } \ + Py_DECREF(item); \ + } \ ++ else { \ ++ PyErr_Clear(); \ ++ } \ + } /* intentionally allow else here */ + + if (false) {} /* needed for macro */ +-- +2.18.0 +