Hello community,

here is the log from the commit of package python-greenlet for openSUSE:Factory 
checked in at 2016-09-16 11:00:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-greenlet (Old)
 and      /work/SRC/openSUSE:Factory/.python-greenlet.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-greenlet"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-greenlet/python-greenlet.changes  
2016-04-22 16:25:41.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-greenlet.new/python-greenlet.changes     
2016-09-16 11:00:28.000000000 +0200
@@ -1,0 +2,9 @@
+Fri Sep  2 21:10:46 UTC 2016 - tbecht...@suse.com
+
+- update to 4.10.0:
+  - Added missing files to manifest
+  - Added workaround for ppc32 on Linux
+  - Start building binary manylinux1 wheels
+- Use pypi.io as Source url
+
+-------------------------------------------------------------------

Old:
----
  greenlet-0.4.9.tar.gz

New:
----
  greenlet-0.4.10.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-greenlet.spec ++++++
--- /var/tmp/diff_new_pack.3fs1wl/_old  2016-09-16 11:00:29.000000000 +0200
+++ /var/tmp/diff_new_pack.3fs1wl/_new  2016-09-16 11:00:29.000000000 +0200
@@ -18,13 +18,13 @@
 
 
 Name:           python-greenlet
-Version:        0.4.9
+Version:        0.4.10
 Release:        0
 Url:            http://pypi.python.org/pypi/greenlet
 Summary:        Lightweight in-process concurrent programming
 License:        MIT
 Group:          Development/Libraries/Python
-Source0:        
http://pypi.python.org/packages/source/g/greenlet/greenlet-%{version}.tar.gz
+Source0:        
https://pypi.io/packages/source/g/greenlet/greenlet-%{version}.tar.gz
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  gcc-c++
 BuildRequires:  python-Sphinx

++++++ greenlet-0.4.9.tar.gz -> greenlet-0.4.10.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/.travis.yml 
new/greenlet-0.4.10/.travis.yml
--- old/greenlet-0.4.9/.travis.yml      2015-05-31 15:02:31.000000000 +0200
+++ new/greenlet-0.4.10/.travis.yml     2016-04-02 20:26:46.000000000 +0200
@@ -1,4 +1,5 @@
 language: python
+sudo: false
 
 python:
   - 2.6
@@ -6,8 +7,8 @@
   - 3.2
   - 3.3
   - 3.4
+  - 3.5
 
 install: python setup.py build_ext -i
 
 script: python run-tests.py
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/MANIFEST.in 
new/greenlet-0.4.10/MANIFEST.in
--- old/greenlet-0.4.9/MANIFEST.in      2015-05-31 15:02:31.000000000 +0200
+++ new/greenlet-0.4.10/MANIFEST.in     2016-06-11 20:39:14.000000000 +0200
@@ -5,8 +5,11 @@
 include MANIFEST.in
 include NEWS
 include README.rst
+include appveyor.yml
+include appveyor/run_with_env.cmd
 include benchmarks/chain.py
 include conftest.py
+include dev-requirements.txt
 include doc/Makefile
 include doc/conf.py
 include doc/greenlet.txt
@@ -14,11 +17,13 @@
 include doc/make.bat
 include greenlet.c
 include greenlet.h
+include make-manylinux
 include make-win-release
 include my_build_ext.py
 include platform/switch_aarch64_gcc.h
 include platform/switch_amd64_unix.h
 include platform/switch_arm32_gcc.h
+include platform/switch_arm32_ios.h
 include platform/switch_m68k_gcc.h
 include platform/switch_mips_unix.h
 include platform/switch_ppc64_linux.h
@@ -49,6 +54,7 @@
 include tests/test_generator_nested.py
 include tests/test_greenlet.py
 include tests/test_leaks.py
+include tests/test_stack_saved.py
 include tests/test_throw.py
 include tests/test_tracing.py
 include tests/test_version.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/NEWS new/greenlet-0.4.10/NEWS
--- old/greenlet-0.4.9/NEWS     2015-08-30 20:00:33.000000000 +0200
+++ new/greenlet-0.4.10/NEWS    2016-06-11 19:23:58.000000000 +0200
@@ -1,3 +1,9 @@
+0.4.10
+======
+- Added missing files to manifest
+- Added workaround for ppc32 on Linux
+- Start building binary manylinux1 wheels
+
 0.4.9
 =====
 - Fixed Windows builds
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/PKG-INFO new/greenlet-0.4.10/PKG-INFO
--- old/greenlet-0.4.9/PKG-INFO 2015-08-30 20:04:39.000000000 +0200
+++ new/greenlet-0.4.10/PKG-INFO        2016-06-11 20:39:23.000000000 +0200
@@ -1,13 +1,13 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.0
 Name: greenlet
-Version: 0.4.9
+Version: 0.4.10
 Summary: Lightweight in-process concurrent programming
 Home-page: https://github.com/python-greenlet/greenlet
 Author: Alexey Borzenkov
 Author-email: sna...@gmail.com
 License: MIT License
 Description: .. image:: 
https://secure.travis-ci.org/python-greenlet/greenlet.png
-           :target: http://travis-ci.org/python-greenlet/greenlet
+        :target: http://travis-ci.org/python-greenlet/greenlet
         
         The greenlet package is a spin-off of Stackless, a version of CPython
         that supports micro-threads called "tasklets". Tasklets run
@@ -37,9 +37,9 @@
         There are several libraries that use Greenlet as a more flexible
         alternative to Python's built in coroutine support:
         
-         - `Concurrence`_
-         - `Eventlet`_
-         - `Gevent`_
+        - `Concurrence`_
+        - `Eventlet`_
+        - `Gevent`_
         
         .. _Concurrence: http://opensource.hyves.org/concurrence/
         .. _Eventlet: http://eventlet.net/
@@ -51,8 +51,8 @@
         The easiest way to get Greenlet is to install it with pip or
         easy_install::
         
-          pip install greenlet
-          easy_install greenlet
+        pip install greenlet
+        easy_install greenlet
         
         
         Source code archives and windows installers are available on the
@@ -62,7 +62,7 @@
         https://github.com/python-greenlet/greenlet
         
         Documentation is available on readthedocs.org:
-        https://greenlet.readthedocs.org
+        https://greenlet.readthedocs.io
         
 Platform: any
 Classifier: Intended Audience :: Developers
@@ -81,5 +81,6 @@
 Classifier: Programming Language :: Python :: 3.2
 Classifier: Programming Language :: Python :: 3.3
 Classifier: Programming Language :: Python :: 3.4
+Classifier: Programming Language :: Python :: 3.5
 Classifier: Operating System :: OS Independent
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/README.rst 
new/greenlet-0.4.10/README.rst
--- old/greenlet-0.4.9/README.rst       2015-05-31 15:02:31.000000000 +0200
+++ new/greenlet-0.4.10/README.rst      2016-06-11 12:53:14.000000000 +0200
@@ -54,4 +54,4 @@
 https://github.com/python-greenlet/greenlet
 
 Documentation is available on readthedocs.org:
-https://greenlet.readthedocs.org
+https://greenlet.readthedocs.io
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/appveyor/run_with_env.cmd 
new/greenlet-0.4.10/appveyor/run_with_env.cmd
--- old/greenlet-0.4.9/appveyor/run_with_env.cmd        1970-01-01 
01:00:00.000000000 +0100
+++ new/greenlet-0.4.10/appveyor/run_with_env.cmd       2016-06-11 
14:37:49.000000000 +0200
@@ -0,0 +1,88 @@
+:: To build extensions for 64 bit Python 3, we need to configure environment
+:: variables to use the MSVC 2010 C++ compilers from GRMSDKX_EN_DVD.iso of:
+:: MS Windows SDK for Windows 7 and .NET Framework 4 (SDK v7.1)
+::
+:: To build extensions for 64 bit Python 2, we need to configure environment
+:: variables to use the MSVC 2008 C++ compilers from GRMSDKX_EN_DVD.iso of:
+:: MS Windows SDK for Windows 7 and .NET Framework 3.5 (SDK v7.0)
+::
+:: 32 bit builds, and 64-bit builds for 3.5 and beyond, do not require specific
+:: environment configurations.
+::
+:: Note: this script needs to be run with the /E:ON and /V:ON flags for the
+:: cmd interpreter, at least for (SDK v7.0)
+::
+:: More details at:
+:: https://github.com/cython/cython/wiki/64BitCythonExtensionsOnWindows
+:: http://stackoverflow.com/a/13751649/163740
+::
+:: Author: Olivier Grisel
+:: License: CC0 1.0 Universal: 
http://creativecommons.org/publicdomain/zero/1.0/
+::
+:: Notes about batch files for Python people:
+::
+:: Quotes in values are literally part of the values:
+::      SET FOO="bar"
+:: FOO is now five characters long: " b a r "
+:: If you don't want quotes, don't include them on the right-hand side.
+::
+:: The CALL lines at the end of this file look redundant, but if you move them
+:: outside of the IF clauses, they do not run properly in the SET_SDK_64==Y
+:: case, I don't know why.
+@ECHO OFF
+
+SET COMMAND_TO_RUN=%*
+SET WIN_SDK_ROOT=C:\Program Files\Microsoft SDKs\Windows
+SET WIN_WDK=c:\Program Files (x86)\Windows Kits\10\Include\wdf
+
+:: Extract the major and minor versions, and allow for the minor version to be
+:: more than 9.  This requires the version number to have two dots in it.
+SET MAJOR_PYTHON_VERSION=%PYTHON_VERSION:~0,1%
+IF "%PYTHON_VERSION:~3,1%" == "." (
+    SET MINOR_PYTHON_VERSION=%PYTHON_VERSION:~2,1%
+) ELSE (
+    SET MINOR_PYTHON_VERSION=%PYTHON_VERSION:~2,2%
+)
+
+:: Based on the Python version, determine what SDK version to use, and whether
+:: to set the SDK for 64-bit.
+IF %MAJOR_PYTHON_VERSION% == 2 (
+    SET WINDOWS_SDK_VERSION="v7.0"
+    SET SET_SDK_64=Y
+) ELSE (
+    IF %MAJOR_PYTHON_VERSION% == 3 (
+        SET WINDOWS_SDK_VERSION="v7.1"
+        IF %MINOR_PYTHON_VERSION% LEQ 4 (
+            SET SET_SDK_64=Y
+        ) ELSE (
+            SET SET_SDK_64=N
+            IF EXIST "%WIN_WDK%" (
+                :: See: 
https://connect.microsoft.com/VisualStudio/feedback/details/1610302/
+                REN "%WIN_WDK%" 0wdf
+            )
+        )
+    ) ELSE (
+        ECHO Unsupported Python version: "%MAJOR_PYTHON_VERSION%"
+        EXIT 1
+    )
+)
+
+IF %PYTHON_ARCH% == 64 (
+    IF %SET_SDK_64% == Y (
+        ECHO Configuring Windows SDK %WINDOWS_SDK_VERSION% for Python 
%MAJOR_PYTHON_VERSION% on a 64 bit architecture
+        SET DISTUTILS_USE_SDK=1
+        SET MSSdk=1
+        "%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Setup\WindowsSdkVer.exe" -q 
-version:%WINDOWS_SDK_VERSION%
+        "%WIN_SDK_ROOT%\%WINDOWS_SDK_VERSION%\Bin\SetEnv.cmd" /x64 /release
+        ECHO Executing: %COMMAND_TO_RUN%
+        call %COMMAND_TO_RUN% || EXIT 1
+    ) ELSE (
+        ECHO Using default MSVC build environment for 64 bit architecture
+        ECHO Executing: %COMMAND_TO_RUN%
+        call %COMMAND_TO_RUN% || EXIT 1
+    )
+) ELSE (
+    ECHO Using default MSVC build environment for 32 bit architecture
+    ECHO Executing: %COMMAND_TO_RUN%
+    call %COMMAND_TO_RUN% || EXIT 1
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/appveyor.yml 
new/greenlet-0.4.10/appveyor.yml
--- old/greenlet-0.4.9/appveyor.yml     1970-01-01 01:00:00.000000000 +0100
+++ new/greenlet-0.4.10/appveyor.yml    2016-06-11 14:37:49.000000000 +0200
@@ -0,0 +1,76 @@
+version: 0.4.10.{build}
+environment:
+  global:
+    # SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
+    # /E:ON and /V:ON options are not enabled in the batch script intepreter
+    # See: http://stackoverflow.com/a/13751649/163740
+    CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd"
+
+  matrix:
+    # http://www.appveyor.com/docs/installed-software#python
+    - PYTHON_ROOT: "C:\\Python26"
+      PYTHON_ARCH: "32"
+      PYTHON_VERSION: "2.6.x"
+
+    - PYTHON_ROOT: "C:\\Python26-x64"
+      PYTHON_ARCH: "64"
+      PYTHON_VERSION: "2.6.x"
+
+    - PYTHON_ROOT: "C:\\Python27"
+      PYTHON_ARCH: "32"
+      PYTHON_VERSION: "2.7.x"
+
+    - PYTHON_ROOT: "C:\\Python27-x64"
+      PYTHON_ARCH: "64"
+      PYTHON_VERSION: "2.7.x"
+
+    - PYTHON_ROOT: "C:\\Python33"
+      PYTHON_ARCH: "32"
+      PYTHON_VERSION: "3.3.x"
+
+    - PYTHON_ROOT: "C:\\Python33-x64"
+      PYTHON_ARCH: "64"
+      PYTHON_VERSION: "3.3.x"
+
+    - PYTHON_ROOT: "C:\\Python34"
+      PYTHON_ARCH: "32"
+      PYTHON_VERSION: "3.4.x"
+
+    - PYTHON_ROOT: "C:\\Python34-x64"
+      PYTHON_ARCH: "64"
+      PYTHON_VERSION: "3.4.x"
+
+    - PYTHON_ROOT: "C:\\Python35"
+      PYTHON_ARCH: "32"
+      PYTHON_VERSION: "3.5.x"
+
+    - PYTHON_ROOT: "C:\\Python35-x64"
+      PYTHON_ARCH: "64"
+      PYTHON_VERSION: "3.5.x"
+
+install:
+  - "SET PATH=%PYTHON_ROOT%;%PYTHON_ROOT%\\Scripts;%PATH%"
+  - "python --version"
+  - "python -c \"import struct; print(struct.calcsize('P') * 8)\""
+
+  # Copy current pip.exe away, so the file is not locked on upgrade
+  - "copy %PYTHON_ROOT%\\Scripts\\pip.exe %PYTHON_ROOT%\\Scripts\\pip-old.exe"
+
+  # Upgrade pip to the latest version
+  - "pip-old install --disable-pip-version-check --upgrade pip"
+
+  # Install requirements for running tests and building artifacts
+  - "%CMD_IN_ENV% pip install --upgrade -r dev-requirements.txt"
+
+build_script:
+  - "%CMD_IN_ENV% python setup.py build"
+
+test_script:
+  - "%CMD_IN_ENV% python setup.py test"
+
+after_test:
+  - "%CMD_IN_ENV% python setup.py bdist_wheel"
+  - "%CMD_IN_ENV% python setup.py bdist_egg"
+
+artifacts:
+  - path: dist\*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/dev-requirements.txt 
new/greenlet-0.4.10/dev-requirements.txt
--- old/greenlet-0.4.9/dev-requirements.txt     1970-01-01 01:00:00.000000000 
+0100
+++ new/greenlet-0.4.10/dev-requirements.txt    2016-06-11 14:37:49.000000000 
+0200
@@ -0,0 +1,2 @@
+setuptools
+wheel
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/doc/greenlet.txt 
new/greenlet-0.4.10/doc/greenlet.txt
--- old/greenlet-0.4.9/doc/greenlet.txt 2015-05-31 15:02:31.000000000 +0200
+++ new/greenlet-0.4.10/doc/greenlet.txt        2016-04-02 20:26:46.000000000 
+0200
@@ -113,7 +113,7 @@
 suspended.  Jumping between greenlets is called "switching".
 
 When you create a greenlet, it gets an initially empty stack; when you
-first switch to it, it starts the run a specified function, which may call
+first switch to it, it starts to run a specified function, which may call
 other functions, switch out of the greenlet, etc.  When eventually the
 outermost function finishes its execution, the greenlet's stack becomes
 empty again and the greenlet is "dead".  Greenlets can also die of an
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/greenlet.h 
new/greenlet-0.4.10/greenlet.h
--- old/greenlet-0.4.9/greenlet.h       2015-08-30 20:01:07.000000000 +0200
+++ new/greenlet-0.4.10/greenlet.h      2016-06-11 19:28:00.000000000 +0200
@@ -11,7 +11,7 @@
 extern "C" {
 #endif
 
-#define GREENLET_VERSION "0.4.9"
+#define GREENLET_VERSION "0.4.10"
 
 typedef struct _greenlet {
        PyObject_HEAD
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/make-manylinux 
new/greenlet-0.4.10/make-manylinux
--- old/greenlet-0.4.9/make-manylinux   1970-01-01 01:00:00.000000000 +0100
+++ new/greenlet-0.4.10/make-manylinux  2016-04-02 20:27:10.000000000 +0200
@@ -0,0 +1,15 @@
+#!/bin/bash
+set -e
+
+if [ -d /greenlet -a -d /opt/python ]; then
+    # Running inside docker
+    cd /greenlet
+    for version in cp27-cp27mu cp34-cp34m cp35-cp35m; do
+        /opt/python/${version}/bin/pip wheel greenlet
+        auditwheel repair greenlet*${version}*.whl
+        rm greenlet*${version}*whl
+    done
+    exit 0
+fi
+
+docker run --rm -ti -v "$(pwd):/greenlet" quay.io/pypa/manylinux1_x86_64 
/greenlet/make-manylinux
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/make-win-release 
new/greenlet-0.4.10/make-win-release
--- old/greenlet-0.4.9/make-win-release 2015-05-31 15:02:31.000000000 +0200
+++ new/greenlet-0.4.10/make-win-release        2016-04-02 20:26:46.000000000 
+0200
@@ -12,6 +12,8 @@
     "Python33x64": common_dist,
     "Python34": common_dist,
     "Python34x64": common_dist,
+    "Python35": common_dist,
+    "Python35x64": common_dist,
 }
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/platform/switch_arm32_ios.h 
new/greenlet-0.4.10/platform/switch_arm32_ios.h
--- old/greenlet-0.4.9/platform/switch_arm32_ios.h      1970-01-01 
01:00:00.000000000 +0100
+++ new/greenlet-0.4.10/platform/switch_arm32_ios.h     2015-05-31 
18:06:02.000000000 +0200
@@ -0,0 +1,67 @@
+/*
+ * this is the internal transfer function.
+ *
+ * HISTORY
+ * 31-May-15 iOS support. Ported from arm32. Proton <feisu...@163.com>
+ *
+ * NOTES
+ *
+ *   It is not possible to detect if fp is used or not, so the supplied
+ *   switch function needs to support it, so that you can remove it if
+ *   it does not apply to you.
+ *
+ * POSSIBLE ERRORS
+ *
+ *   "fp cannot be used in asm here"
+ *
+ *   - Try commenting out "fp" in REGS_TO_SAVE.
+ *
+ */
+
+#define STACK_REFPLUS 1
+
+#ifdef SLP_EVAL
+
+#define STACK_MAGIC 0
+#define REG_SP "sp"
+#define REG_SPSP "sp,sp"
+#define REG_FP "r7"
+#define REG_FPFP "r7,r7"
+#define REGS_TO_SAVE_GENERAL "r4", "r5", "r6", "r8", "r10", "r11", "lr"
+#define REGS_TO_SAVE REGS_TO_SAVE_GENERAL, "d8", "d9", "d10", "d11", \
+                                           "d12", "d13", "d14", "d15"
+
+static int
+#ifdef __GNUC__
+__attribute__((optimize("no-omit-frame-pointer")))
+#endif
+slp_switch(void)
+{
+        void *fp;
+        register int *stackref, stsizediff, result;
+        __asm__ volatile ("" : : : REGS_TO_SAVE);
+        __asm__ volatile ("str " REG_FP ",%0" : "=m" (fp));
+        __asm__ ("mov %0," REG_SP : "=r" (stackref));
+        {
+                SLP_SAVE_STATE(stackref, stsizediff);
+                __asm__ volatile (
+                    "add " REG_SPSP ",%0\n"
+                    "add " REG_FPFP ",%0\n"
+                    :
+                    : "r" (stsizediff)
+                    : REGS_TO_SAVE /* Clobber registers, force compiler to
+                                    * recalculate address of void *fp from 
REG_SP or REG_FP */
+                );
+                SLP_RESTORE_STATE();
+        }
+        __asm__ volatile (
+            "ldr " REG_FP ", %1\n\t"
+            "mov %0, #0"
+            : "=r" (result)
+            : "m" (fp)
+            : REGS_TO_SAVE /* Force compiler to restore saved registers after 
this */
+        );
+        return result;
+}
+
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/setup.py new/greenlet-0.4.10/setup.py
--- old/greenlet-0.4.9/setup.py 2015-08-30 20:00:42.000000000 +0200
+++ new/greenlet-0.4.10/setup.py        2016-06-11 19:24:34.000000000 +0200
@@ -5,10 +5,12 @@
 # workaround segfaults on openbsd and RHEL 3 / CentOS 3 . see
 # https://bitbucket.org/ambroff/greenlet/issue/11/segfault-on-openbsd-i386
 # https://github.com/python-greenlet/greenlet/issues/4
+# https://github.com/python-greenlet/greenlet/issues/94
 if ((sys.platform == "openbsd4" and os.uname()[-1] == "i386")
     or ("-with-redhat-3." in platform.platform() and platform.machine() == 
'i686')
     or (sys.platform == "sunos5" and os.uname()[-1] == "sun4v")
-    or ("SunOS" in platform.platform() and platform.machine() == "sun4v")):
+    or ("SunOS" in platform.platform() and platform.machine() == "sun4v")
+    or (sys.platform == "linux" and platform.machine() == "ppc")):
     os.environ["CFLAGS"] = ("%s %s" % (os.environ.get("CFLAGS", ""), 
"-Os")).lstrip()
 
 try:
@@ -68,7 +70,7 @@
 
 setup(
     name="greenlet",
-    version='0.4.9',
+    version='0.4.10',
     description='Lightweight in-process concurrent programming',
     long_description=readfile("README.rst"),
     maintainer="Alexey Borzenkov",
@@ -96,6 +98,7 @@
         'Programming Language :: Python :: 3.2',
         'Programming Language :: Python :: 3.3',
         'Programming Language :: Python :: 3.4',
+        'Programming Language :: Python :: 3.5',
         'Operating System :: OS Independent',
         'Topic :: Software Development :: Libraries :: Python Modules'],
     **setuptools_args)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/greenlet-0.4.9/tests/test_stack_saved.py 
new/greenlet-0.4.10/tests/test_stack_saved.py
--- old/greenlet-0.4.9/tests/test_stack_saved.py        1970-01-01 
01:00:00.000000000 +0100
+++ new/greenlet-0.4.10/tests/test_stack_saved.py       2015-05-31 
15:02:31.000000000 +0200
@@ -0,0 +1,19 @@
+import greenlet
+import unittest
+
+
+class Test(unittest.TestCase):
+
+    def test_stack_saved(self):
+        main = greenlet.getcurrent()
+        self.assertEqual(main._stack_saved, 0)
+
+        def func():
+            main.switch(main._stack_saved)
+
+        g = greenlet.greenlet(func)
+        x = g.switch()
+        assert x > 0, x
+        assert g._stack_saved > 0, g._stack_saved
+        g.switch()
+        assert g._stack_saved == 0, g._stack_saved


Reply via email to