forked from pool/python-lmfit
Accepting request 1186990 from devel:languages:python:numeric
Automatic submission by obs-autosubmit OBS-URL: https://build.opensuse.org/request/show/1186990 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-lmfit?expand=0&rev=6
This commit is contained in:
commit
5c185703f7
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:044a052a11a61da0576274504c17eb7e2803b41128e25821e96632207f23c88c
|
|
||||||
size 336346
|
|
3
lmfit-1.3.1.tar.gz
Normal file
3
lmfit-1.3.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:bc386244adbd10ef1a2a2c4f9d17b3def905552c0a64aef854f0ad46cc309cc5
|
||||||
|
size 629917
|
@ -1,3 +1,42 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jul 5 03:01:53 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
|
||||||
|
|
||||||
|
- Update to 1.3.1:
|
||||||
|
* New features:
|
||||||
|
+ add 'min_rel_change' as optional variable in calculation of confidence
|
||||||
|
intervals with Model.conf_interval().
|
||||||
|
+ Model.eval_uncertainty now takes an optional dscale parameter (default
|
||||||
|
value of 0.01) to set the step size for calculating derivatives
|
||||||
|
+ add calculation of predicted_interval to Model.eval_uncertainty
|
||||||
|
* Bug fixes/enhancements:
|
||||||
|
+ allow Model.eval_uncertainty to be performed with single points for x
|
||||||
|
independent variables
|
||||||
|
+ allow Model._parse_param to handle older-style passed-in 'argnames' and
|
||||||
|
'kwargs' as for variadic function
|
||||||
|
+ better allow (or re-allow) Model function independent variables / keyword
|
||||||
|
arguments to be given non-default values at model creation time
|
||||||
|
+ add form as independent variable for builtin Step, Rectangle, Thermal
|
||||||
|
Distribution models.
|
||||||
|
+ use Model._reprstring(long=True) for model Model.__repr__().
|
||||||
|
+ restore best-fit parameter values for high accuracy values of constrained
|
||||||
|
values
|
||||||
|
+ improvement to Model for the difference between Parameter, "independent
|
||||||
|
variable", and "option".
|
||||||
|
+ better saving/loading saved states of Model now use dill, have several
|
||||||
|
cleanups, and are now versioned for future-proofing.
|
||||||
|
+ fix bug calculating r-squared for fits with weights
|
||||||
|
+ fix bug in modelresult.eval_uncertainty() after load_modelresult()
|
||||||
|
+ add test for MinimizerResult.uvars after successful fit
|
||||||
|
* Maintenance/Deprecations:
|
||||||
|
+ drop support for Python 3.7
|
||||||
|
+ fix tests for Python 3.12 and Python 3.13-dev
|
||||||
|
+ increase minimum numpy verstio to 1.23 and scipy to 1.8.
|
||||||
|
+ updates for compatibility with numpy 2.0
|
||||||
|
+ the dill package is now required
|
||||||
|
- Switch to autosetup macro.
|
||||||
|
- Add patch support-numpy-2.patch:
|
||||||
|
* Support numpy 2.0 more thoroughly.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Aug 21 10:32:37 UTC 2023 - Markéta Machová <mmachova@suse.com>
|
Mon Aug 21 10:32:37 UTC 2023 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package python-lmfit
|
# spec file for package python-lmfit
|
||||||
#
|
#
|
||||||
# Copyright (c) 2023 SUSE LLC
|
# Copyright (c) 2024 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -17,13 +17,15 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: python-lmfit
|
Name: python-lmfit
|
||||||
Version: 1.2.2
|
Version: 1.3.1
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Least-Squares Minimization with Bounds and Constraints
|
Summary: Least-Squares Minimization with Bounds and Constraints
|
||||||
License: BSD-3-Clause AND MIT
|
License: BSD-3-Clause AND MIT
|
||||||
URL: https://lmfit.github.io/lmfit-py/
|
URL: https://lmfit.github.io/lmfit-py/
|
||||||
Source: https://files.pythonhosted.org/packages/source/l/lmfit/lmfit-%{version}.tar.gz
|
Source: https://files.pythonhosted.org/packages/source/l/lmfit/lmfit-%{version}.tar.gz
|
||||||
BuildRequires: %{python_module base >= 3.7}
|
# PATCH-FIX-UPSTREAM gh#lmfit/lmfit-py#959
|
||||||
|
Patch0: support-numpy-2.patch
|
||||||
|
BuildRequires: %{python_module base >= 3.8}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module setuptools_scm}
|
BuildRequires: %{python_module setuptools_scm}
|
||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module setuptools}
|
||||||
@ -31,19 +33,22 @@ BuildRequires: %{python_module wheel}
|
|||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: python-rpm-macros
|
BuildRequires: python-rpm-macros
|
||||||
Requires: python-asteval >= 0.9.28
|
Requires: python-asteval >= 0.9.28
|
||||||
Requires: python-numpy >= 1.19
|
Requires: python-dill >= 0.3.4
|
||||||
Requires: python-scipy >= 1.6
|
Requires: python-numpy >= 1.23
|
||||||
|
Requires: python-scipy >= 1.8
|
||||||
Requires: python-uncertainties >= 3.1.4
|
Requires: python-uncertainties >= 3.1.4
|
||||||
Recommends: python-dill
|
|
||||||
Recommends: python-emcee
|
Recommends: python-emcee
|
||||||
Recommends: python-matplotlib
|
Recommends: python-matplotlib
|
||||||
Recommends: python-pandas
|
Recommends: python-pandas
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
# SECTION test requirements
|
# SECTION test requirements
|
||||||
BuildRequires: %{python_module asteval >= 0.9.28}
|
BuildRequires: %{python_module asteval >= 0.9.28}
|
||||||
BuildRequires: %{python_module numpy >= 1.19}
|
BuildRequires: %{python_module dill >= 0.3.4}
|
||||||
|
BuildRequires: %{python_module flaky}
|
||||||
|
BuildRequires: %{python_module numpy >= 1.23}
|
||||||
|
BuildRequires: %{python_module pytest-cov}
|
||||||
BuildRequires: %{python_module pytest}
|
BuildRequires: %{python_module pytest}
|
||||||
BuildRequires: %{python_module scipy >= 1.6}
|
BuildRequires: %{python_module scipy >= 1.8}
|
||||||
BuildRequires: %{python_module uncertainties >= 3.1.4}
|
BuildRequires: %{python_module uncertainties >= 3.1.4}
|
||||||
# /SECTION
|
# /SECTION
|
||||||
%python_subpackages
|
%python_subpackages
|
||||||
@ -68,10 +73,8 @@ estimating Parameter uncertainties from the covariance matrix is
|
|||||||
questionable.
|
questionable.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n lmfit-%{version}
|
%autosetup -p1 -n lmfit-%{version}
|
||||||
sed -i -e '/^#!\//, 1d' lmfit/jsonutils.py
|
sed -i -e '/^#!\//, 1d' lmfit/jsonutils.py
|
||||||
# only coverage related pytest flags here. remove
|
|
||||||
sed -i '/addopts/d' setup.cfg
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%pyproject_wheel
|
%pyproject_wheel
|
||||||
@ -97,6 +100,6 @@ fi
|
|||||||
%doc README.rst AUTHORS.txt
|
%doc README.rst AUTHORS.txt
|
||||||
%license LICENSE
|
%license LICENSE
|
||||||
%{python_sitelib}/lmfit
|
%{python_sitelib}/lmfit
|
||||||
%{python_sitelib}/lmfit-%{version}*-info
|
%{python_sitelib}/lmfit-%{version}.dist-info
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
343
support-numpy-2.patch
Normal file
343
support-numpy-2.patch
Normal file
@ -0,0 +1,343 @@
|
|||||||
|
From eee021f650833f0a2667315b2ab5d8351f0b1a1f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthew Newville <newville@cars.uchicago.edu>
|
||||||
|
Date: Sat, 29 Jun 2024 10:27:59 -0500
|
||||||
|
Subject: [PATCH 1/6] clean un-serializable symbols with NumPy2 that should be
|
||||||
|
removed from asteval
|
||||||
|
|
||||||
|
---
|
||||||
|
lmfit/parameter.py | 31 ++++++++++++++++++++++++-------
|
||||||
|
pyproject.toml | 3 ++-
|
||||||
|
2 files changed, 26 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lmfit/parameter.py b/lmfit/parameter.py
|
||||||
|
index ca9ccc72..b68584c4 100644
|
||||||
|
--- a/lmfit/parameter.py
|
||||||
|
+++ b/lmfit/parameter.py
|
||||||
|
@@ -5,6 +5,8 @@
|
||||||
|
|
||||||
|
from asteval import Interpreter, get_ast_names, valid_symbol_name
|
||||||
|
from numpy import arcsin, array, cos, inf, isclose, sin, sqrt
|
||||||
|
+from numpy import version as npvers
|
||||||
|
+from packaging.version import Version
|
||||||
|
from scipy.linalg import LinAlgError
|
||||||
|
import scipy.special
|
||||||
|
from uncertainties import correlated_values, ufloat
|
||||||
|
@@ -21,6 +23,18 @@
|
||||||
|
SCIPY_FUNCTIONS[fnc_name] = getattr(scipy.special, fnc_name)
|
||||||
|
|
||||||
|
|
||||||
|
+def clean_np2_symbols(user_syms):
|
||||||
|
+ """clean symbols from self._asteval.user_defined_symbols()
|
||||||
|
+ that have been deprecated in numpy 2.0
|
||||||
|
+ This should be a short term fix, as these are removed from asteval.
|
||||||
|
+ """
|
||||||
|
+ if Version(npvers.version) > Version('1.9'):
|
||||||
|
+ for sym in ('ogrid', 'mgrid', 'c_', 'r_', 's_', 'index_exp'):
|
||||||
|
+ if sym in user_syms:
|
||||||
|
+ user_syms.remove(sym)
|
||||||
|
+ return user_syms
|
||||||
|
+
|
||||||
|
+
|
||||||
|
def check_ast_errors(expr_eval):
|
||||||
|
"""Check for errors derived from asteval."""
|
||||||
|
if len(expr_eval.error) > 0:
|
||||||
|
@@ -95,7 +109,8 @@ def update(self, other):
|
||||||
|
if not isinstance(other, Parameters):
|
||||||
|
raise ValueError(f"'{other}' is not a Parameters object")
|
||||||
|
self.add_many(*other.values())
|
||||||
|
- for sym in other._asteval.user_defined_symbols():
|
||||||
|
+ usersyms = clean_np2_symbols(other._asteval.user_defined_symbols())
|
||||||
|
+ for sym in usersyms:
|
||||||
|
self._asteval.symtable[sym] = other._asteval.symtable[sym]
|
||||||
|
return self
|
||||||
|
|
||||||
|
@@ -114,7 +129,8 @@ def __deepcopy__(self, memo):
|
||||||
|
|
||||||
|
# find the symbols that were added by users, not during construction
|
||||||
|
unique_symbols = {}
|
||||||
|
- for key in self._asteval.user_defined_symbols():
|
||||||
|
+ usersyms = clean_np2_symbols(self._asteval.user_defined_symbols())
|
||||||
|
+ for key in usersyms:
|
||||||
|
try:
|
||||||
|
val = deepcopy(self._asteval.symtable[key])
|
||||||
|
unique_symbols[key] = val
|
||||||
|
@@ -161,7 +177,8 @@ def __add__(self, other):
|
||||||
|
raise ValueError(f"'{other}' is not a Parameters object")
|
||||||
|
out = deepcopy(self)
|
||||||
|
out.add_many(*other.values())
|
||||||
|
- for sym in other._asteval.user_defined_symbols():
|
||||||
|
+ usersyms = clean_np2_symbols(other._asteval.user_defined_symbols())
|
||||||
|
+ for sym in usersyms:
|
||||||
|
if sym not in out._asteval.symtable:
|
||||||
|
out._asteval.symtable[sym] = other._asteval.symtable[sym]
|
||||||
|
return out
|
||||||
|
@@ -181,9 +198,9 @@ def __reduce__(self):
|
||||||
|
params = [self[k] for k in self]
|
||||||
|
|
||||||
|
# find the symbols from _asteval.symtable, that need to be remembered.
|
||||||
|
- sym_unique = self._asteval.user_defined_symbols()
|
||||||
|
+ usersyms = clean_np2_symbols(self._asteval.user_defined_symbols())
|
||||||
|
unique_symbols = {key: deepcopy(self._asteval.symtable[key])
|
||||||
|
- for key in sym_unique}
|
||||||
|
+ for key in usersyms}
|
||||||
|
|
||||||
|
return self.__class__, (), {'unique_symbols': unique_symbols,
|
||||||
|
'params': params}
|
||||||
|
@@ -567,9 +584,9 @@ def dumps(self, **kws):
|
||||||
|
|
||||||
|
"""
|
||||||
|
params = [p.__getstate__() for p in self.values()]
|
||||||
|
- sym_unique = self._asteval.user_defined_symbols()
|
||||||
|
+ usersyms = clean_np2_symbols(self._asteval.user_defined_symbols())
|
||||||
|
unique_symbols = {key: encode4js(deepcopy(self._asteval.symtable[key]))
|
||||||
|
- for key in sym_unique}
|
||||||
|
+ for key in usersyms}
|
||||||
|
return json.dumps({'unique_symbols': unique_symbols,
|
||||||
|
'params': params}, **kws)
|
||||||
|
|
||||||
|
diff --git a/pyproject.toml b/pyproject.toml
|
||||||
|
index 623c6a2d..511e9a97 100644
|
||||||
|
--- a/pyproject.toml
|
||||||
|
+++ b/pyproject.toml
|
||||||
|
@@ -10,7 +10,8 @@ dependencies = [
|
||||||
|
"numpy>=1.19",
|
||||||
|
"scipy>=1.6",
|
||||||
|
"uncertainties>=3.1.4",
|
||||||
|
- "dill>=0.3.4"
|
||||||
|
+ "dill>=0.3.4",
|
||||||
|
+ "packaging",
|
||||||
|
]
|
||||||
|
requires-python = ">= 3.8"
|
||||||
|
authors = [
|
||||||
|
|
||||||
|
From 2a195ac6a375b34245f330f8e60824f564e086bd Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthew Newville <newville@cars.uchicago.edu>
|
||||||
|
Date: Sat, 29 Jun 2024 10:36:34 -0500
|
||||||
|
Subject: [PATCH 2/6] fix numpy2 deprecation
|
||||||
|
|
||||||
|
---
|
||||||
|
tests/test_model.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tests/test_model.py b/tests/test_model.py
|
||||||
|
index 396ea0b1..24dfbfcd 100644
|
||||||
|
--- a/tests/test_model.py
|
||||||
|
+++ b/tests/test_model.py
|
||||||
|
@@ -900,7 +900,7 @@ def test_independent_var_parsing(self):
|
||||||
|
yatan = stepmod2.eval(pars, x=x)
|
||||||
|
|
||||||
|
assert (yatan-yline).std() > 0.1
|
||||||
|
- assert (yatan-yline).ptp() > 1.0
|
||||||
|
+ assert np.ptp(yatan-yline) > 1.0
|
||||||
|
|
||||||
|
voigtmod = Model(voigt)
|
||||||
|
assert 'x' in voigtmod.independent_vars
|
||||||
|
|
||||||
|
From 48d3b5f9338312078186543044fb5d0109cec429 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthew Newville <newville@cars.uchicago.edu>
|
||||||
|
Date: Sat, 29 Jun 2024 10:38:23 -0500
|
||||||
|
Subject: [PATCH 3/6] specify numpy>=2 for latest tests
|
||||||
|
|
||||||
|
---
|
||||||
|
azure-pipelines.yml | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
|
||||||
|
index 53c7c7f1..54f70890 100644
|
||||||
|
--- a/azure-pipelines.yml
|
||||||
|
+++ b/azure-pipelines.yml
|
||||||
|
@@ -139,7 +139,7 @@ stages:
|
||||||
|
swig libmpc-dev
|
||||||
|
displayName: 'Install dependencies'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel "numpy>=2.0"
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
||||||
|
@@ -183,7 +183,7 @@ stages:
|
||||||
|
versionSpec: '$(python.version)'
|
||||||
|
displayName: 'Use Python $(python.version)'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel "numpy>=2.0"
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
||||||
|
@@ -218,7 +218,7 @@ stages:
|
||||||
|
versionSpec: '$(python.version)'
|
||||||
|
displayName: 'Use Python $(python.version)'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel "numpy>=2.0"
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
||||||
|
|
||||||
|
From 2a40772b20e2c1c48807c6b50d36217d72472d28 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthew Newville <newville@cars.uchicago.edu>
|
||||||
|
Date: Sat, 29 Jun 2024 10:55:24 -0500
|
||||||
|
Subject: [PATCH 4/6] numpy2 not available for Python3.8
|
||||||
|
|
||||||
|
---
|
||||||
|
azure-pipelines.yml | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
|
||||||
|
index 54f70890..98f8674b 100644
|
||||||
|
--- a/azure-pipelines.yml
|
||||||
|
+++ b/azure-pipelines.yml
|
||||||
|
@@ -107,13 +107,13 @@ stages:
|
||||||
|
- script: |
|
||||||
|
./codecov -v -f "coverage.xml"
|
||||||
|
displayName: 'Upload to codecov.io'
|
||||||
|
-
|
||||||
|
- stage: tests_latest_dependencies
|
||||||
|
dependsOn: check_codestyle
|
||||||
|
condition: succeededOrFailed()
|
||||||
|
jobs:
|
||||||
|
- job:
|
||||||
|
pool:
|
||||||
|
+
|
||||||
|
vmImage: 'ubuntu-latest'
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
@@ -139,7 +139,7 @@ stages:
|
||||||
|
swig libmpc-dev
|
||||||
|
displayName: 'Install dependencies'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel "numpy>=2.0"
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel numpy
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
||||||
|
|
||||||
|
From 4a986540dec49cc714faa726a060c5d9dda66feb Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthew Newville <newville@cars.uchicago.edu>
|
||||||
|
Date: Sun, 30 Jun 2024 13:46:26 -0500
|
||||||
|
Subject: [PATCH 5/6] remove packaging, clarify when clean_np2_symbols() can be
|
||||||
|
removed
|
||||||
|
|
||||||
|
---
|
||||||
|
lmfit/parameter.py | 10 +++++++---
|
||||||
|
pyproject.toml | 1 -
|
||||||
|
2 files changed, 7 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lmfit/parameter.py b/lmfit/parameter.py
|
||||||
|
index b68584c4..56e37f94 100644
|
||||||
|
--- a/lmfit/parameter.py
|
||||||
|
+++ b/lmfit/parameter.py
|
||||||
|
@@ -6,7 +6,6 @@
|
||||||
|
from asteval import Interpreter, get_ast_names, valid_symbol_name
|
||||||
|
from numpy import arcsin, array, cos, inf, isclose, sin, sqrt
|
||||||
|
from numpy import version as npvers
|
||||||
|
-from packaging.version import Version
|
||||||
|
from scipy.linalg import LinAlgError
|
||||||
|
import scipy.special
|
||||||
|
from uncertainties import correlated_values, ufloat
|
||||||
|
@@ -26,9 +25,9 @@
|
||||||
|
def clean_np2_symbols(user_syms):
|
||||||
|
"""clean symbols from self._asteval.user_defined_symbols()
|
||||||
|
that have been deprecated in numpy 2.0
|
||||||
|
- This should be a short term fix, as these are removed from asteval.
|
||||||
|
+ This function can be removed when asteval 0.9.33 is no longer supported
|
||||||
|
"""
|
||||||
|
- if Version(npvers.version) > Version('1.9'):
|
||||||
|
+ if npvers.version.startswith('2'):
|
||||||
|
for sym in ('ogrid', 'mgrid', 'c_', 'r_', 's_', 'index_exp'):
|
||||||
|
if sym in user_syms:
|
||||||
|
user_syms.remove(sym)
|
||||||
|
@@ -109,6 +108,7 @@ def update(self, other):
|
||||||
|
if not isinstance(other, Parameters):
|
||||||
|
raise ValueError(f"'{other}' is not a Parameters object")
|
||||||
|
self.add_many(*other.values())
|
||||||
|
+ # FIXME: clear_np2_symbols() can be removed when asteval 0.9.33 is not supported
|
||||||
|
usersyms = clean_np2_symbols(other._asteval.user_defined_symbols())
|
||||||
|
for sym in usersyms:
|
||||||
|
self._asteval.symtable[sym] = other._asteval.symtable[sym]
|
||||||
|
@@ -129,6 +129,7 @@ def __deepcopy__(self, memo):
|
||||||
|
|
||||||
|
# find the symbols that were added by users, not during construction
|
||||||
|
unique_symbols = {}
|
||||||
|
+ # FIXME: clear_np2_symbols() can be removed when asteval 0.9.33 is not supported
|
||||||
|
usersyms = clean_np2_symbols(self._asteval.user_defined_symbols())
|
||||||
|
for key in usersyms:
|
||||||
|
try:
|
||||||
|
@@ -177,6 +178,7 @@ def __add__(self, other):
|
||||||
|
raise ValueError(f"'{other}' is not a Parameters object")
|
||||||
|
out = deepcopy(self)
|
||||||
|
out.add_many(*other.values())
|
||||||
|
+ # FIXME: clear_np2_symbols() can be removed when asteval 0.9.33 is not supported
|
||||||
|
usersyms = clean_np2_symbols(other._asteval.user_defined_symbols())
|
||||||
|
for sym in usersyms:
|
||||||
|
if sym not in out._asteval.symtable:
|
||||||
|
@@ -198,6 +200,7 @@ def __reduce__(self):
|
||||||
|
params = [self[k] for k in self]
|
||||||
|
|
||||||
|
# find the symbols from _asteval.symtable, that need to be remembered.
|
||||||
|
+ # FIXME: clear_np2_symbols() can be removed when asteval 0.9.33 is not supported
|
||||||
|
usersyms = clean_np2_symbols(self._asteval.user_defined_symbols())
|
||||||
|
unique_symbols = {key: deepcopy(self._asteval.symtable[key])
|
||||||
|
for key in usersyms}
|
||||||
|
@@ -584,6 +587,7 @@ def dumps(self, **kws):
|
||||||
|
|
||||||
|
"""
|
||||||
|
params = [p.__getstate__() for p in self.values()]
|
||||||
|
+ # FIXME: clear_np2_symbols() can be removed when asteval 0.9.33 is not supported
|
||||||
|
usersyms = clean_np2_symbols(self._asteval.user_defined_symbols())
|
||||||
|
unique_symbols = {key: encode4js(deepcopy(self._asteval.symtable[key]))
|
||||||
|
for key in usersyms}
|
||||||
|
diff --git a/pyproject.toml b/pyproject.toml
|
||||||
|
index 511e9a97..a40dad96 100644
|
||||||
|
--- a/pyproject.toml
|
||||||
|
+++ b/pyproject.toml
|
||||||
|
@@ -11,7 +11,6 @@ dependencies = [
|
||||||
|
"scipy>=1.6",
|
||||||
|
"uncertainties>=3.1.4",
|
||||||
|
"dill>=0.3.4",
|
||||||
|
- "packaging",
|
||||||
|
]
|
||||||
|
requires-python = ">= 3.8"
|
||||||
|
authors = [
|
||||||
|
|
||||||
|
From 8c49b0cebef3bc1e05f6c8ccf3278f1049d8cae2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthew Newville <newville@cars.uchicago.edu>
|
||||||
|
Date: Sun, 30 Jun 2024 13:47:14 -0500
|
||||||
|
Subject: [PATCH 6/6] revert azure pipeline to not specify numpy version for
|
||||||
|
most tests
|
||||||
|
|
||||||
|
---
|
||||||
|
azure-pipelines.yml | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
|
||||||
|
index 98f8674b..03a3b132 100644
|
||||||
|
--- a/azure-pipelines.yml
|
||||||
|
+++ b/azure-pipelines.yml
|
||||||
|
@@ -139,7 +139,7 @@ stages:
|
||||||
|
swig libmpc-dev
|
||||||
|
displayName: 'Install dependencies'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel numpy
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
||||||
|
@@ -183,7 +183,7 @@ stages:
|
||||||
|
versionSpec: '$(python.version)'
|
||||||
|
displayName: 'Use Python $(python.version)'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel "numpy>=2.0"
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
||||||
|
@@ -218,7 +218,7 @@ stages:
|
||||||
|
versionSpec: '$(python.version)'
|
||||||
|
displayName: 'Use Python $(python.version)'
|
||||||
|
- script: |
|
||||||
|
- python -m pip install --upgrade build pip setuptools wheel "numpy>=2.0"
|
||||||
|
+ python -m pip install --upgrade build pip setuptools wheel
|
||||||
|
displayName: 'Install latest available version of Python dependencies'
|
||||||
|
- script: |
|
||||||
|
python -m build
|
Loading…
Reference in New Issue
Block a user