Hello community,

here is the log from the commit of package python-uncertainties for 
openSUSE:Factory checked in at 2019-08-19 21:38:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-uncertainties (Old)
 and      /work/SRC/openSUSE:Factory/.python-uncertainties.new.22127 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-uncertainties"

Mon Aug 19 21:38:18 2019 rev:7 rq:724152 version:3.1.2

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-uncertainties/python-uncertainties.changes    
    2019-08-05 10:38:16.971320804 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-uncertainties.new.22127/python-uncertainties.changes
     2019-08-19 21:38:21.172348189 +0200
@@ -1,0 +2,11 @@
+Fri Aug 16 15:57:12 UTC 2019 - Todd R <toddrme2...@gmail.com>
+
+- Update to 3.1.2
+  * Starting with NumPy 1.17, numpy.linalg.pinv has a None
+   __defaults__ attribute, for which the code made no provision.
+   This is fixed.
+- Remove upstream-included patches:
+  fix_raw_strings.patch
+  fix_numpy_1_17.patch
+
+-------------------------------------------------------------------

Old:
----
  fix_numpy_1_17.patch
  fix_raw_strings.patch
  uncertainties-3.1.1.tar.gz

New:
----
  uncertainties-3.1.2.tar.gz

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

Other differences:
------------------
++++++ python-uncertainties.spec ++++++
--- /var/tmp/diff_new_pack.Ls8fVN/_old  2019-08-19 21:38:22.216347533 +0200
+++ /var/tmp/diff_new_pack.Ls8fVN/_new  2019-08-19 21:38:22.216347533 +0200
@@ -18,23 +18,18 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-uncertainties
-Version:        3.1.1
+Version:        3.1.2
 Release:        0
 Summary:        Uncertainties on the Quantities Involved (aka "Error 
Propagation")
 License:        BSD-3-Clause
 Group:          Development/Languages/Python
 URL:            https://github.com/lebigot/uncertainties/
 Source:         
https://files.pythonhosted.org/packages/source/u/uncertainties/uncertainties-%{version}.tar.gz
-# PATCH-FIX-UPSTREAM fix_raw_strings.patch - gh#lebigot/uncertainties#98
-Patch0:         fix_raw_strings.patch
-# PATCH-FIX-UPSTREAM fix_numpy_1_17.patch - gh#lebigot/uncertainties#89
-Patch1:         fix_numpy_1_17.patch
 BuildRequires:  %{python_module nose}
 BuildRequires:  %{python_module numpy}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
-# Package uses 2to3 to generate python3 compatible code
 BuildRequires:  python3-testsuite
 BuildRequires:  python3-tools
 BuildArch:      noarch
@@ -53,7 +48,8 @@
 # crazy directory layout
 rm -r uncertainties-py23
 mv uncertainties-py27 uncertainties
-%autopatch -p1
+sed -i -e '/^#!\//, 1d' uncertainties/1to2.py
+sed -i -e '/^#!\//, 1d' uncertainties/lib1to2/test_1to2.py
 
 %build
 %python_build

++++++ uncertainties-3.1.1.tar.gz -> uncertainties-3.1.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/PKG-INFO 
new/uncertainties-3.1.2/PKG-INFO
--- old/uncertainties-3.1.1/PKG-INFO    2019-05-30 20:02:29.000000000 +0200
+++ new/uncertainties-3.1.2/PKG-INFO    2019-08-05 09:52:54.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: uncertainties
-Version: 3.1.1
+Version: 3.1.2
 Summary: Transparent calculations with uncertainties on the quantities 
involved (aka error propagation); fast calculation of derivatives
 Home-page: http://uncertainties-python-package.readthedocs.io/
 Author: Eric O. LEBIGOT (EOL)
@@ -108,6 +108,7 @@
         
         Main changes:
         
+        - 3.1.2: Partial fix for NumPy 1.17 and `unumpy.ulinalg.pinv()`.
         - 3.1: Variables built through a correlation or covariance matrix, and 
that
           have uncertainties that span many orders of magnitude are now 
           calculated more accurately (improved ``correlated_values()`` and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/README.rst 
new/uncertainties-3.1.2/README.rst
--- old/uncertainties-3.1.1/README.rst  2019-05-19 22:33:18.000000000 +0200
+++ new/uncertainties-3.1.2/README.rst  2019-08-04 22:15:34.000000000 +0200
@@ -34,7 +34,7 @@
 
 * Documentation: http://uncertainties-python-package.readthedocs.io/
 * Issues: https://github.com/lebigot/uncertainties/issues/
-* Python Package Index entry: http://pypi.python.org/pypi/uncertainties/
+* Python Package Index entry: https://pypi.org/project/uncertainties
 * Code: https://github.com/lebigot/uncertainties/
 
 GitHub
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/doc/index.rst 
new/uncertainties-3.1.2/doc/index.rst
--- old/uncertainties-3.1.1/doc/index.rst       2019-05-19 22:33:18.000000000 
+0200
+++ new/uncertainties-3.1.2/doc/index.rst       2019-08-04 22:15:34.000000000 
+0200
@@ -387,10 +387,10 @@
 `donations`_: they help keep this project alive by providing positive
 feedback.
 
-I greatly appreciate having gotten key technical input from Arnaud
-Delobelle, Pierre Cladé, and Sebastian Walter.  Patches by Pierre
-Cladé, Tim Head, José Sabater Montes, Martijn Pieters, Ram Rachum,
-Christoph Deil, Gabi Davar and Roman Yurchak are gratefully acknowledged.
+I greatly appreciate having gotten key technical input from Arnaud Delobelle,
+Pierre Cladé, and Sebastian Walter.  Patches by Pierre Cladé, Tim Head, José
+Sabater Montes, Martijn Pieters, Ram Rachum, Christoph Deil, Gabi Davar, Roman
+Yurchak and Paul Romano are gratefully acknowledged.
 
 I would also like to thank users who contributed with feedback and
 suggestions, which greatly helped improve this program: Joaquin Abian,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/setup.py 
new/uncertainties-3.1.2/setup.py
--- old/uncertainties-3.1.1/setup.py    2019-05-30 20:02:20.000000000 +0200
+++ new/uncertainties-3.1.2/setup.py    2019-08-04 22:15:34.000000000 +0200
@@ -42,7 +42,7 @@
 # Common options for distutils/setuptools's setup():
 setup_options = dict(
     name='uncertainties',
-    version='3.1.1',
+    version='3.1.2',
     author='Eric O. LEBIGOT (EOL)',
     author_email='eric.lebi...@normalesup.org',
     url='http://uncertainties-python-package.readthedocs.io/',
@@ -160,6 +160,7 @@
 
 Main changes:
 
+- 3.1.2: Partial fix for NumPy 1.17 and `unumpy.ulinalg.pinv()`.
 - 3.1: Variables built through a correlation or covariance matrix, and that
   have uncertainties that span many orders of magnitude are now 
   calculated more accurately (improved ``correlated_values()`` and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/uncertainties-py23/__init__.py 
new/uncertainties-3.1.2/uncertainties-py23/__init__.py
--- old/uncertainties-3.1.1/uncertainties-py23/__init__.py      2019-05-30 
19:48:32.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py23/__init__.py      2019-08-04 
22:18:14.000000000 +0200
@@ -225,7 +225,7 @@
 from uncertainties.core import __all__  # For a correct help(uncertainties)
 
 # Numerical version:
-__version_info__ = (3, 1, 1)
+__version_info__ = (3, 1, 2)
 __version__ = '.'.join(map(str, __version_info__))
 
 __author__ = 'Eric O. LEBIGOT (EOL) <eric.lebi...@normalesup.org>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/uncertainties-py23/core.py 
new/uncertainties-3.1.2/uncertainties-py23/core.py
--- old/uncertainties-3.1.1/uncertainties-py23/core.py  2019-05-30 
19:48:32.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py23/core.py  2019-08-04 
22:18:14.000000000 +0200
@@ -1037,13 +1037,13 @@
     # parentheses. This has the side effect of making the part between
     # the parentheses non-breakable (the text inside parentheses in a
     # LaTeX math expression $...$ can be broken).
-    'latex': ('\left(', r'\right)'),
+    'latex': (r'\left(', r'\right)'),
     'default': ('(', ')')  # Basic text mode
     }
 
 def format_num(nom_val_main, error_main, common_exp,
                fmt_parts, prec, main_pres_type, options):
-    '''
+    r'''
     Return a formatted number with uncertainty.
 
     Null errors (error_main) are displayed as the integer 0, with
@@ -1184,10 +1184,10 @@
         elif isnan(error_main):
             uncert_str = robust_format(error_main, main_pres_type)
             if 'L' in options:
-                uncert_str = '\mathrm{%s}' % uncert_str
+                uncert_str = r'\mathrm{%s}' % uncert_str
         elif isinf(error_main):
             if 'L' in options:
-                uncert_str = '\infty'
+                uncert_str = r'\infty'
             else:
                 uncert_str = robust_format(error_main, main_pres_type)
         else:  #  Error with a meaningful first digit (not 0, and real number)
@@ -1257,7 +1257,7 @@
         if 'L' in options:
 
             if isnan(nom_val_main):
-                nom_val_str = '\mathrm{%s}' % nom_val_str
+                nom_val_str = r'\mathrm{%s}' % nom_val_str
             elif isinf(nom_val_main):
                 # !! It is wasteful, in this case, to replace
                 # nom_val_str: could this be avoided while avoiding to
@@ -1395,7 +1395,7 @@
         if 'L' in options:
 
             if isnan(nom_val_main):
-                nom_val_str = '\mathrm{%s}' % nom_val_str
+                nom_val_str = r'\mathrm{%s}' % nom_val_str
             elif isinf(nom_val_main):
                 if nom_val_main < 0:
                     sign_str = '-'
@@ -1404,9 +1404,9 @@
                 nom_val_str = '%s\infty' % sign_str
 
             if isnan(error_main):
-                error_str = '\mathrm{%s}' % error_str
+                error_str = r'\mathrm{%s}' % error_str
             elif isinf(error_main):
-                error_str = '\infty'
+                error_str = r'\infty'
 
         if nom_has_exp:
             nom_val_str += exp_str
@@ -1440,7 +1440,7 @@
             # Unicode-compatible LaTeX source can use ±:
             pm_symbol = u'±'
         elif 'L' in options:
-            pm_symbol = ' \pm '
+            pm_symbol = r' \pm '
         else:
             pm_symbol = '+/-'
 
@@ -1987,7 +1987,7 @@
 
         # Format specification parsing:
 
-        match = re.match('''
+        match = re.match(r'''
             (?P<fill>[^{}]??)(?P<align>[<>=^]?)  # fill cannot be { or }
             (?P<sign>[-+ ]?)
             (?P<zero>0?)
@@ -2962,7 +2962,7 @@
 # Regexp for a number with uncertainty (e.g., "-1.234(2)e-6"), where
 # the uncertainty is optional (in which case the uncertainty is
 # implicit). The uncertainty can also be nan or NAN:
-NUMBER_WITH_UNCERT_RE_STR = u'''
+NUMBER_WITH_UNCERT_RE_STR = ur'''
     ([+-])?  # Sign
     %s  # Main number
     (?:\(%s\))?  # Optional uncertainty
@@ -2979,7 +2979,7 @@
 # Number with uncertainty with a factored exponent (e.g., of the form
 # (... +/- ...)e10): this is a loose matching, so as to accommodate
 # for multiple formats:
-NUMBER_WITH_UNCERT_GLOBAL_EXP_RE_MATCH = re.compile(u'''
+NUMBER_WITH_UNCERT_GLOBAL_EXP_RE_MATCH = re.compile(ur'''
     \(
     (?P<simple_num_with_uncert>.*)
     \)
@@ -3053,7 +3053,7 @@
     return (value, uncert_value)
 
 # Regexp for catching the two variable parts of -1.2×10⁻¹²:
-PRETTY_PRINT_MATCH = re.compile(u'(.*?)\s*×\s*10(.*)').match
+PRETTY_PRINT_MATCH = re.compile(ur'(.*?)\s*×\s*10(.*)').match
 
 def to_float(value_str):
     '''
@@ -3130,7 +3130,7 @@
     else:
         factor = 1  # No global exponential factor
 
-    match = re.match(u'(.*)(?:\+/-|±)(.*)', representation)
+    match = re.match(ur'(.*)(?:\+/-|±)(.*)', representation)
     if match:
 
         (nom_value, uncert) = match.groups()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/uncertainties-3.1.1/uncertainties-py23/unumpy/core.py 
new/uncertainties-3.1.2/uncertainties-py23/unumpy/core.py
--- old/uncertainties-3.1.1/uncertainties-py23/unumpy/core.py   2019-05-30 
19:48:32.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py23/unumpy/core.py   2019-08-04 
22:18:14.000000000 +0200
@@ -14,6 +14,7 @@
 # Standard modules:
 import sys
 import itertools
+import inspect
 
 # 3rd-party modules:
 import numpy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/uncertainties-3.1.1/uncertainties-py23/unumpy/test_unumpy.py 
new/uncertainties-3.1.2/uncertainties-py23/unumpy/test_unumpy.py
--- old/uncertainties-3.1.1/uncertainties-py23/unumpy/test_unumpy.py    
2019-05-30 19:48:32.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py23/unumpy/test_unumpy.py    
2019-08-04 22:18:14.000000000 +0200
@@ -64,8 +64,11 @@
     # Equivalent with an array of AffineScalarFunc objects:
     try:
         numpy.exp(arr + ufloat(0, 0))
-    except AttributeError:
-        pass  # ! This is usual (but could be avoided)
+    except (AttributeError, TypeError):
+        # In numpy<1.17, an AttributeError is raised in this situation. This 
was
+        # considered a bug however, and in numpy 1.17 it was changed to a
+        # TypeError (see PR #12700 in numpy repository)
+        pass
     else:
         raise Exception("numpy.exp unexpectedly worked")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/uncertainties-py27/__init__.py 
new/uncertainties-3.1.2/uncertainties-py27/__init__.py
--- old/uncertainties-3.1.1/uncertainties-py27/__init__.py      2019-05-30 
19:47:40.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py27/__init__.py      2019-08-04 
22:12:44.000000000 +0200
@@ -225,7 +225,7 @@
 from .core import __all__  # For a correct help(uncertainties)
 
 # Numerical version:
-__version_info__ = (3, 1, 1)
+__version_info__ = (3, 1, 2)
 __version__ = '.'.join(map(str, __version_info__))
 
 __author__ = 'Eric O. LEBIGOT (EOL) <eric.lebi...@normalesup.org>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/uncertainties-py27/core.py 
new/uncertainties-3.1.2/uncertainties-py27/core.py
--- old/uncertainties-3.1.1/uncertainties-py27/core.py  2019-05-30 
19:47:40.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py27/core.py  2019-08-04 
22:12:44.000000000 +0200
@@ -1019,13 +1019,13 @@
     # parentheses. This has the side effect of making the part between
     # the parentheses non-breakable (the text inside parentheses in a
     # LaTeX math expression $...$ can be broken).
-    'latex': ('\left(', r'\right)'),
+    'latex': (r'\left(', r'\right)'),
     'default': ('(', ')')  # Basic text mode
     }
 
 def format_num(nom_val_main, error_main, common_exp,
                fmt_parts, prec, main_pres_type, options):
-    '''
+    r'''
     Return a formatted number with uncertainty.
 
     Null errors (error_main) are displayed as the integer 0, with
@@ -1166,10 +1166,10 @@
         elif isnan(error_main):
             uncert_str = robust_format(error_main, main_pres_type)
             if 'L' in options:
-                uncert_str = '\mathrm{%s}' % uncert_str
+                uncert_str = r'\mathrm{%s}' % uncert_str
         elif isinf(error_main):
             if 'L' in options:
-                uncert_str = '\infty'
+                uncert_str = r'\infty'
             else:
                 uncert_str = robust_format(error_main, main_pres_type)
         else:  #  Error with a meaningful first digit (not 0, and real number)
@@ -1239,13 +1239,13 @@
         if 'L' in options:
 
             if isnan(nom_val_main):
-                nom_val_str = '\mathrm{%s}' % nom_val_str
+                nom_val_str = r'\mathrm{%s}' % nom_val_str
             elif isinf(nom_val_main):
                 # !! It is wasteful, in this case, to replace
                 # nom_val_str: could this be avoided while avoiding to
                 # duplicate the formula for nom_val_str for the common
                 # case (robust_format(...))?
-                nom_val_str = '%s\infty' % ('-' if nom_val_main < 0 else '')
+                nom_val_str = r'%s\infty' % ('-' if nom_val_main < 0 else '')
 
         value_str = nom_val_str+value_end
 
@@ -1364,14 +1364,14 @@
         if 'L' in options:
 
             if isnan(nom_val_main):
-                nom_val_str = '\mathrm{%s}' % nom_val_str
+                nom_val_str = r'\mathrm{%s}' % nom_val_str
             elif isinf(nom_val_main):
-                nom_val_str = '%s\infty' % ('-' if nom_val_main < 0 else '')
+                nom_val_str = r'%s\infty' % ('-' if nom_val_main < 0 else '')
 
             if isnan(error_main):
-                error_str = '\mathrm{%s}' % error_str
+                error_str = r'\mathrm{%s}' % error_str
             elif isinf(error_main):
-                error_str = '\infty'
+                error_str = r'\infty'
 
         if nom_has_exp:
             nom_val_str += exp_str
@@ -1405,7 +1405,7 @@
             # Unicode-compatible LaTeX source can use ±:
             pm_symbol = u'±'
         elif 'L' in options:
-            pm_symbol = ' \pm '
+            pm_symbol = r' \pm '
         else:
             pm_symbol = '+/-'
 
@@ -1954,7 +1954,7 @@
 
         # Format specification parsing:
 
-        match = re.match('''
+        match = re.match(r'''
             (?P<fill>[^{}]??)(?P<align>[<>=^]?)  # fill cannot be { or }
             (?P<sign>[-+ ]?)
             (?P<zero>0?)
@@ -2923,7 +2923,7 @@
 # Regexp for a number with uncertainty (e.g., "-1.234(2)e-6"), where
 # the uncertainty is optional (in which case the uncertainty is
 # implicit). The uncertainty can also be nan or NAN:
-NUMBER_WITH_UNCERT_RE_STR = u'''
+NUMBER_WITH_UNCERT_RE_STR = ur'''
     ([+-])?  # Sign
     %s  # Main number
     (?:\(%s\))?  # Optional uncertainty
@@ -2940,7 +2940,7 @@
 # Number with uncertainty with a factored exponent (e.g., of the form
 # (... +/- ...)e10): this is a loose matching, so as to accommodate
 # for multiple formats:
-NUMBER_WITH_UNCERT_GLOBAL_EXP_RE_MATCH = re.compile(u'''
+NUMBER_WITH_UNCERT_GLOBAL_EXP_RE_MATCH = re.compile(ur'''
     \(
     (?P<simple_num_with_uncert>.*)
     \)
@@ -3012,7 +3012,7 @@
     return (value, uncert_value)
 
 # Regexp for catching the two variable parts of -1.2×10⁻¹²:
-PRETTY_PRINT_MATCH = re.compile(u'(.*?)\s*×\s*10(.*)').match
+PRETTY_PRINT_MATCH = re.compile(ur'(.*?)\s*×\s*10(.*)').match
 
 def to_float(value_str):
     '''
@@ -3089,7 +3089,7 @@
     else:
         factor = 1  # No global exponential factor
 
-    match = re.match(u'(.*)(?:\+/-|±)(.*)', representation)
+    match = re.match(ur'(.*)(?:\+/-|±)(.*)', representation)
     if match:
 
         (nom_value, uncert) = match.groups()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/uncertainties-3.1.1/uncertainties-py27/unumpy/core.py 
new/uncertainties-3.1.2/uncertainties-py27/unumpy/core.py
--- old/uncertainties-3.1.1/uncertainties-py27/unumpy/core.py   2019-05-30 
19:47:40.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py27/unumpy/core.py   2019-08-04 
22:12:44.000000000 +0200
@@ -14,6 +14,7 @@
 # Standard modules:
 import sys
 import itertools
+import inspect
 
 # 3rd-party modules:
 import numpy
@@ -532,7 +533,20 @@
         yield term1+term2+term3
 
 # Default rcond argument for the generalization of numpy.linalg.pinv:
-pinv_default = numpy.linalg.pinv.__defaults__[0]  # Python 1, 2.6+:
+#
+# Most common modern case first:
+try: 
+    pinv_default = (
+        inspect.signature(numpy.linalg.pinv).parameters["rcond"].default)
+except AttributeError:  # No inspect.signature() before Python 3.3
+    try:
+        # In numpy 1.17+, pinv is wrapped using a decorator which unfortunately
+        # results in the metadata (argument defaults) being lost. However, we
+        # can still get at the original function using the __wrapped__
+        # attribute (which is what inspect.signature() does).
+        pinv_default = numpy.linalg.pinv.__wrapped__.__defaults__[0]
+    except AttributeError:  # Function not wrapped in NumPy < 1.17
+        pinv_default = numpy.linalg.pinv.__defaults__[0]  # Python 1, 2.6+:
 
 pinv_with_uncert = func_with_deriv_to_uncert_func(pinv_with_derivatives)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/uncertainties-3.1.1/uncertainties-py27/unumpy/test_unumpy.py 
new/uncertainties-3.1.2/uncertainties-py27/unumpy/test_unumpy.py
--- old/uncertainties-3.1.1/uncertainties-py27/unumpy/test_unumpy.py    
2019-05-30 19:47:40.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties-py27/unumpy/test_unumpy.py    
2019-08-04 22:12:44.000000000 +0200
@@ -62,8 +62,11 @@
     # Equivalent with an array of AffineScalarFunc objects:
     try:
         numpy.exp(arr + ufloat(0, 0))
-    except AttributeError:
-        pass  # ! This is usual (but could be avoided)
+    except (AttributeError, TypeError):
+        # In numpy<1.17, an AttributeError is raised in this situation. This 
was
+        # considered a bug however, and in numpy 1.17 it was changed to a
+        # TypeError (see PR #12700 in numpy repository)
+        pass
     else:
         raise Exception("numpy.exp unexpectedly worked")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uncertainties-3.1.1/uncertainties.egg-info/PKG-INFO 
new/uncertainties-3.1.2/uncertainties.egg-info/PKG-INFO
--- old/uncertainties-3.1.1/uncertainties.egg-info/PKG-INFO     2019-05-30 
20:02:28.000000000 +0200
+++ new/uncertainties-3.1.2/uncertainties.egg-info/PKG-INFO     2019-08-05 
09:52:54.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: uncertainties
-Version: 3.1.1
+Version: 3.1.2
 Summary: Transparent calculations with uncertainties on the quantities 
involved (aka error propagation); fast calculation of derivatives
 Home-page: http://uncertainties-python-package.readthedocs.io/
 Author: Eric O. LEBIGOT (EOL)
@@ -108,6 +108,7 @@
         
         Main changes:
         
+        - 3.1.2: Partial fix for NumPy 1.17 and `unumpy.ulinalg.pinv()`.
         - 3.1: Variables built through a correlation or covariance matrix, and 
that
           have uncertainties that span many orders of magnitude are now 
           calculated more accurately (improved ``correlated_values()`` and


Reply via email to