Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-emcee for openSUSE:Factory checked in at 2022-05-30 12:43:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-emcee (Old) and /work/SRC/openSUSE:Factory/.python-emcee.new.2254 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-emcee" Mon May 30 12:43:56 2022 rev:5 rq:979711 version:3.1.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-emcee/python-emcee.changes 2021-09-20 23:34:35.183279812 +0200 +++ /work/SRC/openSUSE:Factory/.python-emcee.new.2254/python-emcee.changes 2022-05-30 12:44:50.320461462 +0200 @@ -1,0 +2,7 @@ +Sun May 29 15:29:08 UTC 2022 - Atri Bhattacharya <badshah...@gmail.com> + +- Update to version 3.1.2: + - Make the sample state indexable [gh#dfm/emcee#425]. + - Remove NumPy from SETUP_REQUIRES [gh#dfm/emcee#427]. + +------------------------------------------------------------------- Old: ---- emcee-3.1.1.tar.gz New: ---- emcee-3.1.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-emcee.spec ++++++ --- /var/tmp/diff_new_pack.0EgquM/_old 2022-05-30 12:44:50.888462218 +0200 +++ /var/tmp/diff_new_pack.0EgquM/_new 2022-05-30 12:44:50.892462224 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-emcee # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ # NEP 29: python36-numpy and -scipy are no longer available in TW %define skip_python36 1 Name: python-emcee -Version: 3.1.1 +Version: 3.1.2 Release: 0 Summary: Python affine-invariant ensemble MCMC sampling License: MIT ++++++ emcee-3.1.1.tar.gz -> emcee-3.1.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/.github/workflows/tests.yml new/emcee-3.1.2/.github/workflows/tests.yml --- old/emcee-3.1.1/.github/workflows/tests.yml 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/.github/workflows/tests.yml 2022-05-10 17:20:45.000000000 +0200 @@ -16,12 +16,12 @@ runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ["3.7", "3.8", "3.9"] + python-version: ["3.7", "3.8", "3.9", "3.10"] os: ["ubuntu-latest"] include: - - python-version: "3.8" + - python-version: "3.9" os: "macos-latest" - - python-version: "3.8" + - python-version: "3.9" os: "windows-latest" steps: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/.gitignore new/emcee-3.1.2/.gitignore --- old/emcee-3.1.1/.gitignore 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/.gitignore 2022-05-10 17:20:45.000000000 +0200 @@ -22,3 +22,4 @@ .tox env .eggs +.coverage.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/.pre-commit-config.yaml new/emcee-3.1.2/.pre-commit-config.yaml --- old/emcee-3.1.1/.pre-commit-config.yaml 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/.pre-commit-config.yaml 2022-05-10 17:20:45.000000000 +0200 @@ -1,14 +1,14 @@ repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.0.1 + rev: v4.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: debug-statements - repo: https://github.com/PyCQA/isort - rev: "5.9.3" + rev: "5.10.1" hooks: - id: isort args: [] @@ -16,11 +16,11 @@ exclude: docs/tutorials - repo: https://github.com/psf/black - rev: "21.7b0" + rev: "22.3.0" hooks: - id: black - repo: https://github.com/dfm/black_nbconvert - rev: v0.3.0 + rev: v0.4.0 hooks: - id: black_nbconvert diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/HISTORY.rst new/emcee-3.1.2/HISTORY.rst --- old/emcee-3.1.1/HISTORY.rst 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/HISTORY.rst 2022-05-10 17:20:45.000000000 +0200 @@ -1,5 +1,12 @@ .. :changelog: +3.1.2 (2022-05-10) +++++++++++++++++++ + +- Removed ``numpy`` from ``setup_requires`` `#427 <https://github.com/dfm/emcee/pull/427>`_ +- Made the sampler state indexable `#425 <https://github.com/dfm/emcee/pull/425>`_ + + 3.1.1 (2021-08-23) ++++++++++++++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/PKG-INFO new/emcee-3.1.2/PKG-INFO --- old/emcee-3.1.1/PKG-INFO 2021-08-23 17:16:43.005506300 +0200 +++ new/emcee-3.1.2/PKG-INFO 2022-05-10 17:20:57.214236000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: emcee -Version: 3.1.1 +Version: 3.1.2 Summary: The Python ensemble sampling toolkit for MCMC Home-page: https://emcee.readthedocs.io Author: Daniel Foreman-Mackey @@ -8,6 +8,7 @@ Maintainer: Daniel Foreman-Mackey Maintainer-email: foreman.mac...@gmail.com License: MIT +Project-URL: Source, https://github.com/dfm/emcee Platform: UNKNOWN Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/conf.py new/emcee-3.1.2/docs/conf.py --- old/emcee-3.1.1/docs/conf.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/conf.py 2022-05-10 17:20:45.000000000 +0200 @@ -48,5 +48,5 @@ "use_repository_button": True, "use_download_button": True, } -jupyter_execute_notebooks = "off" -execution_timeout = -1 +nb_execution_mode = "off" +nb_execution_timeout = -1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/requirements.txt new/emcee-3.1.2/docs/requirements.txt --- old/emcee-3.1.1/docs/requirements.txt 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/requirements.txt 2022-05-10 17:20:45.000000000 +0200 @@ -1,4 +1,4 @@ -sphinx-book-theme @ git+https://github.com/dfm/sphinx-book-theme.git@fix-outdir +sphinx-book-theme myst-nb matplotlib scipy diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/tutorials/autocorr.ipynb new/emcee-3.1.2/docs/tutorials/autocorr.ipynb --- old/emcee-3.1.1/docs/tutorials/autocorr.ipynb 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/tutorials/autocorr.ipynb 2022-05-10 17:20:45.000000000 +0200 @@ -450,7 +450,7 @@ "\n", "\n", "def log_prob(p):\n", - " return np.logaddexp(-0.5 * np.sum(p ** 2), -0.5 * np.sum((p - 4.0) ** 2))\n", + " return np.logaddexp(-0.5 * np.sum(p**2), -0.5 * np.sum((p - 4.0) ** 2))\n", "\n", "\n", "sampler = emcee.EnsembleSampler(32, 3, log_prob)\n", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/tutorials/line.ipynb new/emcee-3.1.2/docs/tutorials/line.ipynb --- old/emcee-3.1.1/docs/tutorials/line.ipynb 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/tutorials/line.ipynb 2022-05-10 17:20:45.000000000 +0200 @@ -148,9 +148,9 @@ "source": [ "A = np.vander(x, 2)\n", "C = np.diag(yerr * yerr)\n", - "ATA = np.dot(A.T, A / (yerr ** 2)[:, None])\n", + "ATA = np.dot(A.T, A / (yerr**2)[:, None])\n", "cov = np.linalg.inv(ATA)\n", - "w = np.linalg.solve(ATA, np.dot(A.T, y / yerr ** 2))\n", + "w = np.linalg.solve(ATA, np.dot(A.T, y / yerr**2))\n", "print(\"Least-squares estimates:\")\n", "print(\"m = {0:.3f} ?? {1:.3f}\".format(w[0], np.sqrt(cov[0, 0])))\n", "print(\"b = {0:.3f} ?? {1:.3f}\".format(w[1], np.sqrt(cov[1, 1])))\n", @@ -218,7 +218,7 @@ "def log_likelihood(theta, x, y, yerr):\n", " m, b, log_f = theta\n", " model = m * x + b\n", - " sigma2 = yerr ** 2 + model ** 2 * np.exp(2 * log_f)\n", + " sigma2 = yerr**2 + model**2 * np.exp(2 * log_f)\n", " return -0.5 * np.sum((y - model) ** 2 / sigma2 + np.log(sigma2))" ] }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/tutorials/monitor.ipynb new/emcee-3.1.2/docs/tutorials/monitor.ipynb --- old/emcee-3.1.1/docs/tutorials/monitor.ipynb 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/tutorials/monitor.ipynb 2022-05-10 17:20:45.000000000 +0200 @@ -58,7 +58,7 @@ "# We'll also use the \"blobs\" feature to track the \"log prior\" for each step\n", "def log_prob(theta):\n", " log_prior = -0.5 * np.sum((theta - 1.0) ** 2 / 100.0)\n", - " log_prob = -0.5 * np.sum(theta ** 2) + log_prior\n", + " log_prob = -0.5 * np.sum(theta**2) + log_prior\n", " return log_prob, log_prior\n", "\n", "\n", @@ -341,7 +341,7 @@ "# this time, with a subtly different prior\n", "def log_prob2(theta):\n", " log_prior = -0.5 * np.sum((theta - 2.0) ** 2 / 100.0)\n", - " log_prob = -0.5 * np.sum(theta ** 2) + log_prior\n", + " log_prob = -0.5 * np.sum(theta**2) + log_prior\n", " return log_prob, log_prior\n", "\n", "\n", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/tutorials/parallel.ipynb new/emcee-3.1.2/docs/tutorials/parallel.ipynb --- old/emcee-3.1.1/docs/tutorials/parallel.ipynb 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/tutorials/parallel.ipynb 2022-05-10 17:20:45.000000000 +0200 @@ -85,7 +85,7 @@ " while True:\n", " if time.time() >= t:\n", " break\n", - " return -0.5 * np.sum(theta ** 2)" + " return -0.5 * np.sum(theta**2)" ] }, { @@ -348,7 +348,7 @@ " while True:\n", " if time.time() >= t:\n", " break\n", - " return -0.5 * np.sum(theta ** 2)\n", + " return -0.5 * np.sum(theta**2)\n", "\n", "\n", "data = np.random.randn(5000, 200)\n", @@ -459,7 +459,7 @@ " while True:\n", " if time.time() >= t:\n", " break\n", - " return -0.5 * np.sum(theta ** 2)\n", + " return -0.5 * np.sum(theta**2)\n", "\n", "\n", "with Pool() as pool:\n", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/docs/tutorials/quickstart.ipynb new/emcee-3.1.2/docs/tutorials/quickstart.ipynb --- old/emcee-3.1.1/docs/tutorials/quickstart.ipynb 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/docs/tutorials/quickstart.ipynb 2022-05-10 17:20:45.000000000 +0200 @@ -101,7 +101,7 @@ "np.random.seed(42)\n", "means = np.random.rand(ndim)\n", "\n", - "cov = 0.5 - np.random.rand(ndim ** 2).reshape((ndim, ndim))\n", + "cov = 0.5 - np.random.rand(ndim**2).reshape((ndim, ndim))\n", "cov = np.triu(cov)\n", "cov += cov.T - np.diag(cov.diagonal())\n", "cov = np.dot(cov, cov)" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/pyproject.toml new/emcee-3.1.2/pyproject.toml --- old/emcee-3.1.1/pyproject.toml 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/pyproject.toml 2022-05-10 17:20:45.000000000 +0200 @@ -4,7 +4,6 @@ [tool.black] line-length = 79 -target-version = ['py35'] exclude = ''' /( \.eggs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/setup.py new/emcee-3.1.2/setup.py --- old/emcee-3.1.1/setup.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/setup.py 2022-05-10 17:20:45.000000000 +0200 @@ -23,7 +23,7 @@ "Programming Language :: Python", ] INSTALL_REQUIRES = ["numpy"] -SETUP_REQUIRES = INSTALL_REQUIRES + [ +SETUP_REQUIRES = [ "setuptools>=40.6.0", "setuptools_scm", "wheel", @@ -67,6 +67,9 @@ maintainer=find_meta("author"), maintainer_email=find_meta("email"), url=find_meta("uri"), + project_urls={ + "Source": "https://github.com/dfm/emcee", + }, license=find_meta("license"), description=find_meta("description"), long_description=read("README.rst"), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/emcee_version.py new/emcee-3.1.2/src/emcee/emcee_version.py --- old/emcee-3.1.1/src/emcee/emcee_version.py 2021-08-23 17:16:42.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/emcee_version.py 2022-05-10 17:20:55.000000000 +0200 @@ -1 +1 @@ -__version__ = "3.1.1" +__version__ = "3.1.2" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/ensemble.py new/emcee-3.1.2/src/emcee/ensemble.py --- old/emcee-3.1.1/src/emcee/ensemble.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/ensemble.py 2022-05-10 17:20:45.000000000 +0200 @@ -642,7 +642,7 @@ if np.any(C_colmax == 0): return False C /= C_colmax - C_colsum = np.sqrt(np.sum(C ** 2, axis=0)) + C_colsum = np.sqrt(np.sum(C**2, axis=0)) C /= C_colsum return np.linalg.cond(C.astype(float)) <= 1e8 @@ -655,11 +655,11 @@ def _scaled_cond(a): - asum = np.sqrt((a ** 2).sum(axis=0))[None, :] + asum = np.sqrt((a**2).sum(axis=0))[None, :] if np.any(asum == 0): return np.inf b = a / asum - bsum = np.sqrt((b ** 2).sum(axis=1))[:, None] + bsum = np.sqrt((b**2).sum(axis=1))[:, None] if np.any(bsum == 0): return np.inf c = b / bsum diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/state.py new/emcee-3.1.2/src/emcee/state.py --- old/emcee-3.1.1/src/emcee/state.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/state.py 2022-05-10 17:20:45.000000000 +0200 @@ -44,6 +44,11 @@ self.blobs = dc(blobs) self.random_state = dc(random_state) + def __len__(self): + if self.blobs is None: + return 3 + return 4 + def __repr__(self): return "State({0}, log_prob={1}, blobs={2}, random_state={3})".format( self.coords, self.log_prob, self.blobs, self.random_state @@ -55,3 +60,16 @@ return iter( (self.coords, self.log_prob, self.random_state, self.blobs) ) + + def __getitem__(self, index): + if index < 0: + return self[len(self) + index] + if index == 0: + return self.coords + elif index == 1: + return self.log_prob + elif index == 2: + return self.random_state + elif index == 3 and self.blobs is not None: + return self.blobs + raise IndexError("Invalid index '{0}'".format(index)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/tests/integration/test_longdouble.py new/emcee-3.1.2/src/emcee/tests/integration/test_longdouble.py --- old/emcee-3.1.1/src/emcee/tests/integration/test_longdouble.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/tests/integration/test_longdouble.py 2022-05-10 17:20:45.000000000 +0200 @@ -7,7 +7,7 @@ def test_longdouble_doesnt_crash_bug_312(): def log_prob(x, ivar): - return -0.5 * np.sum(ivar * x ** 2) + return -0.5 * np.sum(ivar * x**2) ndim, nwalkers = 5, 20 ivar = 1.0 / np.random.rand(ndim).astype(np.longdouble) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/tests/integration/test_proposal.py new/emcee-3.1.2/src/emcee/tests/integration/test_proposal.py --- old/emcee-3.1.1/src/emcee/tests/integration/test_proposal.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/tests/integration/test_proposal.py 2022-05-10 17:20:45.000000000 +0200 @@ -15,11 +15,11 @@ def normal_log_prob_blobs(params): - return -0.5 * np.sum(params ** 2), params + return -0.5 * np.sum(params**2), params def normal_log_prob(params): - return -0.5 * np.sum(params ** 2) + return -0.5 * np.sum(params**2) def uniform_log_prob(params): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/tests/unit/test_backends.py new/emcee-3.1.2/src/emcee/tests/unit/test_backends.py --- old/emcee-3.1.1/src/emcee/tests/unit/test_backends.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/tests/unit/test_backends.py 2022-05-10 17:20:45.000000000 +0200 @@ -23,7 +23,7 @@ def normal_log_prob(params): - return -0.5 * np.sum(params ** 2) + return -0.5 * np.sum(params**2) def normal_log_prob_blobs(params): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/tests/unit/test_blobs.py new/emcee-3.1.2/src/emcee/tests/unit/test_blobs.py --- old/emcee-3.1.1/src/emcee/tests/unit/test_blobs.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/tests/unit/test_blobs.py 2022-05-10 17:20:45.000000000 +0200 @@ -15,7 +15,7 @@ self.blob_function = blob_function def __call__(self, params): - return -0.5 * np.sum(params ** 2), self.blob_function(params) + return -0.5 * np.sum(params**2), self.blob_function(params) @pytest.mark.parametrize("backend", backends.get_test_backends()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/tests/unit/test_sampler.py new/emcee-3.1.2/src/emcee/tests/unit/test_sampler.py --- old/emcee-3.1.1/src/emcee/tests/unit/test_sampler.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/tests/unit/test_sampler.py 2022-05-10 17:20:45.000000000 +0200 @@ -14,7 +14,7 @@ def normal_log_prob(params): - return -0.5 * np.sum(params ** 2) + return -0.5 * np.sum(params**2) @pytest.mark.parametrize( @@ -211,7 +211,7 @@ def test_vectorize(): def lp_vec(p): - return -0.5 * np.sum(p ** 2, axis=1) + return -0.5 * np.sum(p**2, axis=1) np.random.seed(42) nwalkers, ndim = 32, 3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee/tests/unit/test_state.py new/emcee-3.1.2/src/emcee/tests/unit/test_state.py --- old/emcee-3.1.1/src/emcee/tests/unit/test_state.py 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/src/emcee/tests/unit/test_state.py 2022-05-10 17:20:45.000000000 +0200 @@ -1,11 +1,16 @@ # -*- coding: utf-8 -*- import numpy as np +import pytest from emcee import EnsembleSampler from emcee.state import State +def check_rstate(a, b): + assert all(np.allclose(a_, b_) for a_, b_ in zip(a[1:], b[1:])) + + def test_back_compat(seed=1234): np.random.seed(seed) coords = np.random.randn(16, 3) @@ -18,20 +23,20 @@ assert np.allclose(coords, c) assert np.allclose(log_prob, l) assert np.allclose(blobs, b) - assert all(np.allclose(a, b) for a, b in zip(rstate[1:], r[1:])) + check_rstate(rstate, r) state = State(coords, log_prob, None, rstate) c, l, r = state assert np.allclose(coords, c) assert np.allclose(log_prob, l) - assert all(np.allclose(a, b) for a, b in zip(rstate[1:], r[1:])) + check_rstate(rstate, r) def test_overwrite(seed=1234): np.random.seed(seed) def ll(x): - return -0.5 * np.sum(x ** 2) + return -0.5 * np.sum(x**2) nwalkers = 64 p0 = np.random.normal(size=(nwalkers, 1)) @@ -40,3 +45,28 @@ sampler = EnsembleSampler(nwalkers, 1, ll) sampler.run_mcmc(p0, 10) assert np.allclose(init, p0) + + +def test_indexing(seed=1234): + np.random.seed(seed) + coords = np.random.randn(16, 3) + log_prob = np.random.randn(len(coords)) + blobs = np.random.randn(len(coords)) + rstate = np.random.get_state() + + state = State(coords, log_prob, blobs, rstate) + np.testing.assert_allclose(state[0], state.coords) + np.testing.assert_allclose(state[1], state.log_prob) + check_rstate(state[2], state.random_state) + np.testing.assert_allclose(state[3], state.blobs) + np.testing.assert_allclose(state[-1], state.blobs) + with pytest.raises(IndexError): + state[4] + + state = State(coords, log_prob, random_state=rstate) + np.testing.assert_allclose(state[0], state.coords) + np.testing.assert_allclose(state[1], state.log_prob) + check_rstate(state[2], state.random_state) + check_rstate(state[-1], state.random_state) + with pytest.raises(IndexError): + state[3] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/src/emcee.egg-info/PKG-INFO new/emcee-3.1.2/src/emcee.egg-info/PKG-INFO --- old/emcee-3.1.1/src/emcee.egg-info/PKG-INFO 2021-08-23 17:16:42.000000000 +0200 +++ new/emcee-3.1.2/src/emcee.egg-info/PKG-INFO 2022-05-10 17:20:56.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: emcee -Version: 3.1.1 +Version: 3.1.2 Summary: The Python ensemble sampling toolkit for MCMC Home-page: https://emcee.readthedocs.io Author: Daniel Foreman-Mackey @@ -8,6 +8,7 @@ Maintainer: Daniel Foreman-Mackey Maintainer-email: foreman.mac...@gmail.com License: MIT +Project-URL: Source, https://github.com/dfm/emcee Platform: UNKNOWN Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/emcee-3.1.1/tox.ini new/emcee-3.1.2/tox.ini --- old/emcee-3.1.1/tox.ini 2021-08-23 17:16:30.000000000 +0200 +++ new/emcee-3.1.2/tox.ini 2022-05-10 17:20:45.000000000 +0200 @@ -1,11 +1,12 @@ [tox] -envlist = py{37,38,39}{,-extras},lint +envlist = py{37,38,39,310}{,-extras},lint [gh-actions] python = 3.7: py37 3.8: py38 3.9: py39-extras + 3.10: py310 [testenv] deps = coverage[toml]