From robert.kern at gmail.com Fri May 1 00:44:13 2020 From: robert.kern at gmail.com (Robert Kern) Date: Fri, 1 May 2020 00:44:13 -0400 Subject: [SciPy-Dev] special.factorial accepting floats In-Reply-To: References: Message-ID: On Thu, Apr 30, 2020 at 11:36 PM Andrew Nelson wrote: > I came across this because I was setting up a CI run against Python3.9. On > Py3.9 there is a DeprecationWarning if `math.factorial` is supplied a float: > > On Py3.8: > math.factorial(2.0) --> 2 > > On Py3.9: > math.factorial(2.0) --> 2 and emits a "DeprecationWarning: Using > factorial() with floats is deprecated" > > Presumably with Py >> 3.9: > math.factorial(2.0) will raise an Exception > > As you say, `math.factorial` is used by `special.factorial` for > `exact=True`. When Python3.9 is released various tests will start to fail > because of that DeprecationWarning. > I know it's early days, I'm just trying to be proactive. > > - how to modify tests to account for that DeprecationWarning when > `special.factorial` is supplied a float with `exact=True` > - how test code and special.factorial code has to be modified for a post > DeprecationWarning period. > I'd probably just wrap `math.factorial()` with something that does the current `ValueError` check when a non-integral float is passed and just casts to `int` otherwise before passing it onto `math.factorial()`. If passing integral floats made it into our tests, it's surely made it into real code. -- Robert Kern -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Sat May 2 17:14:57 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 2 May 2020 17:14:57 -0400 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. Message-ID: In the github workflow tests that run on macOS for the master branch and for pull requests, occasionally one of the tests is cancelled for no apparent reason. Does anyone know what causes those tests to be cancelled? Warren From andyfaff at gmail.com Sat May 2 18:43:07 2020 From: andyfaff at gmail.com (Andrew Nelson) Date: Sun, 3 May 2020 08:43:07 +1000 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: I've not observed that. It does fail fast though, if one of 3.6, 3.7, or 3.8 fails then the other two stop. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andyfaff at gmail.com Sat May 2 18:48:17 2020 From: andyfaff at gmail.com (Andrew Nelson) Date: Sun, 3 May 2020 08:48:17 +1000 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: On Sun, 3 May 2020, 08:43 Andrew Nelson, wrote: > I've not observed that. It does fail fast though, if one of 3.6, 3.7, or > 3.8 fails then the other two stop. > Closing and reopening a PR might stop runs from completing. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Sat May 2 18:54:24 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 2 May 2020 18:54:24 -0400 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: On 5/2/20, Andrew Nelson wrote: > On Sun, 3 May 2020, 08:43 Andrew Nelson, wrote: > >> I've not observed that. It does fail fast though, if one of 3.6, 3.7, or >> 3.8 fails then the other two stop. >> > > Closing and reopening a PR might stop runs from completing. > I've seen it in PRs, and earlier today it happened in the tests that ran on the most recent commit to master. I manually restarted that one, and the tests then all passed. Warren >> > From warren.weckesser at gmail.com Sat May 2 21:52:12 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 2 May 2020 21:52:12 -0400 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: On 5/2/20, Warren Weckesser wrote: > On 5/2/20, Andrew Nelson wrote: >> On Sun, 3 May 2020, 08:43 Andrew Nelson, wrote: >> >>> I've not observed that. It does fail fast though, if one of 3.6, 3.7, or >>> 3.8 fails then the other two stop. >>> >> >> Closing and reopening a PR might stop runs from completing. >> > > I've seen it in PRs, For example, as I write this, https://github.com/scipy/scipy/pull/12004 shows the first macOS test as having been cancelled. The other two macOS tests have passed. The remaining tests have either passed or not completed yet. Warren and earlier today it happened in the tests that > ran on the most recent commit to master. I manually restarted that > one, and the tests then all passed. > > Warren > >>> >> > From andyfaff at gmail.com Sat May 2 22:07:59 2020 From: andyfaff at gmail.com (Andrew Nelson) Date: Sun, 3 May 2020 12:07:59 +1000 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: I don't think it's anything in our configuration. There are a few error messages on the github actions tab: "An error occurred while provisioning resources (Error Type: Disconnect)." "Received request to deprovision: The request was cancelled by the remote provider." I'm guessing that github actions may be having some issues of its own. -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Sat May 2 22:24:17 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 2 May 2020 22:24:17 -0400 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: On 5/2/20, Andrew Nelson wrote: > I don't think it's anything in our configuration. > There are a few error messages on the github actions tab: > > "An error occurred while provisioning resources (Error Type: Disconnect)." > "Received request to deprovision: The request was cancelled by the remote > provider." > > I'm guessing that github actions may be having some issues of its own. > That's what I suspect. I haven't had any luck finding projects with similar sporadic cancellations, but maybe I haven't found the right search terms. Warren From wsw.raczek at gmail.com Sun May 3 05:20:21 2020 From: wsw.raczek at gmail.com (=?UTF-8?B?V8WCYWR5c8WCYXcgUmFjemVr?=) Date: Sun, 3 May 2020 11:20:21 +0200 Subject: [SciPy-Dev] Scipy.interpolate.*Spline improvements Message-ID: Hi there, I've opened an issue about various things that don't look OK mainly in RectBivariateSpline, but also in few other places. Here is the link: https://github.com/scipy/scipy/issues/11756 I would be grateful if someone (do we have a maintainer?) could take a look and just say whether my suggestions/objections are right or I missed something. I've got overwhelmed with other stuff and don't have time for it as for now. Kind regards, Vladyslav Rachek -------------- next part -------------- An HTML attachment was scrubbed... URL: From bennet at umich.edu Sun May 3 10:38:12 2020 From: bennet at umich.edu (Bennet Fauber) Date: Sun, 3 May 2020 10:38:12 -0400 Subject: [SciPy-Dev] Random cancellations of Mac OS tests in the github workflow tests. In-Reply-To: References: Message-ID: The folks over at EasyBuild have been seeing sporadic problems with testing at GitHub for the last couple of weeks. I don't know if it's the same type of failures, but it may be systemic. There is contact information in the section on Getting Help near the bottom of https://easybuild.readthedocs.io/en/latest/ if you want to ask about the details. On Sat, May 2, 2020 at 10:24 PM Warren Weckesser wrote: > > On 5/2/20, Andrew Nelson wrote: > > I don't think it's anything in our configuration. > > There are a few error messages on the github actions tab: > > > > "An error occurred while provisioning resources (Error Type: Disconnect)." > > "Received request to deprovision: The request was cancelled by the remote > > provider." > > > > I'm guessing that github actions may be having some issues of its own. > > > > That's what I suspect. I haven't had any luck finding projects with > similar sporadic cancellations, but maybe I haven't found the right > search terms. > > Warren > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev From charlesr.harris at gmail.com Sun May 3 12:16:52 2020 From: charlesr.harris at gmail.com (Charles R Harris) Date: Sun, 3 May 2020 10:16:52 -0600 Subject: [SciPy-Dev] NumPy 1.18.4 release Message-ID: Hi All, On behalf of the NumPy team I am pleased to announce that NumPy 1.18.4 has been released. This is the last planned release in the 1.18.x series. It reverts the bool("0") behavior introduced in 1.18.3 and fixes a bug in Generator.integers. There is also a link to a new troubleshooting section in the documentation included in the error message emitted when numpy import fails. The Python versions supported in this release are 3.5-3.8. Downstream developers should use Cython >= 0.29.15 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture. Wheels for this release can be downloaded from PyPI , source archives and release notes are available from Github . *Contributors* A total of 4 people contributed to this release. People with a "+" by their names contributed a patch for the first time. - Charles Harris - Matti Picus - Sebastian Berg - Warren Weckesser *Pull requests merged* A total of 6 pull requests were merged for this release. - #16055: BLD: add i686 for 1.18 builds - #16090: BUG: random: Generator.integers(2**32) always returned 0. - #16091: BLD: fix path to libgfortran on macOS - #16109: REV: Reverts side-effect changes to casting - #16114: BLD: put openblas library in local directory on windows - #16132: DOC: Change import error "howto" to link to new troubleshooting... Cheers, Charles Harris -------------- next part -------------- An HTML attachment was scrubbed... URL: From charlesr.harris at gmail.com Sun May 3 17:25:53 2020 From: charlesr.harris at gmail.com (Charles R Harris) Date: Sun, 3 May 2020 15:25:53 -0600 Subject: [SciPy-Dev] NumPy nightly wheel builds Message-ID: Hi All, The NumPy "nightly" wheel builds, actually built weekly on Sunday mornings, have moved to https://anaconda.org/scipy-wheels-nightly/numpy/files. They can be installed/downloaded using pip: pip install -i https://pypi.anaconda.org/scipy-wheels-nightly/simple numpy Chuck -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Tue May 5 22:49:03 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Tue, 5 May 2020 20:49:03 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule Message-ID: Hi, SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think we'd like to keep a roughly biannual release cadence. I'd like to propose the following schedule for 1.5.0: - May 26/2020: branch 1.5.x - May 29/2020: rc1 - June 11/2020: rc2 (if needed) - June 20/2020: final release Complicating factors this time around may include attempts at providing ARM/ppc64le wheels and the continued migration from rackspace -> anaconda.org for asset hosting in both the main and wheels repos. As always, it is a good idea to start tagging things that should be in 1.5.0 & please do help with reviewing PRs/issues that are tagged--current counts are: - 23 open issues with 1.5.0 milestone - 38 open PRs with 1.5.0 milestone While helping with that, also great if the release notes wiki is updated for appropriate changes: https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 Curating those final notes can be painful if the wiki isn't updated. Thoughts/objections for the schedule? Best wishes, Tyler -------------- next part -------------- An HTML attachment was scrubbed... URL: From ralf.gommers at gmail.com Fri May 8 03:29:20 2020 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Fri, 8 May 2020 09:29:20 +0200 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: On Wed, May 6, 2020 at 4:49 AM Tyler Reddy wrote: > Hi, > > SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think we'd > like to keep a roughly biannual release cadence. > > I'd like to propose the following schedule for 1.5.0: > - May 26/2020: branch 1.5.x > - May 29/2020: rc1 > - June 11/2020: rc2 (if needed) > - June 20/2020: final release > Sounds good to me. > Complicating factors this time around may include attempts at providing > ARM/ppc64le wheels and the continued migration from rackspace -> > anaconda.org for asset hosting in both the main and wheels repos. > Looks like the anaconda.org migration is going well, thanks to Tyler and everyone else who is pitching in. Having arm64/ppc64le wheels would be great, we're pretty far along. Not a blocker though - they could be uploaded later. Having CI for both platforms in place now is a good place to start from. > As always, it is a good idea to start tagging things that should be in > 1.5.0 & please do help with reviewing PRs/issues that are tagged--current > counts are: > > - 23 open issues with 1.5.0 milestone > - 38 open PRs with 1.5.0 milestone > I bumped a few milestones and merged some PRs, it's down to 53 total. There's a bunch of PRs that we really need to review, but not any really problematic issues it looks like. > While helping with that, also great if the release notes wiki is updated > for appropriate changes: > https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 > > Curating those final notes can be painful if the wiki isn't updated. > > Thoughts/objections for the schedule? > Thanks for leading the charge again Tyler. Cheers, Ralf > Best wishes, > Tyler > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jfoxrabinovitz at gmail.com Fri May 8 15:11:40 2020 From: jfoxrabinovitz at gmail.com (Joseph Fox-Rabinovitz) Date: Fri, 8 May 2020 15:11:40 -0400 Subject: [SciPy-Dev] Rank and Unrank functions Message-ID: Scipy.special has the functions comb and perm but no rank and unrank to convert linear indices to combination or permutation. These are fairly useful for generating random sequences from large sets. Is there any objection to a PR implementing these functions? The signatures I had in mind are perm_rank(indices, n, k) perm_unrank(index, n, k) comb_rank(indices, n, k) comb_unrank(index, n, k) Regards, Joe -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Fri May 8 23:43:17 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Fri, 8 May 2020 23:43:17 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" Message-ID: Hey all, I just created a pull request in which I started a new subsection of the developer documentation called the "SciPy API Development Guide". As I write this, the CircleCI artifact containing the new page is https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html The first item to be included in this section is a design specification for the `nan_policy` argument that is used in many functions in `scipy.stats`. We'll be adding `nan_policy` to more functions, so I think it will be helpful to have an explicit design spec in the docs that we all agree on. Two more topics to be added to the guidelines soon: * Creating probability distributions in stats: a guide to subclassing rv_continuous and rv_discrete. * Modifying return values to allow objects with attributes while maintaining backward compatibility with existing return values that are tuples or NamedTuples. I'm currently focused on `stats`, but this section is meant for any API guidelines or conventions that we use but that are currently only stored in our heads, in old mailing list or github threads, or in a few implementations here and there in the code. Take a look and let me know what you think. Warren From ralf.gommers at gmail.com Sat May 9 08:11:38 2020 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Sat, 9 May 2020 14:11:38 +0200 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: References: Message-ID: On Sat, May 9, 2020 at 5:43 AM Warren Weckesser wrote: > Hey all, > > I just created a pull request in which I started a new subsection of > the developer documentation called the "SciPy API Development Guide". > As I write this, the CircleCI artifact containing the new page is > > > https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html > > That looks like a good idea to me, thanks Warren. So far this lived at the bottom of the core developer guide: http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. Could you move the scipy.special docs there over to this new API Development Guide? The first item to be included in this section is a design > specification for the `nan_policy` argument that is used in many > functions in `scipy.stats`. We'll be adding `nan_policy` to more > functions, so I think it will be helpful to have an explicit design > spec in the docs that we all agree on. > +1 that would be super helpful. > Two more topics to be added to the guidelines soon: > * Creating probability distributions in stats: a guide to subclassing > rv_continuous and rv_discrete. > * Modifying return values to allow objects with attributes while > maintaining backward compatibility with existing return values that > are tuples or NamedTuples. > Both of these also sound very useful. For namedtuples, you probably should also include or at least reference the Bunch design pattern (we have it in `integrate` and `signal`, there's still an open issue for `stats`). Cheers, Ralf > I'm currently focused on `stats`, but this section is meant for any > API guidelines or conventions that we use but that are currently only > stored in our heads, in old mailing list or github threads, or in a > few implementations here and there in the code. > > Take a look and let me know what you think. > > Warren > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Sat May 9 10:04:46 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 9 May 2020 10:04:46 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: References: Message-ID: On 5/9/20, Ralf Gommers wrote: > On Sat, May 9, 2020 at 5:43 AM Warren Weckesser > > wrote: > >> Hey all, >> >> I just created a pull request in which I started a new subsection of >> the developer documentation called the "SciPy API Development Guide". >> As I write this, the CircleCI artifact containing the new page is >> >> >> https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html >> >> > That looks like a good idea to me, thanks Warren. So far this lived at the > bottom of the core developer guide: > http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. > Could you move the scipy.special docs there over to this new API > Development Guide? > Good idea. I just added a commit to make that change in the pull request. > The first item to be included in this section is a design >> specification for the `nan_policy` argument that is used in many >> functions in `scipy.stats`. We'll be adding `nan_policy` to more >> functions, so I think it will be helpful to have an explicit design >> spec in the docs that we all agree on. >> > > +1 that would be super helpful. > > >> Two more topics to be added to the guidelines soon: >> * Creating probability distributions in stats: a guide to subclassing >> rv_continuous and rv_discrete. >> * Modifying return values to allow objects with attributes while >> maintaining backward compatibility with existing return values that >> are tuples or NamedTuples. >> > > Both of these also sound very useful. For namedtuples, you probably should > also include or at least reference the Bunch design pattern (we have it in > `integrate` and `signal`, there's still an open issue for `stats`). Yes, that's what I had in mind. Warren > > Cheers, > Ralf > > >> I'm currently focused on `stats`, but this section is meant for any >> API guidelines or conventions that we use but that are currently only >> stored in our heads, in old mailing list or github threads, or in a >> few implementations here and there in the code. >> >> Take a look and let me know what you think. >> >> Warren >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > From josh.craig.wilson at gmail.com Sat May 9 11:01:46 2020 From: josh.craig.wilson at gmail.com (Joshua Wilson) Date: Sat, 9 May 2020 08:01:46 -0700 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: > but no rank and unrank to convert linear indices to combination or permutation Could you point to a definition of these functions? I'm actually not sure what you mean. - Josh On Fri, May 8, 2020 at 12:12 PM Joseph Fox-Rabinovitz wrote: > > Scipy.special has the functions comb and perm but no rank and unrank to convert linear indices to combination or permutation. These are fairly useful for generating random sequences from large sets. Is there any objection to a PR implementing these functions? > > The signatures I had in mind are > > perm_rank(indices, n, k) > perm_unrank(index, n, k) > comb_rank(indices, n, k) > comb_unrank(index, n, k) > > Regards, > > Joe > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev From jfoxrabinovitz at gmail.com Sat May 9 23:38:07 2020 From: jfoxrabinovitz at gmail.com (Joseph Fox-Rabinovitz) Date: Sat, 9 May 2020 23:38:07 -0400 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: Josh, I'm referring to a combinatorial number system: https://en.m.wikipedia.org/wiki/Combinatorial_number_system. Also mentioned here: https://en.m.wikipedia.org/wiki/Combination#Enumerating_k-combinations . This is something I've made small utilitity functions for a couple of times. For a formal implementation, I've got a couple of peer reviewed papers for reference, and some different options for features, like with and without repetition. I'd prefer not to do the extra work if this is too niche though. Regards, Joe On Sat, May 9, 2020, 11:02 Joshua Wilson wrote: > > but no rank and unrank to convert linear indices to combination or > permutation > > Could you point to a definition of these functions? I'm actually not > sure what you mean. > > - Josh > > On Fri, May 8, 2020 at 12:12 PM Joseph Fox-Rabinovitz > wrote: > > > > Scipy.special has the functions comb and perm but no rank and unrank to > convert linear indices to combination or permutation. These are fairly > useful for generating random sequences from large sets. Is there any > objection to a PR implementing these functions? > > > > The signatures I had in mind are > > > > perm_rank(indices, n, k) > > perm_unrank(index, n, k) > > comb_rank(indices, n, k) > > comb_unrank(index, n, k) > > > > Regards, > > > > Joe > > _______________________________________________ > > SciPy-Dev mailing list > > SciPy-Dev at python.org > > https://mail.python.org/mailman/listinfo/scipy-dev > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rlucas7 at vt.edu Sun May 10 08:08:57 2020 From: rlucas7 at vt.edu (rlucas7 at vt.edu) Date: Sun, 10 May 2020 08:08:57 -0400 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: Hi Joe, Do you have references that include applications? The application I?m seeing on the wiki links relates to sampling k sets from a set of N elements without a full table scan. Are there other applications besides sampling? Sincerely, -Lucas Roberts > On May 9, 2020, at 11:38 PM, Joseph Fox-Rabinovitz wrote: > > ? > Josh, > > I'm referring to a combinatorial number system: https://en.m.wikipedia.org/wiki/Combinatorial_number_system. Also mentioned here: https://en.m.wikipedia.org/wiki/Combination#Enumerating_k-combinations. > > This is something I've made small utilitity functions for a couple of times. For a formal implementation, I've got a couple of peer reviewed papers for reference, and some different options for features, like with and without repetition. I'd prefer not to do the extra work if this is too niche though. > > Regards, > > Joe > > > >> On Sat, May 9, 2020, 11:02 Joshua Wilson wrote: >> > but no rank and unrank to convert linear indices to combination or permutation >> >> Could you point to a definition of these functions? I'm actually not >> sure what you mean. >> >> - Josh >> >> On Fri, May 8, 2020 at 12:12 PM Joseph Fox-Rabinovitz >> wrote: >> > >> > Scipy.special has the functions comb and perm but no rank and unrank to convert linear indices to combination or permutation. These are fairly useful for generating random sequences from large sets. Is there any objection to a PR implementing these functions? >> > >> > The signatures I had in mind are >> > >> > perm_rank(indices, n, k) >> > perm_unrank(index, n, k) >> > comb_rank(indices, n, k) >> > comb_unrank(index, n, k) >> > >> > Regards, >> > >> > Joe >> > _______________________________________________ >> > SciPy-Dev mailing list >> > SciPy-Dev at python.org >> > https://mail.python.org/mailman/listinfo/scipy-dev >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev -------------- next part -------------- An HTML attachment was scrubbed... URL: From jfoxrabinovitz at gmail.com Sun May 10 10:02:48 2020 From: jfoxrabinovitz at gmail.com (Joseph Fox-Rabinovitz) Date: Sun, 10 May 2020 10:02:48 -0400 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: Lucas, I'm unaware of any other computational application. Most of the references I've read focus on the algorithm, implying that the uses are self-evident. My use-case has always been combination and permutation sampling for engineering applications, so I've never bothered to understand the underlying mathematics too deeply, nor other possible applications. This in and of itself may mean that the functions are best left as utilities. At the same time, I feel that if I'm using something fairly frequently that doesn't have a "standard" implementation, I should at least ask. I should also mention at some point that the implementation I have in mind takes advantage of python's infinite precision integers. I'm currently doing this in python, but it would be simple to implement in C to bypass the loop and type checking overhead almost entirely. Regards, Joe On Sun, May 10, 2020, 08:57 wrote: > Hi Joe, > > Do you have references that include applications? > > The application I?m seeing on the wiki links relates to sampling k sets > from a set of N elements without a full table scan. > > Are there other applications besides sampling? > > Sincerely, > > -Lucas Roberts > > On May 9, 2020, at 11:38 PM, Joseph Fox-Rabinovitz < > jfoxrabinovitz at gmail.com> wrote: > > ? > Josh, > > I'm referring to a combinatorial number system: > https://en.m.wikipedia.org/wiki/Combinatorial_number_system. Also > mentioned here: > https://en.m.wikipedia.org/wiki/Combination#Enumerating_k-combinations. > > This is something I've made small utilitity functions for a couple of > times. For a formal implementation, I've got a couple of peer reviewed > papers for reference, and some different options for features, like with > and without repetition. I'd prefer not to do the extra work if this is too > niche though. > > Regards, > > Joe > > > > On Sat, May 9, 2020, 11:02 Joshua Wilson > wrote: > >> > but no rank and unrank to convert linear indices to combination or >> permutation >> >> Could you point to a definition of these functions? I'm actually not >> sure what you mean. >> >> - Josh >> >> On Fri, May 8, 2020 at 12:12 PM Joseph Fox-Rabinovitz >> wrote: >> > >> > Scipy.special has the functions comb and perm but no rank and unrank to >> convert linear indices to combination or permutation. These are fairly >> useful for generating random sequences from large sets. Is there any >> objection to a PR implementing these functions? >> > >> > The signatures I had in mind are >> > >> > perm_rank(indices, n, k) >> > perm_unrank(index, n, k) >> > comb_rank(indices, n, k) >> > comb_unrank(index, n, k) >> > >> > Regards, >> > >> > Joe >> > _______________________________________________ >> > SciPy-Dev mailing list >> > SciPy-Dev at python.org >> > https://mail.python.org/mailman/listinfo/scipy-dev >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From robert.kern at gmail.com Sun May 10 18:26:06 2020 From: robert.kern at gmail.com (Robert Kern) Date: Sun, 10 May 2020 18:26:06 -0400 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: On Sun, May 10, 2020 at 10:03 AM Joseph Fox-Rabinovitz < jfoxrabinovitz at gmail.com> wrote: > Lucas, > > I'm unaware of any other computational application. Most of the references > I've read focus on the algorithm, implying that the uses are self-evident. > My use-case has always been combination and permutation sampling for > engineering applications, so I've never bothered to understand the > underlying mathematics too deeply, nor other possible applications. > > This in and of itself may mean that the functions are best left as > utilities. At the same time, I feel that if I'm using something fairly > frequently that doesn't have a "standard" implementation, I should at least > ask. > > I should also mention at some point that the implementation I have in mind > takes advantage of python's infinite precision integers. I'm currently > doing this in python, but it would be simple to implement in C to bypass > the loop and type checking overhead almost entirely. > Because of that, these functions are not the *best* fit for scipy.special, which usually provides ufuncs that operate on bounded-precision floats and integers. The few exact combinatorial functions that we do have are already kind of misfits anyways, and mostly exist so that it's easy to swap between the exact calculations and approximate floating-point calculations (e.g. approximating factorial with a gamma function). At the same time, a lot of the support that scipy.special would give you (some infrastructure for building ufuncs) is probably not that relevant to you. You've definitely piqued my interest with respect to sampling, so I'd love to see an implementation somewhere, but a small standalone Cython module might be the appropriate place for it. At least for now. We can always move stuff around later. It might even be easier to get stuff done in your own repo than trying to build all of scipy just to test your implementations during development. -- Robert Kern -------------- next part -------------- An HTML attachment was scrubbed... URL: From jfoxrabinovitz at gmail.com Sun May 10 18:31:32 2020 From: jfoxrabinovitz at gmail.com (Joseph Fox-Rabinovitz) Date: Sun, 10 May 2020 18:31:32 -0400 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: Robert, That sounds like a good compromise. I'll make a small cython or C implementation. I'm not super familiar with with the former, so no promises there. As long as there is some interest, I'll be happy to work on it. Thanks, Joe On Sun, May 10, 2020, 18:27 Robert Kern wrote: > On Sun, May 10, 2020 at 10:03 AM Joseph Fox-Rabinovitz < > jfoxrabinovitz at gmail.com> wrote: > >> Lucas, >> >> I'm unaware of any other computational application. Most of the >> references I've read focus on the algorithm, implying that the uses are >> self-evident. My use-case has always been combination and permutation >> sampling for engineering applications, so I've never bothered to understand >> the underlying mathematics too deeply, nor other possible applications. >> >> This in and of itself may mean that the functions are best left as >> utilities. At the same time, I feel that if I'm using something fairly >> frequently that doesn't have a "standard" implementation, I should at least >> ask. >> >> I should also mention at some point that the implementation I have in >> mind takes advantage of python's infinite precision integers. I'm currently >> doing this in python, but it would be simple to implement in C to bypass >> the loop and type checking overhead almost entirely. >> > > Because of that, these functions are not the *best* fit for scipy.special, > which usually provides ufuncs that operate on bounded-precision floats and > integers. The few exact combinatorial functions that we do have are already > kind of misfits anyways, and mostly exist so that it's easy to swap between > the exact calculations and approximate floating-point calculations (e.g. > approximating factorial with a gamma function). At the same time, a lot of > the support that scipy.special would give you (some infrastructure for > building ufuncs) is probably not that relevant to you. > > You've definitely piqued my interest with respect to sampling, so I'd love > to see an implementation somewhere, but a small standalone Cython module > might be the appropriate place for it. At least for now. We can always move > stuff around later. It might even be easier to get stuff done in your own > repo than trying to build all of scipy just to test your implementations > during development. > > -- > Robert Kern > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From robert.kern at gmail.com Sun May 10 18:54:50 2020 From: robert.kern at gmail.com (Robert Kern) Date: Sun, 10 May 2020 18:54:50 -0400 Subject: [SciPy-Dev] Rank and Unrank functions In-Reply-To: References: Message-ID: On Sun, May 10, 2020 at 6:32 PM Joseph Fox-Rabinovitz < jfoxrabinovitz at gmail.com> wrote: > Robert, > > That sounds like a good compromise. I'll make a small cython or C > implementation. I'm not super familiar with with the former, so no promises > there. As long as there is some interest, I'll be happy to work on it. > I mean, implement it however you are comfortable doing so. I just suggested Cython because it's the easiest way to take advantage of the builtin Python types while being able to sidestep the Python interpreter loop and runtime method-dispatch on every operation. I *do* recommend looking into that, but only because Cython is a good skill to have, and this sounds like a nice, contained problem to get started with. You can *probably* get away with implementing and testing in pure Python, then doing a minimal amount of annotation to get the Cython code working well. -- Robert Kern -------------- next part -------------- An HTML attachment was scrubbed... URL: From p.vanmulbregt at comcast.net Mon May 11 15:17:47 2020 From: p.vanmulbregt at comcast.net (Paul van Mulbregt) Date: Mon, 11 May 2020 15:17:47 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: References: Message-ID: Hi Warren, You mentioned "Creating probability distributions in stats: a guide to subclassing rv_continuous and rv_discrete." There is already some existing doc on adding distributions https://docs.scipy.org/doc/scipy/reference/dev/contributor/adding_new.html#adding-new (reachable from https://docs.scipy.org/doc/scipy/reference/dev/contributor/contributor_toc.html.) How would the two relate to each other? -Paul > On May 9, 2020, at 10:04 AM, Warren Weckesser wrote: > > On 5/9/20, Ralf Gommers > wrote: >> On Sat, May 9, 2020 at 5:43 AM Warren Weckesser >> >> wrote: >> >>> Hey all, >>> >>> I just created a pull request in which I started a new subsection of >>> the developer documentation called the "SciPy API Development Guide". >>> As I write this, the CircleCI artifact containing the new page is >>> >>> >>> https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html >>> >>> >> That looks like a good idea to me, thanks Warren. So far this lived at the >> bottom of the core developer guide: >> http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. >> Could you move the scipy.special docs there over to this new API >> Development Guide? >> > > Good idea. I just added a commit to make that change in the pull request. > > >> The first item to be included in this section is a design >>> specification for the `nan_policy` argument that is used in many >>> functions in `scipy.stats`. We'll be adding `nan_policy` to more >>> functions, so I think it will be helpful to have an explicit design >>> spec in the docs that we all agree on. >>> >> >> +1 that would be super helpful. >> >> >>> Two more topics to be added to the guidelines soon: >>> * Creating probability distributions in stats: a guide to subclassing >>> rv_continuous and rv_discrete. >>> * Modifying return values to allow objects with attributes while >>> maintaining backward compatibility with existing return values that >>> are tuples or NamedTuples. >>> >> >> Both of these also sound very useful. For namedtuples, you probably should >> also include or at least reference the Bunch design pattern (we have it in >> `integrate` and `signal`, there's still an open issue for `stats`). > > > Yes, that's what I had in mind. > > Warren > > >> >> Cheers, >> Ralf >> >> >>> I'm currently focused on `stats`, but this section is meant for any >>> API guidelines or conventions that we use but that are currently only >>> stored in our heads, in old mailing list or github threads, or in a >>> few implementations here and there in the code. >>> >>> Take a look and let me know what you think. >>> >>> Warren >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Mon May 11 15:49:14 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Mon, 11 May 2020 15:49:14 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: References: Message-ID: On 5/11/20, Paul van Mulbregt wrote: > Hi Warren, > You mentioned "Creating probability distributions in stats: a guide to > subclassing rv_continuous and rv_discrete." > There is already some existing doc on adding distributions > https://docs.scipy.org/doc/scipy/reference/dev/contributor/adding_new.html#adding-new > (reachable from > https://docs.scipy.org/doc/scipy/reference/dev/contributor/contributor_toc.html.) > How would the two relate to each other? Heh, maybe try to make that doc easier to find? Then add more specific details about the required API that must be implemented. Two items that come to mind: explain the required signature of `_rvs()`, and what values will be passed to it from `rvs()`; and explain the requirements for implementing broadcasting in the overridden functions. We can add documentation for other "pain points" as we encounter (or remember) them. Warren > -Paul > > > >> On May 9, 2020, at 10:04 AM, Warren Weckesser >> wrote: >> >> On 5/9/20, Ralf Gommers > > wrote: >>> On Sat, May 9, 2020 at 5:43 AM Warren Weckesser >>> >>> wrote: >>> >>>> Hey all, >>>> >>>> I just created a pull request in which I started a new subsection of >>>> the developer documentation called the "SciPy API Development Guide". >>>> As I write this, the CircleCI artifact containing the new page is >>>> >>>> >>>> https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html >>>> >>>> >>> That looks like a good idea to me, thanks Warren. So far this lived at >>> the >>> bottom of the core developer guide: >>> http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. >>> Could you move the scipy.special docs there over to this new API >>> Development Guide? >>> >> >> Good idea. I just added a commit to make that change in the pull >> request. >> >> >>> The first item to be included in this section is a design >>>> specification for the `nan_policy` argument that is used in many >>>> functions in `scipy.stats`. We'll be adding `nan_policy` to more >>>> functions, so I think it will be helpful to have an explicit design >>>> spec in the docs that we all agree on. >>>> >>> >>> +1 that would be super helpful. >>> >>> >>>> Two more topics to be added to the guidelines soon: >>>> * Creating probability distributions in stats: a guide to subclassing >>>> rv_continuous and rv_discrete. >>>> * Modifying return values to allow objects with attributes while >>>> maintaining backward compatibility with existing return values that >>>> are tuples or NamedTuples. >>>> >>> >>> Both of these also sound very useful. For namedtuples, you probably >>> should >>> also include or at least reference the Bunch design pattern (we have it >>> in >>> `integrate` and `signal`, there's still an open issue for `stats`). >> >> >> Yes, that's what I had in mind. >> >> Warren >> >> >>> >>> Cheers, >>> Ralf >>> >>> >>>> I'm currently focused on `stats`, but this section is meant for any >>>> API guidelines or conventions that we use but that are currently only >>>> stored in our heads, in old mailing list or github threads, or in a >>>> few implementations here and there in the code. >>>> >>>> Take a look and let me know what you think. >>>> >>>> Warren >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev > > From lukas.koch at mailbox.org Mon May 11 18:18:34 2020 From: lukas.koch at mailbox.org (Lukas Koch) Date: Mon, 11 May 2020 23:18:34 +0100 Subject: [SciPy-Dev] Terminal histogram plotting Message-ID: <26060d1c-cd80-9c55-0278-8a88b2399d00@mailbox.org> Hello all, I recently developed a small module for plotting Numpy-like histograms in the terminal: https://github.com/ast0815/histoprint It uses terminal colours and some unicode trickery to plot up to 5 overlapping histograms. It supports variable bin widths (though all histograms in one plot have to have the same bin edges), and can add a legend and some summary statistics to the plot. It can also plot the histograms in a stack rather than overlapping. I was wondering whether there would be interest for this to become a part of SciPy, since this is a pretty generic functionality. If so, I could put in some extra effort to bring the code and docs up to SciPy standards. Let me know what you think. Cheers Lukas From rlucas7 at vt.edu Mon May 11 18:36:40 2020 From: rlucas7 at vt.edu (rlucas7 at vt.edu) Date: Mon, 11 May 2020 18:36:40 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: References: Message-ID: <9E38EF67-ADEA-4785-B9CB-DCA524BE6632@vt.edu> One thing that?s come up is whether the rv_discrete should have a fit method? I think I?d called this out awhile back, seems other?s noticed too: https://github.com/scipy/scipy/issues/11948#issuecomment-620308082 I mentioned to submit the question here but I didn?t see, maybe I missed. That is the largest difference in terms of api between discrete and continuous distributions to my knowledge in SciPy. It sounds like these are different. One talks about subclassing, E.g using existing framework. What I understood Warren was referring to was feature development of the infrastructure itself. Maybe I misunderstood? Sincerely, -Lucas Roberts >> On May 11, 2020, at 3:49 PM, Warren Weckesser wrote: >> >> ?On 5/11/20, Paul van Mulbregt wrote: >> Hi Warren, >> You mentioned "Creating probability distributions in stats: a guide to >> subclassing rv_continuous and rv_discrete." >> There is already some existing doc on adding distributions >> https://docs.scipy.org/doc/scipy/reference/dev/contributor/adding_new.html#adding-new >> (reachable from >> https://docs.scipy.org/doc/scipy/reference/dev/contributor/contributor_toc.html.) >> How would the two relate to each other? > > > Heh, maybe try to make that doc easier to find? > > Then add more specific details about the required API that must be > implemented. Two items that come to mind: explain the required > signature of `_rvs()`, and what values will be passed to it from > `rvs()`; and explain the requirements for implementing broadcasting in > the overridden functions. We can add documentation for other "pain > points" as we encounter (or remember) them. > > Warren > > > > > >> -Paul >>> On May 9, 2020, at 10:04 AM, Warren Weckesser >>> wrote: >>> On 5/9/20, Ralf Gommers >> > wrote: >>>> On Sat, May 9, 2020 at 5:43 AM Warren Weckesser >>>> >>>> wrote: >>>>> Hey all, >>>>> I just created a pull request in which I started a new subsection of >>>>> the developer documentation called the "SciPy API Development Guide". >>>>> As I write this, the CircleCI artifact containing the new page is >>>>> https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html >>>> That looks like a good idea to me, thanks Warren. So far this lived at >>>> the >>>> bottom of the core developer guide: >>>> http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. >>>> Could you move the scipy.special docs there over to this new API >>>> Development Guide? >>> Good idea. I just added a commit to make that change in the pull >>> request. >>>> The first item to be included in this section is a design >>>>> specification for the `nan_policy` argument that is used in many >>>>> functions in `scipy.stats`. We'll be adding `nan_policy` to more >>>>> functions, so I think it will be helpful to have an explicit design >>>>> spec in the docs that we all agree on. >>>> +1 that would be super helpful. >>>>> Two more topics to be added to the guidelines soon: >>>>> * Creating probability distributions in stats: a guide to subclassing >>>>> rv_continuous and rv_discrete. >>>>> * Modifying return values to allow objects with attributes while >>>>> maintaining backward compatibility with existing return values that >>>>> are tuples or NamedTuples. >>>> Both of these also sound very useful. For namedtuples, you probably >>>> should >>>> also include or at least reference the Bunch design pattern (we have it >>>> in >>>> `integrate` and `signal`, there's still an open issue for `stats`). >>> Yes, that's what I had in mind. >>> Warren >>>> Cheers, >>>> Ralf >>>>> I'm currently focused on `stats`, but this section is meant for any >>>>> API guidelines or conventions that we use but that are currently only >>>>> stored in our heads, in old mailing list or github threads, or in a >>>>> few implementations here and there in the code. >>>>> Take a look and let me know what you think. >>>>> Warren >>>>> _______________________________________________ >>>>> SciPy-Dev mailing list >>>>> SciPy-Dev at python.org >>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev -------------- next part -------------- An HTML attachment was scrubbed... URL: From ilhanpolat at gmail.com Mon May 11 20:51:16 2020 From: ilhanpolat at gmail.com (Ilhan Polat) Date: Tue, 12 May 2020 02:51:16 +0200 Subject: [SciPy-Dev] Terminal histogram plotting In-Reply-To: <26060d1c-cd80-9c55-0278-8a88b2399d00@mailbox.org> References: <26060d1c-cd80-9c55-0278-8a88b2399d00@mailbox.org> Message-ID: This is great stuff. I don't know who would need or for what, but still really nice. I am not sure if this is a fit for SciPy though. We import matplotlib and not-so-often do basic plotting, hence plotting on the console would be even less often if not None. However, I think matplotlib folks might be interested since this tool is genuinely graphics related and not much of the algorithm. But I don't want to speculate on behalf of them. Nice one Lukas! On Tue, May 12, 2020 at 12:26 AM Lukas Koch wrote: > Hello all, > > I recently developed a small module for plotting Numpy-like histograms > in the terminal: > > https://github.com/ast0815/histoprint > > It uses terminal colours and some unicode trickery to plot up to 5 > overlapping histograms. It supports variable bin widths (though all > histograms in one plot have to have the same bin edges), and can add a > legend and some summary statistics to the plot. It can also plot the > histograms in a stack rather than overlapping. > > I was wondering whether there would be interest for this to become a > part of SciPy, since this is a pretty generic functionality. If so, I > could put in some extra effort to bring the code and docs up to SciPy > standards. > > Let me know what you think. > > Cheers > Lukas > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lukas.koch at mailbox.org Tue May 12 06:19:55 2020 From: lukas.koch at mailbox.org (Lukas Koch) Date: Tue, 12 May 2020 11:19:55 +0100 Subject: [SciPy-Dev] Terminal histogram plotting In-Reply-To: <87eerqotg8.fsf@ddavis.io> References: <26060d1c-cd80-9c55-0278-8a88b2399d00@mailbox.org> <87eerqotg8.fsf@ddavis.io> Message-ID: <7c1a6ce7-0a4e-12a9-c6e6-28d0965913c8@mailbox.org> Hello Ilhan, Doug, Ok, I'll ask there if anyone wants to adopt my little code baby. ;) Thanks! On 12/05/2020 02:03, Doug Davis wrote: > Ilhan Polat writes: > >> This is great stuff. I don't know who would need or for what, but still >> really nice. I am not sure if this is a fit for SciPy though. We import >> matplotlib and not-so-often do basic plotting, hence plotting on the >> console would be even less often if not None. However, I think matplotlib >> folks might be interested since this tool is genuinely graphics related and >> not much of the algorithm. But I don't want to speculate on behalf of them. >> >> On Tue, May 12, 2020 at 12:26 AM Lukas Koch wrote: >> >>> Hello all, >>> >>> I recently developed a small module for plotting Numpy-like histograms >>> in the terminal: >>> >>> https://github.com/ast0815/histoprint >>> >>> [...] >>> >>> Let me know what you think. > > Cool stuff! > > Another party that may be interested is the scikit-hep community: > https://scikit-hep.org/. Expanding the histogramming ecosystem in Python > is pretty high on their list of priorities. > > Doug > From nathanrooy at gmail.com Wed May 13 20:49:34 2020 From: nathanrooy at gmail.com (Nathan Rooy) Date: Wed, 13 May 2020 20:49:34 -0400 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm Message-ID: Hi, I've written a particle swam based optimizer that could be integrated into scipy.optimize.minimize with method=pso. Particle swam does a good job in non-convex, non-continuous environments and would make a nice compliment to the current optimizer selection. If there is any interest with this addition, I would be happy to implement it. Thanks, Nathan -------------- next part -------------- An HTML attachment was scrubbed... URL: From andyfaff at gmail.com Wed May 13 21:54:51 2020 From: andyfaff at gmail.com (Andrew Nelson) Date: Thu, 14 May 2020 11:54:51 +1000 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: As a global optimizer in the first instance it would probably be added as a separate function (`particle_swarm`), rather than be added as a method to minimize. I'm not familiar with particle swarm, are there various types/flavours of the approach? The general route to adding new global optimizers is: - is it a recognised solver approach that is proven in the scientific literature? - run it against the global benchmark suite, which would involve modifying https://github.com/scipy/scipy/blob/master/benchmarks/benchmarks/optimize.py (do this before you do any modification of scipy library code). Running those global benchmarks for the `particle_swarm` function would check that the solver is performant enough. By performant we mean that the percentage success rate against the problems is as good as the other global solvers. Also of interest is the average number of function evaluations to reach that success rate. (Time taken is probably related to number of function evaluations). Ideally the function fills holes that the other solvers can't handle. If it's performant then we can go further towards adding it to scipy (these steps would be after a further discussion on this list): - code needs to be compatible with the scipy licence (i.e. no GPL/LGPL) - the changes need a comprehensive test suite. - I strongly suggest that you have a public `particle_swarm` function, and a private ParticleSwarm class that does the solving behind the scenes. If possible make the ParticleSwarm object an iterator with a __next__ method so that individual iteration steps can be taken. See https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py as an example. A full solve could be done with a `solve` method. - keep the API as close as possible to other optimizers, i.e. same parameter names, same keyword names, parameter order is similar to other minimizers. - differential_evolution benefitted from offering a reduced set of functionality when it was first added. Additional features came afterwards and the delayed introduction of them meant that the API/design of the solver benefitted from a lot of thought over a prolonged period. - if `particle_swarm` uses random number generation then the solver should be able to generate random numbers with either `np.random.RandomState` or `np.random.Generator` ( https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py#L560). This means using methods that belong to both type of objects. - the random number generation needs to be reproducible (function should have `seed` keyword). - total number of function evaluations needs to be tracked. - consider parallelisation aspects of your function. Can calls to the objective function be done in parallel? (`workers` keyword). - vectorisation is nice. -------------- next part -------------- An HTML attachment was scrubbed... URL: From nathanrooy at gmail.com Thu May 14 12:24:54 2020 From: nathanrooy at gmail.com (Nathan Rooy) Date: Thu, 14 May 2020 12:24:54 -0400 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Thanks for the quick reply Andrew. I'll go ahead and get started on those benchmarks. - Nathan On Wed, May 13, 2020 at 9:55 PM Andrew Nelson wrote: > As a global optimizer in the first instance it would probably be added as > a separate function (`particle_swarm`), rather than be added as a method to > minimize. I'm not familiar with particle swarm, are there various > types/flavours of the approach? > > The general route to adding new global optimizers is: > > - is it a recognised solver approach that is proven in the scientific > literature? > - run it against the global benchmark suite, which would involve modifying > https://github.com/scipy/scipy/blob/master/benchmarks/benchmarks/optimize.py (do > this before you do any modification of scipy library code). Running those > global benchmarks for the `particle_swarm` function would check that the > solver is performant enough. By performant we mean that the percentage > success rate against the problems is as good as the other global solvers. > Also of interest is the average number of function evaluations to reach > that success rate. (Time taken is probably related to number of function > evaluations). Ideally the function fills holes that the other solvers can't > handle. > > If it's performant then we can go further towards adding it to scipy > (these steps would be after a further discussion on this list): > > - code needs to be compatible with the scipy licence (i.e. no GPL/LGPL) > - the changes need a comprehensive test suite. > - I strongly suggest that you have a public `particle_swarm` function, and > a private ParticleSwarm class that does the solving behind the scenes. If > possible make the ParticleSwarm object an iterator with a __next__ method > so that individual iteration steps can be taken. See > https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py as > an example. A full solve could be done with a `solve` method. > - keep the API as close as possible to other optimizers, i.e. same > parameter names, same keyword names, parameter order is similar to other > minimizers. > - differential_evolution benefitted from offering a reduced set of > functionality when it was first added. Additional features came afterwards > and the delayed introduction of them meant that the API/design of the > solver benefitted from a lot of thought over a prolonged period. > - if `particle_swarm` uses random number generation then the solver should > be able to generate random numbers with either `np.random.RandomState` or > `np.random.Generator` ( > https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py#L560). > This means using methods that belong to both type of objects. > - the random number generation needs to be reproducible (function should > have `seed` keyword). > - total number of function evaluations needs to be tracked. > - consider parallelisation aspects of your function. Can calls to the > objective function be done in parallel? (`workers` keyword). > - vectorisation is nice. > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikofski at berkeley.edu Thu May 14 13:13:11 2020 From: mikofski at berkeley.edu (Dr. Mark Alexander Mikofski PhD) Date: Thu, 14 May 2020 10:13:11 -0700 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Hi all, Please take my naive opinions with a grain of salt. I appreciate these contributions. Please let me know if I offend. I found some info on Particle Swarm optimization (PSO) that might be relevant. It looks really interesting to me! If I understand correctly PSO is a "global optimization method" perhaps similar in that respect to a generic algorithm. But I hadn't heard of PSO before, which isn't that surprising ;) https://en.wikipedia.org/wiki/Particle_swarm_optimization https://pypi.org/project/psopy/ https://pyswarms.readthedocs.io/en/latest/ https://pythonhosted.org/pyswarm/ https://nathanrooy.github.io/posts/2016-08-17/simple-particle-swarm-optimization-with-python/ http://www.swarmintelligence.org/tutorials.php A friend and colleague of mine was more skeptical, they said (not my words): "metaheuristic methods are computationally intensive, lack convergence bounds/guarantees, tend to not have strong mathematical explanations, and are plagued by low-quality research. See, for example: https://web.archive.org/web/20131102075645/http://antor.ua.ac.be/system/files/mme.pdf " *In a review paper (De Corte and S?rensen, 2012), we list the different methods that have been applied to this challenging optimization problem. The list includes genetic algorithms, memetic algorithms, the shuffled frog leaping algorithm, cross entropy search, differential evolution, simulated annealing, the immune algorithm, and particle swarm harmony search. The most complicated of these algorithms takes almost seven pages to explain. The algorithms are tested on a very small number of instances (three or four), all of which are very small in size, and unsurprisingly, all algorithms achieve excellent performance on this unchallenging instance set. Yet, as we show in De Corte and S?rensen (2012), none of the mentioned methods is able to outperform a simple constructive heuristic that can be explained in a single paragraph.* So apparently this is a hot topic? I personally have found global optimization methods quite useful. For example in solving for reaction rates in chemical kinetics of multistep smoldering combustion, we used genetic algorithms to find several good candidates of coefficients. We also used a similar approach in solar for optimizing layout design of super large pv systems in complex terrain. But because this method could be misused or misunderstood, it should have good documentation. For example, I think it would be very useful to explain what types of problems are best suited for PSO, how it's different from other algorithms, and explain it's advantages, disadvantages. Also perhaps consider whether it should be party of scikit learn instead of SciPy? Thanks! Mark On Thu, May 14, 2020, 9:25 AM Nathan Rooy wrote: > Thanks for the quick reply Andrew. I'll go ahead and get started on those > benchmarks. > > - Nathan > > On Wed, May 13, 2020 at 9:55 PM Andrew Nelson wrote: > >> As a global optimizer in the first instance it would probably be added as >> a separate function (`particle_swarm`), rather than be added as a method to >> minimize. I'm not familiar with particle swarm, are there various >> types/flavours of the approach? >> >> The general route to adding new global optimizers is: >> >> - is it a recognised solver approach that is proven in the scientific >> literature? >> - run it against the global benchmark suite, which would involve >> modifying >> https://github.com/scipy/scipy/blob/master/benchmarks/benchmarks/optimize.py (do >> this before you do any modification of scipy library code). Running those >> global benchmarks for the `particle_swarm` function would check that the >> solver is performant enough. By performant we mean that the percentage >> success rate against the problems is as good as the other global solvers. >> Also of interest is the average number of function evaluations to reach >> that success rate. (Time taken is probably related to number of function >> evaluations). Ideally the function fills holes that the other solvers can't >> handle. >> >> If it's performant then we can go further towards adding it to scipy >> (these steps would be after a further discussion on this list): >> >> - code needs to be compatible with the scipy licence (i.e. no GPL/LGPL) >> - the changes need a comprehensive test suite. >> - I strongly suggest that you have a public `particle_swarm` function, >> and a private ParticleSwarm class that does the solving behind the scenes. >> If possible make the ParticleSwarm object an iterator with a __next__ >> method so that individual iteration steps can be taken. See >> https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py as >> an example. A full solve could be done with a `solve` method. >> - keep the API as close as possible to other optimizers, i.e. same >> parameter names, same keyword names, parameter order is similar to other >> minimizers. >> - differential_evolution benefitted from offering a reduced set of >> functionality when it was first added. Additional features came afterwards >> and the delayed introduction of them meant that the API/design of the >> solver benefitted from a lot of thought over a prolonged period. >> - if `particle_swarm` uses random number generation then the solver >> should be able to generate random numbers with either >> `np.random.RandomState` or `np.random.Generator` ( >> https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py#L560). >> This means using methods that belong to both type of objects. >> - the random number generation needs to be reproducible (function should >> have `seed` keyword). >> - total number of function evaluations needs to be tracked. >> - consider parallelisation aspects of your function. Can calls to the >> objective function be done in parallel? (`workers` keyword). >> - vectorisation is nice. >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ralf.gommers at gmail.com Fri May 15 11:21:03 2020 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Fri, 15 May 2020 17:21:03 +0200 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: On Thu, May 14, 2020 at 3:55 AM Andrew Nelson wrote: > As a global optimizer in the first instance it would probably be added as > a separate function (`particle_swarm`), rather than be added as a method to > minimize. I'm not familiar with particle swarm, are there various > types/flavours of the approach? > > The general route to adding new global optimizers is: > Thanks for this detailed reply Andrew. I think it's worth adding this to the new section of the developer guide once https://github.com/scipy/scipy/pull/12069 is merged. One thing to ask additionally here is: are particle swarm methods in scope? It would be good to compare this proposed method to for example what's currently available in PyGMO (https://esa.github.io/pygmo/). Cheers, Ralf > - is it a recognised solver approach that is proven in the scientific > literature? > - run it against the global benchmark suite, which would involve modifying > https://github.com/scipy/scipy/blob/master/benchmarks/benchmarks/optimize.py (do > this before you do any modification of scipy library code). Running those > global benchmarks for the `particle_swarm` function would check that the > solver is performant enough. By performant we mean that the percentage > success rate against the problems is as good as the other global solvers. > Also of interest is the average number of function evaluations to reach > that success rate. (Time taken is probably related to number of function > evaluations). Ideally the function fills holes that the other solvers can't > handle. > > If it's performant then we can go further towards adding it to scipy > (these steps would be after a further discussion on this list): > > - code needs to be compatible with the scipy licence (i.e. no GPL/LGPL) > - the changes need a comprehensive test suite. > - I strongly suggest that you have a public `particle_swarm` function, and > a private ParticleSwarm class that does the solving behind the scenes. If > possible make the ParticleSwarm object an iterator with a __next__ method > so that individual iteration steps can be taken. See > https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py as > an example. A full solve could be done with a `solve` method. > - keep the API as close as possible to other optimizers, i.e. same > parameter names, same keyword names, parameter order is similar to other > minimizers. > - differential_evolution benefitted from offering a reduced set of > functionality when it was first added. Additional features came afterwards > and the delayed introduction of them meant that the API/design of the > solver benefitted from a lot of thought over a prolonged period. > - if `particle_swarm` uses random number generation then the solver should > be able to generate random numbers with either `np.random.RandomState` or > `np.random.Generator` ( > https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py#L560). > This means using methods that belong to both type of objects. > - the random number generation needs to be reproducible (function should > have `seed` keyword). > - total number of function evaluations needs to be tracked. > - consider parallelisation aspects of your function. Can calls to the > objective function be done in parallel? (`workers` keyword). > - vectorisation is nice. > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrea.gavana at gmail.com Fri May 15 11:40:51 2020 From: andrea.gavana at gmail.com (Andrea Gavana) Date: Fri, 15 May 2020 17:40:51 +0200 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: On Fri, 15 May 2020 at 17.21, Ralf Gommers wrote: > > > On Thu, May 14, 2020 at 3:55 AM Andrew Nelson wrote: > >> As a global optimizer in the first instance it would probably be added as >> a separate function (`particle_swarm`), rather than be added as a method to >> minimize. I'm not familiar with particle swarm, are there various >> types/flavours of the approach? >> >> The general route to adding new global optimizers is: >> > > Thanks for this detailed reply Andrew. I think it's worth adding this to > the new section of the developer guide once > https://github.com/scipy/scipy/pull/12069 is merged. > > One thing to ask additionally here is: are particle swarm methods in > scope? It would be good to compare this proposed method to for example > what's currently available in PyGMO (https://esa.github.io/pygmo/). > > Cheers, > Ralf > My apologies for pitching in, I?m usually just an observer. I?m sure some of you remember the global optimization benchmarks I once posted - and I believe they have been updated, adapted and integrated in scipy: http://infinity77.net/global_optimization/multidimensional.html In the set of optimizers, a particle swarm algorithm was actually there, and specifically the one from: http://www.norg.uminho.pt/aivaz/pswarm/ And it turned out to be not so bad in the end. My impression is that there might be scope for a particle swarm algorithm in scipy: I?ve used a few variants of them in the past where many other optimization procedures failed. But then I?m just a lurker so please take my opinion with a grain of salt :-). Andrea. > > >> - is it a recognised solver approach that is proven in the scientific >> literature? >> - run it against the global benchmark suite, which would involve >> modifying >> https://github.com/scipy/scipy/blob/master/benchmarks/benchmarks/optimize.py (do >> this before you do any modification of scipy library code). Running those >> global benchmarks for the `particle_swarm` function would check that the >> solver is performant enough. By performant we mean that the percentage >> success rate against the problems is as good as the other global solvers. >> Also of interest is the average number of function evaluations to reach >> that success rate. (Time taken is probably related to number of function >> evaluations). Ideally the function fills holes that the other solvers can't >> handle. >> >> If it's performant then we can go further towards adding it to scipy >> (these steps would be after a further discussion on this list): >> >> - code needs to be compatible with the scipy licence (i.e. no GPL/LGPL) >> - the changes need a comprehensive test suite. >> - I strongly suggest that you have a public `particle_swarm` function, >> and a private ParticleSwarm class that does the solving behind the scenes. >> If possible make the ParticleSwarm object an iterator with a __next__ >> method so that individual iteration steps can be taken. See >> https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py as >> an example. A full solve could be done with a `solve` method. >> - keep the API as close as possible to other optimizers, i.e. same >> parameter names, same keyword names, parameter order is similar to other >> minimizers. >> - differential_evolution benefitted from offering a reduced set of >> functionality when it was first added. Additional features came afterwards >> and the delayed introduction of them meant that the API/design of the >> solver benefitted from a lot of thought over a prolonged period. >> - if `particle_swarm` uses random number generation then the solver >> should be able to generate random numbers with either >> `np.random.RandomState` or `np.random.Generator` ( >> https://github.com/scipy/scipy/blob/master/scipy/optimize/_differentialevolution.py#L560). >> This means using methods that belong to both type of objects. >> - the random number generation needs to be reproducible (function should >> have `seed` keyword). >> - total number of function evaluations needs to be tracked. >> - consider parallelisation aspects of your function. Can calls to the >> objective function be done in parallel? (`workers` keyword). >> - vectorisation is nice. >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From charlesr.harris at gmail.com Fri May 15 14:24:55 2020 From: charlesr.harris at gmail.com (Charles R Harris) Date: Fri, 15 May 2020 12:24:55 -0600 Subject: [SciPy-Dev] NumPy wheels for pypy and aarch64. Message-ID: Hi All, Just a note that NumPy wheels for both pypy and aarch64 are now available in the nightly builds. Chuck -------------- next part -------------- An HTML attachment was scrubbed... URL: From newville at cars.uchicago.edu Fri May 15 18:00:57 2020 From: newville at cars.uchicago.edu (Matt Newville) Date: Fri, 15 May 2020 17:00:57 -0500 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Hi Andrea, On Fri, May 15, 2020 at 10:42 AM Andrea Gavana wrote: > On Fri, 15 May 2020 at 17.21, Ralf Gommers wrote: > >> >> >> On Thu, May 14, 2020 at 3:55 AM Andrew Nelson wrote: >> >>> As a global optimizer in the first instance it would probably be added >>> as a separate function (`particle_swarm`), rather than be added as a method >>> to minimize. I'm not familiar with particle swarm, are there various >>> types/flavours of the approach? >>> >>> The general route to adding new global optimizers is: >>> >> >> Thanks for this detailed reply Andrew. I think it's worth adding this to >> the new section of the developer guide once >> https://github.com/scipy/scipy/pull/12069 is merged. >> >> One thing to ask additionally here is: are particle swarm methods in >> scope? It would be good to compare this proposed method to for example >> what's currently available in PyGMO (https://esa.github.io/pygmo/). >> >> Cheers, >> Ralf >> > > My apologies for pitching in, I?m usually just an observer. I?m sure some > of you remember the global optimization benchmarks I once posted - and I > believe they have been updated, adapted and integrated in scipy: > > http://infinity77.net/global_optimization/multidimensional.html > > In the set of optimizers, a particle swarm algorithm was actually there, > and specifically the one from: > > http://www.norg.uminho.pt/aivaz/pswarm/ > > And it turned out to be not so bad in the end. My impression is that there > might be scope for a particle swarm algorithm in scipy: I?ve used a few > variants of them in the past where many other optimization procedures > failed. But then I?m just a lurker so please take my opinion with a grain > of salt :-). > > Andrea. > Thanks - I think your benchmarks are very informative and useful. FWIW, we have implemented the `ampgo` solver to lmfit ( https://lmfit.github.io/lmfit-py/fitting.html#lmfit.minimizer.Minimizer.ampgo), mainly based on your results. It looks to me like the next most useful to add would be `sce`. That is, it appears to be roughly "second best" and pretty good at being disjoint to `ampgo`, `basinhopping`, and `diffev`. Do you have code for this `sce` method that you could share? I'm afraid I know absolutely nothing about this method. I must admit that it was only from your work that I learned about `ampgo` too. Based on your results, it seems to me that adding `ampgo` and `sce` to scipy.optimize would be higher priorities than adding the particle smarm optimizer. Sure, every method has value, but using your benchmarks might be a good way to prioritize which methods to add. Cheers, and thanks again, --Matt -------------- next part -------------- An HTML attachment was scrubbed... URL: From andyfaff at gmail.com Fri May 15 19:21:13 2020 From: andyfaff at gmail.com (Andrew Nelson) Date: Sat, 16 May 2020 09:21:13 +1000 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Andrea's test function collection is super nice, and is able to produce good evidence for assessment in this area. I do have one minor disagreement with the way the benchmarks on http://infinity77.net/global_optimization/index.html were run, the maximum number of function evaluations is limited to 2 000. In any case, it's clear that implementations matter. For example, http://infinity77.net/global_optimization/multidimensional.html# would indicate that differential evolution isn't very good against the Ackley function, with zero successes. However, running the scipy implementation of differential-evolution indicates that it's actually quite good, https://gist.github.com/andyfaff/24c96a3d5dbc7b0272b2. The latter gist would approximate the output from running the optimize benchmarks. (Note that the gist is quite old, and the `anneal` column is from the old anneal function that was removed) On Sat, 16 May 2020 at 08:02, Matt Newville wrote: > Hi Andrea, > > On Fri, May 15, 2020 at 10:42 AM Andrea Gavana > wrote: > >> On Fri, 15 May 2020 at 17.21, Ralf Gommers >> wrote: >> >>> >>> >>> On Thu, May 14, 2020 at 3:55 AM Andrew Nelson >>> wrote: >>> >>>> As a global optimizer in the first instance it would probably be added >>>> as a separate function (`particle_swarm`), rather than be added as a method >>>> to minimize. I'm not familiar with particle swarm, are there various >>>> types/flavours of the approach? >>>> >>>> The general route to adding new global optimizers is: >>>> >>> >>> Thanks for this detailed reply Andrew. I think it's worth adding this to >>> the new section of the developer guide once >>> https://github.com/scipy/scipy/pull/12069 is merged. >>> >>> One thing to ask additionally here is: are particle swarm methods in >>> scope? It would be good to compare this proposed method to for example >>> what's currently available in PyGMO (https://esa.github.io/pygmo/). >>> >>> Cheers, >>> Ralf >>> >> >> My apologies for pitching in, I?m usually just an observer. I?m sure some >> of you remember the global optimization benchmarks I once posted - and I >> believe they have been updated, adapted and integrated in scipy: >> >> http://infinity77.net/global_optimization/multidimensional.html >> >> In the set of optimizers, a particle swarm algorithm was actually there, >> and specifically the one from: >> >> http://www.norg.uminho.pt/aivaz/pswarm/ >> >> And it turned out to be not so bad in the end. My impression is that >> there might be scope for a particle swarm algorithm in scipy: I?ve used a >> few variants of them in the past where many other optimization procedures >> failed. But then I?m just a lurker so please take my opinion with a grain >> of salt :-). >> >> Andrea. >> > > Thanks - I think your benchmarks are very informative and useful. FWIW, > we have implemented the `ampgo` solver to lmfit ( > https://lmfit.github.io/lmfit-py/fitting.html#lmfit.minimizer.Minimizer.ampgo), > mainly based on your results. > > It looks to me like the next most useful to add would be `sce`. That is, > it appears to be roughly "second best" and pretty good at being disjoint to > `ampgo`, `basinhopping`, and `diffev`. Do you have code for this `sce` > method that you could share? I'm afraid I know absolutely nothing about > this method. I must admit that it was only from your work that I learned > about `ampgo` too. > > Based on your results, it seems to me that adding `ampgo` and `sce` to > scipy.optimize would be higher priorities than adding the particle smarm > optimizer. Sure, every method has value, but using your benchmarks might > be a good way to prioritize which methods to add. > > Cheers, and thanks again, > > --Matt > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -- _____________________________________ Dr. Andrew Nelson _____________________________________ -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikofski at berkeley.edu Fri May 15 19:49:44 2020 From: mikofski at berkeley.edu (Dr. Mark Alexander Mikofski PhD) Date: Fri, 15 May 2020 16:49:44 -0700 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Hi Ralf & others, I'm sorry for interrupting, I'm normally only an observer. There are existing, current PSO Python packages: https://pypi.org/project/psopy/ (2020-04-19) https://pyswarms.readthedocs.io/en/latest/ (2019-05-18) https://pypi.org/project/pyPSO/#history (2007) Best regards, Mark On Fri, May 15, 2020, 4:22 PM Andrew Nelson wrote: > Andrea's test function collection is super nice, and is able to produce > good evidence for assessment in this area. I do have one minor disagreement > with the way the benchmarks on > http://infinity77.net/global_optimization/index.html were run, the > maximum number of function evaluations is limited to 2 000. > > In any case, it's clear that implementations matter. For example, > http://infinity77.net/global_optimization/multidimensional.html# would > indicate that differential evolution isn't very good against the Ackley > function, with zero successes. However, running the scipy implementation of > differential-evolution indicates that it's actually quite good, > https://gist.github.com/andyfaff/24c96a3d5dbc7b0272b2. The latter gist > would approximate the output from running the optimize benchmarks. > > (Note that the gist is quite old, and the `anneal` column is from the old > anneal function that was removed) > > > > On Sat, 16 May 2020 at 08:02, Matt Newville > wrote: > >> Hi Andrea, >> >> On Fri, May 15, 2020 at 10:42 AM Andrea Gavana >> wrote: >> >>> On Fri, 15 May 2020 at 17.21, Ralf Gommers >>> wrote: >>> >>>> >>>> >>>> On Thu, May 14, 2020 at 3:55 AM Andrew Nelson >>>> wrote: >>>> >>>>> As a global optimizer in the first instance it would probably be added >>>>> as a separate function (`particle_swarm`), rather than be added as a method >>>>> to minimize. I'm not familiar with particle swarm, are there various >>>>> types/flavours of the approach? >>>>> >>>>> The general route to adding new global optimizers is: >>>>> >>>> >>>> Thanks for this detailed reply Andrew. I think it's worth adding this >>>> to the new section of the developer guide once >>>> https://github.com/scipy/scipy/pull/12069 is merged. >>>> >>>> One thing to ask additionally here is: are particle swarm methods in >>>> scope? It would be good to compare this proposed method to for example >>>> what's currently available in PyGMO (https://esa.github.io/pygmo/). >>>> >>>> Cheers, >>>> Ralf >>>> >>> >>> My apologies for pitching in, I?m usually just an observer. I?m sure >>> some of you remember the global optimization benchmarks I once posted - and >>> I believe they have been updated, adapted and integrated in scipy: >>> >>> http://infinity77.net/global_optimization/multidimensional.html >>> >>> In the set of optimizers, a particle swarm algorithm was actually there, >>> and specifically the one from: >>> >>> http://www.norg.uminho.pt/aivaz/pswarm/ >>> >>> And it turned out to be not so bad in the end. My impression is that >>> there might be scope for a particle swarm algorithm in scipy: I?ve used a >>> few variants of them in the past where many other optimization procedures >>> failed. But then I?m just a lurker so please take my opinion with a grain >>> of salt :-). >>> >>> Andrea. >>> >> >> Thanks - I think your benchmarks are very informative and useful. FWIW, >> we have implemented the `ampgo` solver to lmfit ( >> https://lmfit.github.io/lmfit-py/fitting.html#lmfit.minimizer.Minimizer.ampgo), >> mainly based on your results. >> >> It looks to me like the next most useful to add would be `sce`. That >> is, it appears to be roughly "second best" and pretty good at being >> disjoint to `ampgo`, `basinhopping`, and `diffev`. Do you have code for >> this `sce` method that you could share? I'm afraid I know absolutely >> nothing about this method. I must admit that it was only from your work >> that I learned about `ampgo` too. >> >> Based on your results, it seems to me that adding `ampgo` and `sce` to >> scipy.optimize would be higher priorities than adding the particle smarm >> optimizer. Sure, every method has value, but using your benchmarks might >> be a good way to prioritize which methods to add. >> >> Cheers, and thanks again, >> >> --Matt >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > > > -- > _____________________________________ > Dr. Andrew Nelson > > > _____________________________________ > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrea.gavana at gmail.com Sat May 16 01:10:52 2020 From: andrea.gavana at gmail.com (Andrea Gavana) Date: Sat, 16 May 2020 07:10:52 +0200 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Hi Matt, On Sat, 16 May 2020 at 00.01, Matt Newville wrote: > Hi Andrea, > > On Fri, May 15, 2020 at 10:42 AM Andrea Gavana > wrote: > >> On Fri, 15 May 2020 at 17.21, Ralf Gommers >> wrote: >> >>> >>> >>> On Thu, May 14, 2020 at 3:55 AM Andrew Nelson >>> wrote: >>> >>>> As a global optimizer in the first instance it would probably be added >>>> as a separate function (`particle_swarm`), rather than be added as a method >>>> to minimize. I'm not familiar with particle swarm, are there various >>>> types/flavours of the approach? >>>> >>>> The general route to adding new global optimizers is: >>>> >>> >>> Thanks for this detailed reply Andrew. I think it's worth adding this to >>> the new section of the developer guide once >>> https://github.com/scipy/scipy/pull/12069 is merged. >>> >>> One thing to ask additionally here is: are particle swarm methods in >>> scope? It would be good to compare this proposed method to for example >>> what's currently available in PyGMO (https://esa.github.io/pygmo/). >>> >>> Cheers, >>> Ralf >>> >> >> My apologies for pitching in, I?m usually just an observer. I?m sure some >> of you remember the global optimization benchmarks I once posted - and I >> believe they have been updated, adapted and integrated in scipy: >> >> http://infinity77.net/global_optimization/multidimensional.html >> >> In the set of optimizers, a particle swarm algorithm was actually there, >> and specifically the one from: >> >> http://www.norg.uminho.pt/aivaz/pswarm/ >> >> And it turned out to be not so bad in the end. My impression is that >> there might be scope for a particle swarm algorithm in scipy: I?ve used a >> few variants of them in the past where many other optimization procedures >> failed. But then I?m just a lurker so please take my opinion with a grain >> of salt :-). >> >> Andrea. >> > > Thanks - I think your benchmarks are very informative and useful. FWIW, > we have implemented the `ampgo` solver to lmfit ( > https://lmfit.github.io/lmfit-py/fitting.html#lmfit.minimizer.Minimizer.ampgo), > mainly based on your results. > Thank you, I was actually surprised one day (a while ago) while doing a google search for AMPGO to find that it had been integrated into lmfit. I?m glad it could be helpful. I always thought it could be improved by implementing the gradient of the Tunnelling function (if the user has analytical gradient of his/her function) but my math skills were too weak to manage that... > It looks to me like the next most useful to add would be `sce`. That is, > it appears to be roughly "second best" and pretty good at being disjoint to > `ampgo`, `basinhopping`, and `diffev`. Do you have code for this `sce` > method that you could share? I'm afraid I know absolutely nothing about > this method. I must admit that it was only from your work that I learned > about `ampgo` too. > > Based on your results, it seems to me that adding `ampgo` and `sce` to > scipy.optimize would be higher priorities than adding the particle smarm > optimizer. Sure, every method has value, but using your benchmarks might > be a good way to prioritize which methods to add. > I do have the code for SCE but I?m not the original author: I was contacted about 6 years ago via private email by Matthias Cuntz and he provided me the code I tested: I can of course try and get in touch with him and see if he?s willing to share it with the community - assuming there is interest for this algorithm and that he (or someone else) is willing to bring it to the standards of SciPy code (or other libraries in the Python Scientific stack). > Cheers, and thanks again, > > --Matt > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrea.gavana at gmail.com Sat May 16 01:29:11 2020 From: andrea.gavana at gmail.com (Andrea Gavana) Date: Sat, 16 May 2020 07:29:11 +0200 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Hi Andrew, On Sat, 16 May 2020 at 01.21, Andrew Nelson wrote: > Andrea's test function collection is super nice, and is able to produce > good evidence for assessment in this area. I do have one minor disagreement > with the way the benchmarks on > http://infinity77.net/global_optimization/index.html were run, the > maximum number of function evaluations is limited to 2 000. > I will have to thank you for the immense pain you went through in painstakingly checking the benchmarks and fixing all the errors I put in the test functions myself and bringing the test suite up to scipy standards. But I?m happy they?re there now :-) . One of the problem in my field of work (and I?m pretty sure I?m many other disciplines) is that evaluating the objective function is often a very time consuming process of phenomenal complexity - hours of simulation time on heavily parallellized code running on supercomputers. So 2,000 function evaluations as a limit was actually quite generous. I do recognize though that many real life problems do not exhibit the same irregularities of the test functions - if your model resembles anything like the Griewank function or the CrossInTray function then there must be something fishy in the model itself... > In any case, it's clear that implementations matter. For example, > http://infinity77.net/global_optimization/multidimensional.html# would > indicate that differential evolution isn't very good against the Ackley > function, with zero successes. However, running the scipy implementation of > differential-evolution indicates that it's actually quite good, > https://gist.github.com/andyfaff/24c96a3d5dbc7b0272b2. The latter gist > would approximate the output from running the optimize benchmarks. > > (Note that the gist is quite old, and the `anneal` column is from the old > anneal function that was removed) > I definitely agree that implementation matters: I was actually surprised and disappointed by the original DE code, and I?m happy that the code in scipy manages to show much better results. Andrea. > > > On Sat, 16 May 2020 at 08:02, Matt Newville > wrote: > >> Hi Andrea, >> >> On Fri, May 15, 2020 at 10:42 AM Andrea Gavana >> wrote: >> >>> On Fri, 15 May 2020 at 17.21, Ralf Gommers >>> wrote: >>> >>>> >>>> >>>> On Thu, May 14, 2020 at 3:55 AM Andrew Nelson >>>> wrote: >>>> >>>>> As a global optimizer in the first instance it would probably be added >>>>> as a separate function (`particle_swarm`), rather than be added as a method >>>>> to minimize. I'm not familiar with particle swarm, are there various >>>>> types/flavours of the approach? >>>>> >>>>> The general route to adding new global optimizers is: >>>>> >>>> >>>> Thanks for this detailed reply Andrew. I think it's worth adding this >>>> to the new section of the developer guide once >>>> https://github.com/scipy/scipy/pull/12069 is merged. >>>> >>>> One thing to ask additionally here is: are particle swarm methods in >>>> scope? It would be good to compare this proposed method to for example >>>> what's currently available in PyGMO (https://esa.github.io/pygmo/). >>>> >>>> Cheers, >>>> Ralf >>>> >>> >>> My apologies for pitching in, I?m usually just an observer. I?m sure >>> some of you remember the global optimization benchmarks I once posted - and >>> I believe they have been updated, adapted and integrated in scipy: >>> >>> http://infinity77.net/global_optimization/multidimensional.html >>> >>> In the set of optimizers, a particle swarm algorithm was actually there, >>> and specifically the one from: >>> >>> http://www.norg.uminho.pt/aivaz/pswarm/ >>> >>> And it turned out to be not so bad in the end. My impression is that >>> there might be scope for a particle swarm algorithm in scipy: I?ve used a >>> few variants of them in the past where many other optimization procedures >>> failed. But then I?m just a lurker so please take my opinion with a grain >>> of salt :-). >>> >>> Andrea. >>> >> >> Thanks - I think your benchmarks are very informative and useful. FWIW, >> we have implemented the `ampgo` solver to lmfit ( >> https://lmfit.github.io/lmfit-py/fitting.html#lmfit.minimizer.Minimizer.ampgo), >> mainly based on your results. >> >> It looks to me like the next most useful to add would be `sce`. That >> is, it appears to be roughly "second best" and pretty good at being >> disjoint to `ampgo`, `basinhopping`, and `diffev`. Do you have code for >> this `sce` method that you could share? I'm afraid I know absolutely >> nothing about this method. I must admit that it was only from your work >> that I learned about `ampgo` too. >> >> Based on your results, it seems to me that adding `ampgo` and `sce` to >> scipy.optimize would be higher priorities than adding the particle smarm >> optimizer. Sure, every method has value, but using your benchmarks might >> be a good way to prioritize which methods to add. >> >> Cheers, and thanks again, >> >> --Matt >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > > > -- > _____________________________________ > Dr. Andrew Nelson > > > _____________________________________ > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tirthasheshpatel at gmail.com Sat May 16 22:18:56 2020 From: tirthasheshpatel at gmail.com (Tirth Patel) Date: Sun, 17 May 2020 07:48:56 +0530 Subject: [SciPy-Dev] Adding Normal-Inverse Wishart Distribution in scipy.stats module Message-ID: Hello everyone. I was trying to implement the NIW (Normal-Inverse Wishart) distribution in scipy.stats module and was wondering if it would make a nice addition. A special case of this multivariate distribution which is Normal-Inverse Gamma distribution has been proposed but stalled for a long time (#6739 ). It is often used as a prior in Multivariate Bayesian Linear Regression and is just a product of Multivariate Normal Distribution and Inverse Wishart distribution. Please find more about the distribution on the Wikipedia page here . It should not be ?difficult? to implement it with the existing codebase but the challenge is how to return the samples from rvs method and what arguments to pass to the pdf method. There are two ways to approach this: 1. Pass a single quantile with shape k x 1 (mu) and k x k (cov) stacked horizontally respectively to form an array of shape k x (k+1) to the pdf method. Use the same protocol to generate random variates. If multiple quantiles are passed to the pdf, we use the last two dimensions to infer the dimensionality. - Pros: Consistent with the API. - Cons: Not a great user experience as he/she has to stack the arrays and separate them manually before and after passing to pdf and rvs methods respectively. 2. Pass two quantiles with shape k x 1 (mu) and k x k (cov) to the pdf method. Generate tuples of arrays of shape size x k x 1 and size x k x k containing the mu and cov quantiles respectively. Also, if the user wants to pass multiple quantiles to the pdf method, he/she should pass it with shape size x k x 1 and size x k x k. - Pros: User doesn?t have to stack the arrays manually before passing to pdf method and separate them after passing to the rvs method. - Cons: Not fully consistent with the API (though I doubt this is the case?). Maybe slower methods like cdf and logcdf can be cythonized though I haven?t put much thought to it. Approximation methods for special cases exist and can be found in this paper . Kind Regards, Tirth Patel -------------- next part -------------- An HTML attachment was scrubbed... URL: From newville at cars.uchicago.edu Sat May 16 23:36:08 2020 From: newville at cars.uchicago.edu (Matt Newville) Date: Sat, 16 May 2020 22:36:08 -0500 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm In-Reply-To: References: Message-ID: Hi Andrew, Andrea, On Fri, May 15, 2020 at 6:22 PM Andrew Nelson wrote: > Andrea's test function collection is super nice, and is able to produce > good evidence for assessment in this area. I do have one minor disagreement > with the way the benchmarks on > http://infinity77.net/global_optimization/index.html were run, the > maximum number of function evaluations is limited to 2 000. > > In any case, it's clear that implementations matter. For example, > http://infinity77.net/global_optimization/multidimensional.html# would > indicate that differential evolution isn't very good against the Ackley > function, with zero successes. However, running the scipy implementation of > differential-evolution indicates that it's actually quite good, > https://gist.github.com/andyfaff/24c96a3d5dbc7b0272b2. The latter gist > would approximate the output from running the optimize benchmarks. > > I think that number of function evaluations does matter though, as that is effectively runtime. In your results (apparently a different implementation of `differential_evolution` then Andrea used), `differential_evolution` still took nearly 4000 function evaluations for the Ackley function. In Andrea's table, 4 of the other methods solved that function more than 80% of the time in under 2000 function evaluations. Ampgo was admittedly marginal for that particular function but got it ~40% of the time in under 2000 evaluations. Naively, you could run that twice and get it to ~64% success rate for 4000 function evaluations. Anyway, using the results of such benchmarks in a consistent manner would be a good way to decide which algorithms are the next ones to add. That seems to suggest that ampgo would be a higher priority than particle swarm. As it turns out, Andrew was involved in getting the `ampgo` code ready for lmfit (see https://github.com/lmfit/ampgo), though Renee Otten did most of the work actually getting it to work with lmfit Parameters, and so on. Still, that code from Andrea and Andrew is MIT licensed and could be put into scipy. Cheers, --Matt Newville -------------- next part -------------- An HTML attachment was scrubbed... URL: From jrme.jansen at gmail.com Sun May 17 07:41:20 2020 From: jrme.jansen at gmail.com (=?UTF-8?B?SmFuc2VuIErDqXLDtG1l?=) Date: Sun, 17 May 2020 13:41:20 +0200 Subject: [SciPy-Dev] Delay Differential Equation (DDE) solver Message-ID: My dear SciPy community, In my PhD, I work on biomechanical problematics which are (sometime) modeled with delay differential equations. Being an avid user of python and SciPy, I looked for DDEs solver but ... I was surprised not to find it in SciPy. On the contrary, I discovered lots of more or less old and very different projects about DDEs in Python (JiTCDDE, ddeint, pydelay, diffeqpy). While in other programming languages, robust code exist (matlab: dde23, julia: DelayDiffEq.jl, fortran: DKLAG6 ...). So I decided to start implementing a solver using the architecture of scipy.integrate.solve_ivp. The fork us here : https://github.com/jrmejansen/scipy/tree/ddeSolver I added the folder "*scipy/integrate/_dde*" and modified files from "scipy/integrate/_ivp" to resolve DDEs. You would find also some benchmarks but not yet unit tests. At this time, the solver, *solve_dde*, handles DDEs with constant delays for none stiff equations. Does my code interest the SciPy community ? If it does, I can add extensive unit tests and also docstring. I am open to any discussion and do not hesitate to give me feedbacks. Best regards, J?r?me JANSEN. -------------- next part -------------- An HTML attachment was scrubbed... URL: From charlesr.harris at gmail.com Mon May 18 16:10:39 2020 From: charlesr.harris at gmail.com (Charles R Harris) Date: Mon, 18 May 2020 14:10:39 -0600 Subject: [SciPy-Dev] NumPy 1.19. 0rc1 Release Message-ID: Hi All, On behalf of the NumPy team I am pleased to announce that NumPy 1.19.0rc1 has been released. This NumPy release is marked by the removal of much technical debt: support for Python 2 has been removed, many deprecations have been expired, and documentation has been improved. The polishing of the random module continues apace with bug fixes and better usability from Cython. Perhaps the most interesting thing for users will be the availability of wheels for aarch64 and PyPY. Downstream developers should use Cython >= 0.29.16 for Python 3.8 support and OpenBLAS >= 3.7 to avoid wrong results on the Skylake architecture. The NumPy Wheels for this release can be downloaded from PyPI , source archives and release notes are available from Github . *Contributors* A total of 118 people contributed to this release. People with a "+" by their names contributed a patch for the first time. - Alex Henrie - Alexandre de Siqueira + - Andras Deak - Andrea Sangalli + - Andreas Kl?ckner + - Andrei Shirobokov + - Anirudh Subramanian + - Anne Bonner - Anton Ritter-Gogerly + - Benjamin Trendelkamp-Schroer + - Bharat Raghunathan - Brandt Bucher + - Brian Wignall - Bui Duc Minh + - Changqing Li + - Charles Harris - Chris Barker - Chris Holland + - Christian Kastner + - Chunlin + - Chunlin Fang + - Damien Caliste + - Dan Allan - Daniel Hrisca - Daniel Povey + - Dustan Levenstein + - Emmanuelle Gouillart + - Eric Mariasis + - Eric Wieser - Erik Welch + - Fabio Zeiser + - Gabriel Gerlero + - Ganesh Kathiresan + - Gengxin Xie + - Guilherme Leobas - Guillaume Peillex + - Hameer Abbasi - Hao Jin + - Harshal Prakash Patankar + - Heshy Roskes + - Himanshu Garg + - Huon Wilson + - John Han + - John Kirkham - Jon Dufresne - Jon Morris + - Josh Wilson - Justus Magin - Kai Striega - Kerem Halla? + - Kevin Sheppard - Kirill Zinovjev + - Marcin Podhajski + - Mark Harfouche - Marten van Kerkwijk - Martin Michlmayr + - Masashi Kishimoto + - Mathieu Lamarre - Matt Hancock + - MatteoRaso + - Matthew Harrigan - Matti Picus - Max Balandat + - Maximilian Konrad + - Maxwell Aladago - Maxwell Bileschi + - Melissa Weber Mendon?a + - Michael Felt - Mike Taves - Nico Schl?mer - Pan Jan + - Paul Rougieux + - Pauli Virtanen - Peter Andreas Entschev - Petre-Flaviu Gostin + - Pierre de Buyl - Piotr Gai?ski + - Przemyslaw Bartosik + - Raghuveer Devulapalli - Rakesh Vasudevan + - Ralf Gommers - RenaRuirui + - Roman Yurchak - Ross Barnowski + - Ryan + - Ryan Soklaski - Sanjeev Kumar + - SanthoshBala18 + - Sayed Adel + - Sebastian Berg - Seth Troisi - Sha Liu + - Siba Smarak Panigrahi + - Simon Gasse + - Stephan Hoyer - Till Hoffmann + - Tim Hoffmann - Tina Oberoi + - Tirth Patel - Tyler Reddy - Warren Weckesser - Xavier Thomas + - Yilin LI + - Zac Hatfield-Dodds + - Z? Vin?cius + - @Adam + - @Anthony + - @Jim + - @bartosz-grabowski + - @dojafrat + - @gamboon + - @jfbu + - @keremh + - @mayeut + - @ndunnewind + - @nglinh + - @shreepads + - @sslivkoff + Cheers, Charles Harris -------------- next part -------------- An HTML attachment was scrubbed... URL: From mc at macu.de Tue May 19 08:47:35 2020 From: mc at macu.de (Matthias Cuntz) Date: Tue, 19 May 2020 14:47:35 +0200 Subject: [SciPy-Dev] Extending scipy.optimize.minimize with particle swarm Message-ID: Dear all, Andrea convinced to join the mailing list and send the code for the Shuffle Complex Evolution (SCE) algorithm. The code can be found here: https://github.com/mcuntz/jams_python/blob/master/jams/sce.py This code is based on a Fortran program of Qingyun Duan (2004), ported to Python by Stijn Van Hoey (2011, https://github.com/stijnvanhoey/Optimization_SCE). I took it up, debugged and enhanced it, and are maintaining it since 2013. It followed pretty much the development Juliane Mai and I have done on the Fortran version (https://github.com/mcuntz/jams_fortran/blob/master/mo_sce.f90). Documentation is in numpydoc format. But I have no experience about scipy standards. The code has, for example, the possibility to restart an optimisation, which is very suitable for expensive model evaluations (several hours in our examples). So the code writes out the restart information by default (can be switched off), which might be a side-effect unappreciated by scipy. Kind regards Matthias >> Hi Matt, > > On Sat, 16 May 2020 at 00.01, Matt Newville > wrote: > >> Hi Andrea, >> >> On Fri, May 15, 2020 at 10:42 AM Andrea Gavana >> wrote: >> >>> On Fri, 15 May 2020 at 17.21, Ralf Gommers >>> wrote: >>> >>>> >>>> >>>> On Thu, May 14, 2020 at 3:55 AM Andrew Nelson >>>> wrote: >>>> >>>>> As a global optimizer in the first instance it would probably be added >>>>> as a separate function (`particle_swarm`), rather than be added as a method >>>>> to minimize. I'm not familiar with particle swarm, are there various >>>>> types/flavours of the approach? >>>>> >>>>> The general route to adding new global optimizers is: >>>>> >>>> >>>> Thanks for this detailed reply Andrew. I think it's worth adding this to >>>> the new section of the developer guide once >>>> https://github.com/scipy/scipy/pull/12069 is merged. >>>> >>>> One thing to ask additionally here is: are particle swarm methods in >>>> scope? It would be good to compare this proposed method to for example >>>> what's currently available in PyGMO (https://esa.github.io/pygmo/). >>>> >>>> Cheers, >>>> Ralf >>>> >>> >>> My apologies for pitching in, I?m usually just an observer. I?m sure some >>> of you remember the global optimization benchmarks I once posted - and I >>> believe they have been updated, adapted and integrated in scipy: >>> >>> http://infinity77.net/global_optimization/multidimensional.html >>> >>> In the set of optimizers, a particle swarm algorithm was actually there, >>> and specifically the one from: >>> >>> http://www.norg.uminho.pt/aivaz/pswarm/ >>> >>> And it turned out to be not so bad in the end. My impression is that >>> there might be scope for a particle swarm algorithm in scipy: I?ve used a >>> few variants of them in the past where many other optimization procedures >>> failed. But then I?m just a lurker so please take my opinion with a grain >>> of salt :-). >>> >>> Andrea. >>> >> >> Thanks - I think your benchmarks are very informative and useful. FWIW, >> we have implemented the `ampgo` solver to lmfit ( >> https://lmfit.github.io/lmfit-py/fitting.html#lmfit.minimizer.Minimizer.ampgo), >> mainly based on your results. >> > >Thank you, I was actually surprised one day (a while ago) while doing a >google search for AMPGO to find that it had been integrated into lmfit. I?m >glad it could be helpful. I always thought it could be improved by >implementing the gradient of the Tunnelling function (if the user has >analytical gradient of his/her function) but my math skills were too weak >to manage that... > > >> It looks to me like the next most useful to add would be `sce`. That is, >> it appears to be roughly "second best" and pretty good at being disjoint to >> `ampgo`, `basinhopping`, and `diffev`. Do you have code for this `sce` >> method that you could share? I'm afraid I know absolutely nothing about >> this method. I must admit that it was only from your work that I learned >> about `ampgo` too. >> >> Based on your results, it seems to me that adding `ampgo` and `sce` to >> scipy.optimize would be higher priorities than adding the particle smarm >> optimizer. Sure, every method has value, but using your benchmarks might >> be a good way to prioritize which methods to add. >> > >I do have the code for SCE but I?m not the original author: I was contacted >about 6 years ago via private email by Matthias Cuntz and he provided me >the code I tested: I can of course try and get in touch with him and see if >he?s willing to share it with the community - assuming there is interest >for this algorithm and that he (or someone else) is willing to bring it to >the standards of SciPy code (or other libraries in the Python Scientific >stack). > > >> Cheers, and thanks again, >> >> --Matt >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev From ralf.gommers at gmail.com Wed May 20 17:02:20 2020 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Wed, 20 May 2020 23:02:20 +0200 Subject: [SciPy-Dev] Delay Differential Equation (DDE) solver In-Reply-To: References: Message-ID: On Sun, May 17, 2020 at 1:41 PM Jansen J?r?me wrote: > My dear SciPy community, > > In my PhD, I work on biomechanical problematics which are (sometime) > modeled with delay differential equations. > Being an avid user of python and SciPy, I looked for DDEs solver but ... I > was surprised not to find it in SciPy. On the contrary, I discovered lots > of more or less old and very different projects about DDEs in Python > (JiTCDDE, ddeint, pydelay, diffeqpy). While in other programming languages, > robust code exist (matlab: dde23, julia: DelayDiffEq.jl, fortran: DKLAG6 > ...). > So I decided to start implementing a solver using the architecture of > scipy.integrate.solve_ivp. > > The fork us here : > https://github.com/jrmejansen/scipy/tree/ddeSolver > > I added the folder "*scipy/integrate/_dde*" and modified files from > "scipy/integrate/_ivp" to resolve DDEs. You would find also some benchmarks > but not yet unit tests. > > At this time, the solver, *solve_dde*, handles DDEs with constant delays > for none stiff equations. > > Does my code interest the SciPy community ? > If it does, I can add extensive unit tests and also docstring. > Hi J?r?me, thanks for proposing this. Having a good DDE solver would be quite nice. I've certainly missed it in the past. The difficulty here is that it is fairly niche, and we'd need to find someone to review the PR. scipy.integrate is already struggling a bit with lack of maintainers. Also, we need to think about future maintenance - if you would be willing to continue to maintain it, that would certainly help. We did have a feature request open for a long time, but there wasn't too much interest it looked like: https://github.com/scipy/scipy/issues/818 So first question would be, is there someone else - either a SciPy maintainer or a domain expert - who is interested in helping to get this merged? Best, Ralf > I am open to any discussion and do not hesitate to give me feedbacks. > Best regards, > J?r?me JANSEN. > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Thu May 21 19:43:45 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Thu, 21 May 2020 17:43:45 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: Any objections to bumping our minimum Cython version from 0.29.14 to 0.29.18 to support: https://github.com/scipy/scipy/pull/11385 ? We do typically bump Cython versions regularly, though just a few days before branching might be asking for trouble? Best wishes, Tyler On Fri, 8 May 2020 at 01:30, Ralf Gommers wrote: > > > On Wed, May 6, 2020 at 4:49 AM Tyler Reddy > wrote: > >> Hi, >> >> SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think we'd >> like to keep a roughly biannual release cadence. >> >> I'd like to propose the following schedule for 1.5.0: >> - May 26/2020: branch 1.5.x >> - May 29/2020: rc1 >> - June 11/2020: rc2 (if needed) >> - June 20/2020: final release >> > > Sounds good to me. > > >> Complicating factors this time around may include attempts at providing >> ARM/ppc64le wheels and the continued migration from rackspace -> >> anaconda.org for asset hosting in both the main and wheels repos. >> > > Looks like the anaconda.org migration is going well, thanks to Tyler and > everyone else who is pitching in. Having arm64/ppc64le wheels would be > great, we're pretty far along. Not a blocker though - they could be > uploaded later. Having CI for both platforms in place now is a good place > to start from. > > >> As always, it is a good idea to start tagging things that should be in >> 1.5.0 & please do help with reviewing PRs/issues that are tagged--current >> counts are: >> >> - 23 open issues with 1.5.0 milestone >> - 38 open PRs with 1.5.0 milestone >> > > I bumped a few milestones and merged some PRs, it's down to 53 total. > There's a bunch of PRs that we really need to review, but not any really > problematic issues it looks like. > > >> While helping with that, also great if the release notes wiki is updated >> for appropriate changes: >> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >> >> Curating those final notes can be painful if the wiki isn't updated. >> >> Thoughts/objections for the schedule? >> > > Thanks for leading the charge again Tyler. > > Cheers, > Ralf > > > >> Best wishes, >> Tyler >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From larson.eric.d at gmail.com Thu May 21 20:02:01 2020 From: larson.eric.d at gmail.com (Eric Larson) Date: Thu, 21 May 2020 20:02:01 -0400 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: +1 for bumping it before 1.5.0 branching. It is indeed a risk, but it's a minor version change so hopefully just makes things work better. Eric On Thu, May 21, 2020 at 7:44 PM Tyler Reddy wrote: > Any objections to bumping our minimum Cython version from 0.29.14 to > 0.29.18 to support: https://github.com/scipy/scipy/pull/11385 ? > > We do typically bump Cython versions regularly, though just a few days > before branching might be asking for trouble? > > Best wishes, > Tyler > > On Fri, 8 May 2020 at 01:30, Ralf Gommers wrote: > >> >> >> On Wed, May 6, 2020 at 4:49 AM Tyler Reddy >> wrote: >> >>> Hi, >>> >>> SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think we'd >>> like to keep a roughly biannual release cadence. >>> >>> I'd like to propose the following schedule for 1.5.0: >>> - May 26/2020: branch 1.5.x >>> - May 29/2020: rc1 >>> - June 11/2020: rc2 (if needed) >>> - June 20/2020: final release >>> >> >> Sounds good to me. >> >> >>> Complicating factors this time around may include attempts at providing >>> ARM/ppc64le wheels and the continued migration from rackspace -> >>> anaconda.org for asset hosting in both the main and wheels repos. >>> >> >> Looks like the anaconda.org migration is going well, thanks to Tyler and >> everyone else who is pitching in. Having arm64/ppc64le wheels would be >> great, we're pretty far along. Not a blocker though - they could be >> uploaded later. Having CI for both platforms in place now is a good place >> to start from. >> >> >>> As always, it is a good idea to start tagging things that should be in >>> 1.5.0 & please do help with reviewing PRs/issues that are tagged--current >>> counts are: >>> >>> - 23 open issues with 1.5.0 milestone >>> - 38 open PRs with 1.5.0 milestone >>> >> >> I bumped a few milestones and merged some PRs, it's down to 53 total. >> There's a bunch of PRs that we really need to review, but not any really >> problematic issues it looks like. >> >> >>> While helping with that, also great if the release notes wiki is updated >>> for appropriate changes: >>> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >>> >>> >>> Curating those final notes can be painful if the wiki isn't updated. >>> >>> Thoughts/objections for the schedule? >>> >> >> Thanks for leading the charge again Tyler. >> >> Cheers, >> Ralf >> >> >> >>> Best wishes, >>> Tyler >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ralf.gommers at gmail.com Fri May 22 05:46:47 2020 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Fri, 22 May 2020 11:46:47 +0200 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: On Fri, May 22, 2020 at 2:02 AM Eric Larson wrote: > +1 for bumping it before 1.5.0 branching. It is indeed a risk, but it's a > minor version change so hopefully just makes things work better. > +1 from me too, that should always be fine if CI is green, Ralf > Eric > > > On Thu, May 21, 2020 at 7:44 PM Tyler Reddy > wrote: > >> Any objections to bumping our minimum Cython version from 0.29.14 to >> 0.29.18 to support: https://github.com/scipy/scipy/pull/11385 ? >> >> We do typically bump Cython versions regularly, though just a few days >> before branching might be asking for trouble? >> >> Best wishes, >> Tyler >> >> On Fri, 8 May 2020 at 01:30, Ralf Gommers wrote: >> >>> >>> >>> On Wed, May 6, 2020 at 4:49 AM Tyler Reddy >>> wrote: >>> >>>> Hi, >>>> >>>> SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think we'd >>>> like to keep a roughly biannual release cadence. >>>> >>>> I'd like to propose the following schedule for 1.5.0: >>>> - May 26/2020: branch 1.5.x >>>> - May 29/2020: rc1 >>>> - June 11/2020: rc2 (if needed) >>>> - June 20/2020: final release >>>> >>> >>> Sounds good to me. >>> >>> >>>> Complicating factors this time around may include attempts at providing >>>> ARM/ppc64le wheels and the continued migration from rackspace -> >>>> anaconda.org for asset hosting in both the main and wheels repos. >>>> >>> >>> Looks like the anaconda.org migration is going well, thanks to Tyler >>> and everyone else who is pitching in. Having arm64/ppc64le wheels would be >>> great, we're pretty far along. Not a blocker though - they could be >>> uploaded later. Having CI for both platforms in place now is a good place >>> to start from. >>> >>> >>>> As always, it is a good idea to start tagging things that should be in >>>> 1.5.0 & please do help with reviewing PRs/issues that are tagged--current >>>> counts are: >>>> >>>> - 23 open issues with 1.5.0 milestone >>>> - 38 open PRs with 1.5.0 milestone >>>> >>> >>> I bumped a few milestones and merged some PRs, it's down to 53 total. >>> There's a bunch of PRs that we really need to review, but not any really >>> problematic issues it looks like. >>> >>> >>>> While helping with that, also great if the release notes wiki is >>>> updated for appropriate changes: >>>> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >>>> >>>> >>>> Curating those final notes can be painful if the wiki isn't updated. >>>> >>>> Thoughts/objections for the schedule? >>>> >>> >>> Thanks for leading the charge again Tyler. >>> >>> Cheers, >>> Ralf >>> >>> >>> >>>> Best wishes, >>>> Tyler >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From shashaank.n at columbia.edu Sat May 23 09:38:58 2020 From: shashaank.n at columbia.edu (Shashaank N) Date: Sat, 23 May 2020 09:38:58 -0400 Subject: [SciPy-Dev] PR #12200: FIR and IIR Gammatone Filters in scipy.signal In-Reply-To: References: Message-ID: Hi, I finished implementing the FIR and IIR gammatone filters in the scipy.signal module, and I've submitted a pull request ( https://github.com/scipy/scipy/pull/12200). Thanks, Shashaank On Sat, Mar 7, 2020 at 2:37 AM Ralf Gommers wrote: > > > On Fri, Mar 6, 2020 at 9:36 PM Shashaank N > wrote: > >> I've been looking into the new code contribution process on the SciPy >> website. If someone gives me the green light and is willing to review my >> code, I can begin creating the development environment on my machine and >> creating unit tests/benchmarks for the new functions. I hope that these >> gammatone filters can be included in SciPy, because they have a wide range >> of applications from neural auditory science to signal processing, and >> there is currently no efficient implementation for Python so far. >> > > Hi Shashaank, Eric and Todd are both interested and no one has brought up > a concern, so let's call it good - please go for it! > > Cheers, > Ralf > > >> - Shashaank >> >> On Thu, Mar 5, 2020 at 3:13 PM Eric Larson >> wrote: >> >>> Seems like a reasonable addition to me. At first I thought it might be a >>> little bit specialized (despite having worked with them a little bit >>> myself). However, there are a reasonable number of Google hits in a search, >>> and it appears to be a part of the MATLAB "audio" toolbox, suggesting it >>> probably does have sufficiently wide-ranging uses to warrant inclusion in >>> SciPy. >>> >>> My 2c, >>> Eric >>> >>> >>> On Fri, Feb 28, 2020 at 10:12 AM Todd wrote: >>> >>>> I would be extremely interested in having gammatone filters >>>> implemented. I have been wanting it for a long time, but haven't gotten >>>> around to doing it myself yet. But I don't speak for the scipy core >>>> developers, they would need to weigh in on this. >>>> >>>> On Thu, Feb 27, 2020 at 11:16 AM Shashaank N >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> Newbie here. I just wanted to follow up on the Gammatone filters for >>>>> signal processing contribution idea that I posted recently. I would also be >>>>> interested in contributing to SciPy by doing maintenance/bug fixes for the >>>>> scipy.signal module. >>>>> >>>>> >>>>> Thanks, >>>>> Shashaank >>>>> >>>>> On Thu, Jan 30, 2020 at 5:38 PM Shashaank N >>>>> wrote: >>>>> >>>>>> Hello SciPy Team, >>>>>> >>>>>> I am new to this mailing list, and I am interested in contributing to >>>>>> SciPy. I would like to suggest a new feature to be added to the >>>>>> scipy.signal module: gammatone filters. Gammatone filters are becoming >>>>>> increasingly popular in the fields of digital signal processing and music >>>>>> analysis as it effectively models the auditory filters of the human >>>>>> auditory system. Currently, there are very few implementations of gammatone >>>>>> filters available for Python, and these implementations are not generalized >>>>>> to basic finite impulse response (FIR) and infinite impulse response (IIR) >>>>>> filters like SciPy has. >>>>>> >>>>>> I have written my own gammatone FIR filter using NumPy based on >>>>>> Malcolm Slaney's 1993 paper on the topic ( >>>>>> https://engineering.purdue.edu/~malcolm/apple/tr35/PattersonsEar.pdf). >>>>>> This paper was used for Matlab's implementation of gammatone filters. I am >>>>>> in the process of writing a gammatone IIR filter with NumPy and SciPy. >>>>>> Please let me know if this feature will fit with the scipy.signal module. >>>>>> Appreciate your time and guidance. >>>>>> >>>>>> >>>>>> Thanks, >>>>>> Shashaank >>>>>> >>>>> _______________________________________________ >>>>> SciPy-Dev mailing list >>>>> SciPy-Dev at python.org >>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>> >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Sat May 23 21:44:55 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 23 May 2020 21:44:55 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: <9E38EF67-ADEA-4785-B9CB-DCA524BE6632@vt.edu> References: <9E38EF67-ADEA-4785-B9CB-DCA524BE6632@vt.edu> Message-ID: On 5/11/20, rlucas7 at vt.edu wrote: > One thing that?s come up is whether the rv_discrete should have a fit > method? > > I think I?d called this out awhile back, seems other?s noticed too: > > https://github.com/scipy/scipy/issues/11948#issuecomment-620308082 > > I mentioned to submit the question here but I didn?t see, maybe I missed. > > That is the largest difference in terms of api between discrete and > continuous distributions to my knowledge in SciPy. > > It sounds like these are different. One talks about subclassing, E.g using > existing framework. What I understood Warren was referring to was feature > development of the infrastructure itself. > > Maybe I misunderstood? Lucas, Just getting back to this email thread--sorry for letting it hang for a while... Adding a fit method for the discrete distributions would be a great enhancement. But what I'm talking about here is documenting the existing infrastructure and conventions that we currently use. How does the enhancement request for a fit method for discrete distribution connect to what I am proposing here? Once the enhancement has been added, we ensure that the procedure for implementing the method in a new subclass is thoroughly documented. That is, what method do I have to override, and what is the API that my method must satisfy. Warren > > Sincerely, > > -Lucas Roberts > >>> On May 11, 2020, at 3:49 PM, Warren Weckesser >>> wrote: >>> >>> ?On 5/11/20, Paul van Mulbregt wrote: >>> Hi Warren, >>> You mentioned "Creating probability distributions in stats: a guide to >>> subclassing rv_continuous and rv_discrete." >>> There is already some existing doc on adding distributions >>> https://docs.scipy.org/doc/scipy/reference/dev/contributor/adding_new.html#adding-new >>> (reachable from >>> https://docs.scipy.org/doc/scipy/reference/dev/contributor/contributor_toc.html.) >>> How would the two relate to each other? >> >> >> Heh, maybe try to make that doc easier to find? >> >> Then add more specific details about the required API that must be >> implemented. Two items that come to mind: explain the required >> signature of `_rvs()`, and what values will be passed to it from >> `rvs()`; and explain the requirements for implementing broadcasting in >> the overridden functions. We can add documentation for other "pain >> points" as we encounter (or remember) them. >> >> Warren >> >> >> >> >> >>> -Paul >>>> On May 9, 2020, at 10:04 AM, Warren Weckesser >>>> >>>> wrote: >>>> On 5/9/20, Ralf Gommers >>> > wrote: >>>>> On Sat, May 9, 2020 at 5:43 AM Warren Weckesser >>>>> >>>>> wrote: >>>>>> Hey all, >>>>>> I just created a pull request in which I started a new subsection of >>>>>> the developer documentation called the "SciPy API Development Guide". >>>>>> As I write this, the CircleCI artifact containing the new page is >>>>>> https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html >>>>> That looks like a good idea to me, thanks Warren. So far this lived at >>>>> the >>>>> bottom of the core developer guide: >>>>> http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. >>>>> Could you move the scipy.special docs there over to this new API >>>>> Development Guide? >>>> Good idea. I just added a commit to make that change in the pull >>>> request. >>>>> The first item to be included in this section is a design >>>>>> specification for the `nan_policy` argument that is used in many >>>>>> functions in `scipy.stats`. We'll be adding `nan_policy` to more >>>>>> functions, so I think it will be helpful to have an explicit design >>>>>> spec in the docs that we all agree on. >>>>> +1 that would be super helpful. >>>>>> Two more topics to be added to the guidelines soon: >>>>>> * Creating probability distributions in stats: a guide to subclassing >>>>>> rv_continuous and rv_discrete. >>>>>> * Modifying return values to allow objects with attributes while >>>>>> maintaining backward compatibility with existing return values that >>>>>> are tuples or NamedTuples. >>>>> Both of these also sound very useful. For namedtuples, you probably >>>>> should >>>>> also include or at least reference the Bunch design pattern (we have >>>>> it >>>>> in >>>>> `integrate` and `signal`, there's still an open issue for `stats`). >>>> Yes, that's what I had in mind. >>>> Warren >>>>> Cheers, >>>>> Ralf >>>>>> I'm currently focused on `stats`, but this section is meant for any >>>>>> API guidelines or conventions that we use but that are currently only >>>>>> stored in our heads, in old mailing list or github threads, or in a >>>>>> few implementations here and there in the code. >>>>>> Take a look and let me know what you think. >>>>>> Warren >>>>>> _______________________________________________ >>>>>> SciPy-Dev mailing list >>>>>> SciPy-Dev at python.org >>>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev > From rlucas7 at vt.edu Sun May 24 23:55:58 2020 From: rlucas7 at vt.edu (rlucas7 at vt.edu) Date: Sun, 24 May 2020 23:55:58 -0400 Subject: [SciPy-Dev] New documentation section: "SciPy API Development Guide" In-Reply-To: References: Message-ID: <27A22871-BC5D-4DA7-9F33-88FBE81E7AC8@vt.edu> > How > does the enhancement request for a fit method for discrete > distribution connect to what I am proposing here? I was just using that as an example to ask the question if the docs your writing are for existing infrastructure or for extending the existing infrastructure. Your response clarifies is intended for existing Infrastructure (and conventions), thanks for clarifying. > On May 23, 2020, at 9:45 PM, Warren Weckesser wrote: > > ?On 5/11/20, rlucas7 at vt.edu wrote: >> One thing that?s come up is whether the rv_discrete should have a fit >> method? >> >> I think I?d called this out awhile back, seems other?s noticed too: >> >> https://github.com/scipy/scipy/issues/11948#issuecomment-620308082 >> >> I mentioned to submit the question here but I didn?t see, maybe I missed. >> >> That is the largest difference in terms of api between discrete and >> continuous distributions to my knowledge in SciPy. >> >> It sounds like these are different. One talks about subclassing, E.g using >> existing framework. What I understood Warren was referring to was feature >> development of the infrastructure itself. >> >> Maybe I misunderstood? > > > Lucas, > > Just getting back to this email thread--sorry for letting it hang for a while... > > Adding a fit method for the discrete distributions would be a great > enhancement. But what I'm talking about here is documenting the > existing infrastructure and conventions that we currently use. How > does the enhancement request for a fit method for discrete > distribution connect to what I am proposing here? Once the > enhancement has been added, we ensure that the procedure for > implementing the method in a new subclass is thoroughly documented. > That is, what method do I have to override, and what is the API that > my method must satisfy. > > Warren > > >> >> Sincerely, >> >> -Lucas Roberts >> >>>> On May 11, 2020, at 3:49 PM, Warren Weckesser >>>> wrote: >>>> >>>> ?On 5/11/20, Paul van Mulbregt wrote: >>>> Hi Warren, >>>> You mentioned "Creating probability distributions in stats: a guide to >>>> subclassing rv_continuous and rv_discrete." >>>> There is already some existing doc on adding distributions >>>> https://docs.scipy.org/doc/scipy/reference/dev/contributor/adding_new.html#adding-new >>>> (reachable from >>>> https://docs.scipy.org/doc/scipy/reference/dev/contributor/contributor_toc.html.) >>>> How would the two relate to each other? >>> >>> >>> Heh, maybe try to make that doc easier to find? >>> >>> Then add more specific details about the required API that must be >>> implemented. Two items that come to mind: explain the required >>> signature of `_rvs()`, and what values will be passed to it from >>> `rvs()`; and explain the requirements for implementing broadcasting in >>> the overridden functions. We can add documentation for other "pain >>> points" as we encounter (or remember) them. >>> >>> Warren >>> >>> >>> >>> >>> >>>> -Paul >>>>> On May 9, 2020, at 10:04 AM, Warren Weckesser >>>>> >>>>> wrote: >>>>> On 5/9/20, Ralf Gommers >>>> > wrote: >>>>>> On Sat, May 9, 2020 at 5:43 AM Warren Weckesser >>>>>> >>>>>> wrote: >>>>>>> Hey all, >>>>>>> I just created a pull request in which I started a new subsection of >>>>>>> the developer documentation called the "SciPy API Development Guide". >>>>>>> As I write this, the CircleCI artifact containing the new page is >>>>>>> https://19020-1460385-gh.circle-artifacts.com/0/html-scipyorg/dev/api-dev/api-dev-toc.html >>>>>> That looks like a good idea to me, thanks Warren. So far this lived at >>>>>> the >>>>>> bottom of the core developer guide: >>>>>> http://scipy.github.io/devdocs/dev/core-dev/index.html#module-specific-instructions. >>>>>> Could you move the scipy.special docs there over to this new API >>>>>> Development Guide? >>>>> Good idea. I just added a commit to make that change in the pull >>>>> request. >>>>>> The first item to be included in this section is a design >>>>>>> specification for the `nan_policy` argument that is used in many >>>>>>> functions in `scipy.stats`. We'll be adding `nan_policy` to more >>>>>>> functions, so I think it will be helpful to have an explicit design >>>>>>> spec in the docs that we all agree on. >>>>>> +1 that would be super helpful. >>>>>>> Two more topics to be added to the guidelines soon: >>>>>>> * Creating probability distributions in stats: a guide to subclassing >>>>>>> rv_continuous and rv_discrete. >>>>>>> * Modifying return values to allow objects with attributes while >>>>>>> maintaining backward compatibility with existing return values that >>>>>>> are tuples or NamedTuples. >>>>>> Both of these also sound very useful. For namedtuples, you probably >>>>>> should >>>>>> also include or at least reference the Bunch design pattern (we have >>>>>> it >>>>>> in >>>>>> `integrate` and `signal`, there's still an open issue for `stats`). >>>>> Yes, that's what I had in mind. >>>>> Warren >>>>>> Cheers, >>>>>> Ralf >>>>>>> I'm currently focused on `stats`, but this section is meant for any >>>>>>> API guidelines or conventions that we use but that are currently only >>>>>>> stored in our heads, in old mailing list or github threads, or in a >>>>>>> few implementations here and there in the code. >>>>>>> Take a look and let me know what you think. >>>>>>> Warren >>>>>>> _______________________________________________ >>>>>>> SciPy-Dev mailing list >>>>>>> SciPy-Dev at python.org >>>>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>> _______________________________________________ >>>>> SciPy-Dev mailing list >>>>> SciPy-Dev at python.org >>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev From tyler.je.reddy at gmail.com Mon May 25 17:25:50 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Mon, 25 May 2020 15:25:50 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: Early draft 1.5.0 release notes PR is open: https://github.com/scipy/scipy/pull/12221 Please do help improve/fix issues there. Best wishes, Tyler On Fri, 22 May 2020 at 03:48, Ralf Gommers wrote: > > > On Fri, May 22, 2020 at 2:02 AM Eric Larson > wrote: > >> +1 for bumping it before 1.5.0 branching. It is indeed a risk, but it's a >> minor version change so hopefully just makes things work better. >> > > +1 from me too, that should always be fine if CI is green, > > Ralf > > >> Eric >> >> >> On Thu, May 21, 2020 at 7:44 PM Tyler Reddy >> wrote: >> >>> Any objections to bumping our minimum Cython version from 0.29.14 to >>> 0.29.18 to support: https://github.com/scipy/scipy/pull/11385 ? >>> >>> We do typically bump Cython versions regularly, though just a few days >>> before branching might be asking for trouble? >>> >>> Best wishes, >>> Tyler >>> >>> On Fri, 8 May 2020 at 01:30, Ralf Gommers >>> wrote: >>> >>>> >>>> >>>> On Wed, May 6, 2020 at 4:49 AM Tyler Reddy >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think >>>>> we'd like to keep a roughly biannual release cadence. >>>>> >>>>> I'd like to propose the following schedule for 1.5.0: >>>>> - May 26/2020: branch 1.5.x >>>>> - May 29/2020: rc1 >>>>> - June 11/2020: rc2 (if needed) >>>>> - June 20/2020: final release >>>>> >>>> >>>> Sounds good to me. >>>> >>>> >>>>> Complicating factors this time around may include attempts at >>>>> providing ARM/ppc64le wheels and the continued migration from rackspace -> >>>>> anaconda.org for asset hosting in both the main and wheels repos. >>>>> >>>> >>>> Looks like the anaconda.org migration is going well, thanks to Tyler >>>> and everyone else who is pitching in. Having arm64/ppc64le wheels would be >>>> great, we're pretty far along. Not a blocker though - they could be >>>> uploaded later. Having CI for both platforms in place now is a good place >>>> to start from. >>>> >>>> >>>>> As always, it is a good idea to start tagging things that should be in >>>>> 1.5.0 & please do help with reviewing PRs/issues that are tagged--current >>>>> counts are: >>>>> >>>>> - 23 open issues with 1.5.0 milestone >>>>> - 38 open PRs with 1.5.0 milestone >>>>> >>>> >>>> I bumped a few milestones and merged some PRs, it's down to 53 total. >>>> There's a bunch of PRs that we really need to review, but not any really >>>> problematic issues it looks like. >>>> >>>> >>>>> While helping with that, also great if the release notes wiki is >>>>> updated for appropriate changes: >>>>> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >>>>> >>>>> >>>>> Curating those final notes can be painful if the wiki isn't updated. >>>>> >>>>> Thoughts/objections for the schedule? >>>>> >>>> >>>> Thanks for leading the charge again Tyler. >>>> >>>> Cheers, >>>> Ralf >>>> >>>> >>>> >>>>> Best wishes, >>>>> Tyler >>>>> _______________________________________________ >>>>> SciPy-Dev mailing list >>>>> SciPy-Dev at python.org >>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>> >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Tue May 26 23:50:54 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Tue, 26 May 2020 21:50:54 -0600 Subject: [SciPy-Dev] master branch open for 1.6.0 development Message-ID: The SciPy 1.5.x maintenance branch was pushed and master is now open for development of SciPy 1.6.0 There will possibly be some release notes backports to the maintenance branch based on unresolved discussions, but we will see... Best wishes, Tyler -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Wed May 27 00:05:10 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Wed, 27 May 2020 00:05:10 -0400 Subject: [SciPy-Dev] master branch open for 1.6.0 development In-Reply-To: References: Message-ID: On 5/26/20, Tyler Reddy wrote: > The SciPy 1.5.x maintenance branch was pushed and master is now open for > development of SciPy 1.6.0 Thanks Tyler! Warren > > There will possibly be some release notes backports to the maintenance > branch based on unresolved discussions, but we will see... > > Best wishes, > Tyler > From evgeny.burovskiy at gmail.com Wed May 27 02:58:43 2020 From: evgeny.burovskiy at gmail.com (Evgeni Burovski) Date: Wed, 27 May 2020 09:58:43 +0300 Subject: [SciPy-Dev] master branch open for 1.6.0 development In-Reply-To: References: Message-ID: Thanks Tyler for pushing it through! ??, 27 ??? 2020 ?., 7:05 Warren Weckesser : > On 5/26/20, Tyler Reddy wrote: > > The SciPy 1.5.x maintenance branch was pushed and master is now open for > > development of SciPy 1.6.0 > > > Thanks Tyler! > > Warren > > > > > There will possibly be some release notes backports to the maintenance > > branch based on unresolved discussions, but we will see... > > > > Best wishes, > > Tyler > > > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From charlesr.harris at gmail.com Wed May 27 10:32:51 2020 From: charlesr.harris at gmail.com (Charles R Harris) Date: Wed, 27 May 2020 08:32:51 -0600 Subject: [SciPy-Dev] master branch open for 1.6.0 development In-Reply-To: References: Message-ID: On Tue, May 26, 2020 at 9:52 PM Tyler Reddy wrote: > The SciPy 1.5.x maintenance branch was pushed and master is now open for > development of SciPy 1.6.0 > > There will possibly be some release notes backports to the maintenance > branch based on unresolved discussions, but we will see... > > Excelsior. Chuck -------------- next part -------------- An HTML attachment was scrubbed... URL: From jrme.jansen at gmail.com Wed May 27 17:46:56 2020 From: jrme.jansen at gmail.com (=?UTF-8?B?SmFuc2VuIErDqXLDtG1l?=) Date: Wed, 27 May 2020 23:46:56 +0200 Subject: [SciPy-Dev] Delay Differential Equation (DDE) solver In-Reply-To: References: Message-ID: Hi Ralf, I was very happy to read your answer and see that my piece of code could interest the SciPy community! About maintenance of the solver, it won't be a problem for me to help with that. Indeed, this issue 818 was opened a long time ago and did not interest many people ... I note that already in 2013 the references of L.F. Shampine and S. Thompson were already cited. As you pointed out, DDEs are very specific and a big problem will be finding a charitable soul to review the code. Being at my first attempt to contribute, I imagine that I have to wait for a reviewer(s) ..? Best regards, J?r?me. Le mer. 20 mai 2020 ? 23:02, Ralf Gommers a ?crit : > > > On Sun, May 17, 2020 at 1:41 PM Jansen J?r?me > wrote: > >> My dear SciPy community, >> >> In my PhD, I work on biomechanical problematics which are (sometime) >> modeled with delay differential equations. >> Being an avid user of python and SciPy, I looked for DDEs solver but ... >> I was surprised not to find it in SciPy. On the contrary, I discovered lots >> of more or less old and very different projects about DDEs in Python >> (JiTCDDE, ddeint, pydelay, diffeqpy). While in other programming languages, >> robust code exist (matlab: dde23, julia: DelayDiffEq.jl, fortran: DKLAG6 >> ...). >> So I decided to start implementing a solver using the architecture of >> scipy.integrate.solve_ivp. >> >> The fork us here : >> https://github.com/jrmejansen/scipy/tree/ddeSolver >> >> I added the folder "*scipy/integrate/_dde*" and modified files from >> "scipy/integrate/_ivp" to resolve DDEs. You would find also some benchmarks >> but not yet unit tests. >> >> At this time, the solver, *solve_dde*, handles DDEs with constant delays >> for none stiff equations. >> >> Does my code interest the SciPy community ? >> If it does, I can add extensive unit tests and also docstring. >> > > Hi J?r?me, thanks for proposing this. Having a good DDE solver would be > quite nice. I've certainly missed it in the past. The difficulty here is > that it is fairly niche, and we'd need to find someone to review the PR. > scipy.integrate is already struggling a bit with lack of maintainers. Also, > we need to think about future maintenance - if you would be willing to > continue to maintain it, that would certainly help. > > We did have a feature request open for a long time, but there wasn't too > much interest it looked like: https://github.com/scipy/scipy/issues/818 > > So first question would be, is there someone else - either a SciPy > maintainer or a domain expert - who is interested in helping to get this > merged? > > Best, > Ralf > > >> I am open to any discussion and do not hesitate to give me feedbacks. >> Best regards, >> J?r?me JANSEN. >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rlucas7 at vt.edu Wed May 27 19:50:52 2020 From: rlucas7 at vt.edu (rlucas7 at vt.edu) Date: Wed, 27 May 2020 19:50:52 -0400 Subject: [SciPy-Dev] master branch open for 1.6.0 development In-Reply-To: References: Message-ID: <9A3FE02E-3D10-4644-B5B7-F70392AA0D31@vt.edu> Thanks Tyler. Sincerely, -Lucas Roberts > On May 27, 2020, at 10:33 AM, Charles R Harris wrote: > > ? > > >> On Tue, May 26, 2020 at 9:52 PM Tyler Reddy wrote: >> The SciPy 1.5.x maintenance branch was pushed and master is now open for development of SciPy 1.6.0 >> >> There will possibly be some release notes backports to the maintenance branch based on unresolved discussions, but we will see... >> > > Excelsior. > > Chuck > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev -------------- next part -------------- An HTML attachment was scrubbed... URL: From ralf.gommers at gmail.com Thu May 28 04:47:32 2020 From: ralf.gommers at gmail.com (Ralf Gommers) Date: Thu, 28 May 2020 10:47:32 +0200 Subject: [SciPy-Dev] Delay Differential Equation (DDE) solver In-Reply-To: References: Message-ID: On Wed, May 27, 2020 at 11:47 PM Jansen J?r?me wrote: > Hi Ralf, > I was very happy to read your answer and see that my piece of code could > interest the SciPy community! > > About maintenance of the solver, it won't be a problem for me to help with > that. > > Indeed, this issue 818 was opened a long time ago and did not interest > many people ... I note that already in 2013 the references of L.F. Shampine > and S. Thompson were already cited. > > As you pointed out, DDEs are very specific and a big problem will be > finding a charitable soul to review the code. Being at my first attempt to > contribute, I imagine that I have to wait for a reviewer(s) ..? > Being new doesn't imply you go to the back of the line - we're very happy to see new contributors. That said, we do have a perpetual backlog, so it depends on finding someone else with both interest and some expertise. It doesn't have to be a SciPy maintainer. What has worked well in the past for such larger features is finding another domain expert to test/review/collaborate. With two people saying "this solves my problem and the algorithm looks correct" it becomes a lot easier to review, getting it to meet SciPy's code and test requirements is usually a lot less work than figuring out whether the algorithmic part is right. Cheers, Ralf > Best regards, > J?r?me. > > Le mer. 20 mai 2020 ? 23:02, Ralf Gommers a > ?crit : > >> >> >> On Sun, May 17, 2020 at 1:41 PM Jansen J?r?me >> wrote: >> >>> My dear SciPy community, >>> >>> In my PhD, I work on biomechanical problematics which are (sometime) >>> modeled with delay differential equations. >>> Being an avid user of python and SciPy, I looked for DDEs solver but ... >>> I was surprised not to find it in SciPy. On the contrary, I discovered lots >>> of more or less old and very different projects about DDEs in Python >>> (JiTCDDE, ddeint, pydelay, diffeqpy). While in other programming languages, >>> robust code exist (matlab: dde23, julia: DelayDiffEq.jl, fortran: DKLAG6 >>> ...). >>> So I decided to start implementing a solver using the architecture of >>> scipy.integrate.solve_ivp. >>> >>> The fork us here : >>> https://github.com/jrmejansen/scipy/tree/ddeSolver >>> >>> I added the folder "*scipy/integrate/_dde*" and modified files from >>> "scipy/integrate/_ivp" to resolve DDEs. You would find also some benchmarks >>> but not yet unit tests. >>> >>> At this time, the solver, *solve_dde*, handles DDEs with constant >>> delays for none stiff equations. >>> >>> Does my code interest the SciPy community ? >>> If it does, I can add extensive unit tests and also docstring. >>> >> >> Hi J?r?me, thanks for proposing this. Having a good DDE solver would be >> quite nice. I've certainly missed it in the past. The difficulty here is >> that it is fairly niche, and we'd need to find someone to review the PR. >> scipy.integrate is already struggling a bit with lack of maintainers. Also, >> we need to think about future maintenance - if you would be willing to >> continue to maintain it, that would certainly help. >> >> We did have a feature request open for a long time, but there wasn't too >> much interest it looked like: https://github.com/scipy/scipy/issues/818 >> >> So first question would be, is there someone else - either a SciPy >> maintainer or a domain expert - who is interested in helping to get this >> merged? >> >> Best, >> Ralf >> >> >>> I am open to any discussion and do not hesitate to give me feedbacks. >>> Best regards, >>> J?r?me JANSEN. >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Sat May 30 12:56:32 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Sat, 30 May 2020 10:56:32 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: The 1.5.0rc1 wheels are slightly delayed because I had to bump Cython version in the wheels branch to match our Cython bump in the main repo. That'll cost about half a day of time, so maybe later tonight or tomorrow I can put those out. On Mon, 25 May 2020 at 15:25, Tyler Reddy wrote: > Early draft 1.5.0 release notes PR is open: > https://github.com/scipy/scipy/pull/12221 > > Please do help improve/fix issues there. > > Best wishes, > Tyler > > On Fri, 22 May 2020 at 03:48, Ralf Gommers wrote: > >> >> >> On Fri, May 22, 2020 at 2:02 AM Eric Larson >> wrote: >> >>> +1 for bumping it before 1.5.0 branching. It is indeed a risk, but it's >>> a minor version change so hopefully just makes things work better. >>> >> >> +1 from me too, that should always be fine if CI is green, >> >> Ralf >> >> >>> Eric >>> >>> >>> On Thu, May 21, 2020 at 7:44 PM Tyler Reddy >>> wrote: >>> >>>> Any objections to bumping our minimum Cython version from 0.29.14 to >>>> 0.29.18 to support: https://github.com/scipy/scipy/pull/11385 ? >>>> >>>> We do typically bump Cython versions regularly, though just a few days >>>> before branching might be asking for trouble? >>>> >>>> Best wishes, >>>> Tyler >>>> >>>> On Fri, 8 May 2020 at 01:30, Ralf Gommers >>>> wrote: >>>> >>>>> >>>>> >>>>> On Wed, May 6, 2020 at 4:49 AM Tyler Reddy >>>>> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think >>>>>> we'd like to keep a roughly biannual release cadence. >>>>>> >>>>>> I'd like to propose the following schedule for 1.5.0: >>>>>> - May 26/2020: branch 1.5.x >>>>>> - May 29/2020: rc1 >>>>>> - June 11/2020: rc2 (if needed) >>>>>> - June 20/2020: final release >>>>>> >>>>> >>>>> Sounds good to me. >>>>> >>>>> >>>>>> Complicating factors this time around may include attempts at >>>>>> providing ARM/ppc64le wheels and the continued migration from rackspace -> >>>>>> anaconda.org for asset hosting in both the main and wheels repos. >>>>>> >>>>> >>>>> Looks like the anaconda.org migration is going well, thanks to Tyler >>>>> and everyone else who is pitching in. Having arm64/ppc64le wheels would be >>>>> great, we're pretty far along. Not a blocker though - they could be >>>>> uploaded later. Having CI for both platforms in place now is a good place >>>>> to start from. >>>>> >>>>> >>>>>> As always, it is a good idea to start tagging things that should be >>>>>> in 1.5.0 & please do help with reviewing PRs/issues that are >>>>>> tagged--current counts are: >>>>>> >>>>>> - 23 open issues with 1.5.0 milestone >>>>>> - 38 open PRs with 1.5.0 milestone >>>>>> >>>>> >>>>> I bumped a few milestones and merged some PRs, it's down to 53 total. >>>>> There's a bunch of PRs that we really need to review, but not any really >>>>> problematic issues it looks like. >>>>> >>>>> >>>>>> While helping with that, also great if the release notes wiki is >>>>>> updated for appropriate changes: >>>>>> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >>>>>> >>>>>> >>>>>> Curating those final notes can be painful if the wiki isn't updated. >>>>>> >>>>>> Thoughts/objections for the schedule? >>>>>> >>>>> >>>>> Thanks for leading the charge again Tyler. >>>>> >>>>> Cheers, >>>>> Ralf >>>>> >>>>> >>>>> >>>>>> Best wishes, >>>>>> Tyler >>>>>> _______________________________________________ >>>>>> SciPy-Dev mailing list >>>>>> SciPy-Dev at python.org >>>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>>> >>>>> _______________________________________________ >>>>> SciPy-Dev mailing list >>>>> SciPy-Dev at python.org >>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>> >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Sat May 30 17:36:05 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Sat, 30 May 2020 15:36:05 -0600 Subject: [SciPy-Dev] ANN: SciPy 1.5.0rc1 -- please test Message-ID: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Hi all, On behalf of the SciPy development team I'm pleased to announce the release candidate SciPy 1.5.0rc1. Please help us test this pre-release. Sources and binary wheels can be found at: https://pypi.org/project/scipy/ and at: https://github.com/scipy/scipy/releases/tag/v1.5.0rc1 One of a few ways to install the release candidate with pip: pip install scipy==1.5.0rc1 ========================== SciPy 1.5.0 Release Notes ========================== Note: Scipy 1.5.0 is not released yet! SciPy 1.5.0 is the culmination of 6 months of hard work. It contains many new features, numerous bug-fixes, improved test coverage and better documentation. There have been a number of deprecations and API changes in this release, which are documented below. All users are encouraged to upgrade to this release, as there are a large number of bug-fixes and optimizations. Before upgrading, we recommend that users check that their own code does not use deprecated SciPy functionality (to do so, run your code with ``python -Wd`` and check for ``DeprecationWarning`` s). Our development attention will now shift to bug-fix releases on the 1.5.x branch, and on adding new features on the master branch. This release requires Python 3.6+ and NumPy 1.14.5 or greater. For running on PyPy, PyPy3 6.0+ and NumPy 1.15.0 are required. Highlights of this release --------------------------------- - wrappers for more than a dozen new ``LAPACK`` routines are now available in `scipy.linalg.lapack` - Improved support for leveraging 64-bit integer size from linear algebra backends - addition of the probability distribution for two-sided one-sample Kolmogorov-Smirnov tests New features ============ `scipy.cluster` improvements --------------------------------------- Initialization of `scipy.cluster.vq.kmeans2` using ``minit="++"`` had a quadratic complexity in the number of samples. It has been improved, resulting in a much faster initialization with quasi-linear complexity. `scipy.cluster.hierarchy.dendrogram` now respects the ``matplotlib`` color palette `scipy.fft` improvements ---------------------------------- A new keyword-only argument ``plan`` is added to all FFT functions in this module. It is reserved for passing in a precomputed plan from libraries providing a FFT backend (such as ``PyFFTW`` and ``mkl-fft``), and it is currently not used in SciPy. `scipy.integrate` improvements ------------------------------------------ `scipy.interpolate` improvements -------------------------------------------- `scipy.io` improvements -------------------------------- `scipy.io.wavfile` error messages are more explicit about what's wrong, and extraneous bytes at the ends of files are ignored instead of raising an error when the data has successfully been read. `scipy.io.loadmat` gained a ``simplify_cells`` parameter, which if set to ``True`` simplifies the structure of the return value if the ``.mat`` file contains cell arrays. ``pathlib.Path`` objects are now supported in `scipy.io` Matrix Market I/O functions `scipy.linalg` improvements -------------------------------------- `scipy.linalg.eigh` has been improved. Now various ``LAPACK`` drivers can be selected at will and also subsets of eigenvalues can be requested via ``subset_by_value`` keyword. Another keyword ``subset_by_index`` is introduced. Keywords ``turbo`` and ``eigvals`` are deprecated. Similarly, standard and generalized Hermitian eigenvalue ``LAPACK`` routines ``?evx`` are added and existing ones now have full ``_lwork`` counterparts. Wrappers for the following ``LAPACK`` routines have been added to `scipy.linalg.lapack`: - ``?getc2``: computes the LU factorization of a general matrix with complete pivoting - ``?gesc2``: solves a linear system given an LU factorization from ``?getc2`` - ``?gejsv``: computes the singular value decomposition of a general matrix with higher accuracy calculation of tiny singular values and their corresponding singular vectors - ``?geqrfp``: computes the QR factorization of a general matrix with non-negative elements on the diagonal of R - ``?gtsvx``: solves a linear system with general tridiagonal matrix - ``?gttrf``: computes the LU factorization of a tridiagonal matrix - ``?gttrs``: solves a linear system given an LU factorization from ``?gttrf`` - ``?ptsvx``: solves a linear system with symmetric positive definite tridiagonal matrix - ``?pttrf``: computes the LU factorization of a symmetric positive definite tridiagonal matrix - ``?pttrs``: solves a linear system given an LU factorization from ``?pttrf`` - ``?pteqr``: computes the eigenvectors and eigenvalues of a positive definite tridiagonal matrix - ``?tbtrs``: solves a linear system with a triangular banded matrix - ``?csd``: computes the Cosine Sine decomposition of an orthogonal/unitary matrix Generalized QR factorization routines (``?geqrf``) now have full ``_lwork`` counterparts. `scipy.linalg.cossin` Cosine Sine decomposition of unitary matrices has been added. The function `scipy.linalg.khatri_rao`, which computes the Khatri-Rao product, was added. The new function `scipy.linalg.convolution_matrix` constructs the Toeplitz matrix representing one-dimensional convolution. `scipy.ndimage` improvements ------------------------------------------ `scipy.optimize` improvements ----------------------------------------- The finite difference numerical differentiation used in various ``minimize`` methods that use gradients has several new features: - 2-point, 3-point, or complex step finite differences can be used. Previously only a 2-step finite difference was available. - There is now the possibility to use a relative step size, previously only an absolute step size was available. - If the ``minimize`` method uses bounds the numerical differentiation strictly obeys those limits. - The numerical differentiation machinery now makes use of a simple cache, which in some cases can reduce the number of function evaluations. - ``minimize``'s ``method= 'powell'`` now supports simple bound constraints There have been several improvements to `scipy.optimize.linprog`: - The ``linprog`` benchmark suite has been expanded considerably. - ``linprog``'s dense pivot-based redundancy removal routine and sparse presolve are faster - When ``scikit-sparse`` is available, solving sparse problems with ``method='interior-point'`` is faster The caching of values when optimizing a function returning both value and gradient together has been improved, avoiding repeated function evaluations when using a ``HessianApproximation`` such as ``BFGS``. ``differential_evolution`` can now use the modern ``np.random.Generator`` as well as the legacy ``np.random.RandomState`` as a seed. `scipy.signal` improvements -------------------------------------- A new optional argument ``include_nyquist`` is added to ``freqz`` functions in this module. It is used for including the last frequency (Nyquist frequency). `scipy.signal.find_peaks_cwt` now accepts a ``window_size`` parameter for the size of the window used to calculate the noise floor. `scipy.sparse` improvements ---------------------------------------- Outer indexing is now faster when using a 2d column vector to select column indices. `scipy.sparse.lil.tocsr` is faster Fixed/improved comparisons between pydata sparse arrays and sparse matrices BSR format sparse multiplication performance has been improved. `scipy.sparse.linalg.LinearOperator` has gained the new ``ndim`` class attribute `scipy.spatial` improvements --------------------------------------- `scipy.spatial.geometric_slerp` has been added to enable geometric spherical linear interpolation on an n-sphere `scipy.spatial.SphericalVoronoi` now supports calculation of region areas in 2D and 3D cases The tree building algorithm used by ``cKDTree`` has improved from quadratic worst case time complexity to loglinear. Benchmarks are also now available for building and querying of balanced/unbalanced kd-trees. `scipy.special` improvements ---------------------------------------- The following functions now have Cython interfaces in `cython_special`: - `scipy.special.erfinv` - `scipy.special.erfcinv` - `scipy.special.spherical_jn` - `scipy.special.spherical_yn` - `scipy.special.spherical_in` - `scipy.special.spherical_kn` `scipy.special.log_softmax` has been added to calculate the logarithm of softmax function. It provides better accuracy than ``log(scipy.special.softmax(x))`` for inputs that make softmax saturate. `scipy.stats` improvements ------------------------------------- The function for generating random samples in `scipy.stats.dlaplace` has been improved. The new function is approximately twice as fast with a memory footprint reduction between 25 % and 60 % (see gh-11069). `scipy.stats` functions that accept a seed for reproducible calculations using random number generation (e.g. random variates from distributions) can now use the modern ``np.random.Generator`` as well as the legacy ``np.random.RandomState`` as a seed. The ``axis`` parameter was added to `scipy.stats.rankdata`. This allows slices of an array along the given axis to be ranked independently. The ``axis`` parameter was added to `scipy.stats.f_oneway`, allowing it to compute multiple one-way ANOVA tests for data stored in n-dimensional arrays. The performance of ``f_oneway`` was also improved for some cases. The PDF and CDF methods for ``stats.geninvgauss`` are now significantly faster as the numerical integration to calculate the CDF uses a Cython based ``LowLevelCallable``. Moments of the normal distribution (`scipy.stats.norm`) are now calculated using analytical formulas instead of numerical integration for greater speed and accuracy Moments and entropy trapezoidal distribution (`scipy.stats.trapz`) are now calculated using analytical formulas instead of numerical integration for greater speed and accuracy Methods of the truncated normal distribution (`scipy.stats.truncnorm`), especially ``_rvs``, are significantly faster after a complete rewrite. The `fit` method of the Laplace distribution, `scipy.stats.laplace`, now uses the analytical formulas for the maximum likelihood estimates of the parameters. Generation of random variates is now thread safe for all SciPy distributions. 3rd-party distributions may need to modify the signature of the ``_rvs()`` method to conform to ``_rvs(self, ..., size=None, random_state=None)``. (A one-time VisibleDeprecationWarning is emitted when using non-conformant distributions.) The Kolmogorov-Smirnov two-sided test statistic distribution (`scipy.stats.kstwo`) was added. Calculates the distribution of the K-S two-sided statistic ``D_n`` for a sample of size n, using a mixture of exact and asymptotic algorithms. The new function ``median_abs_deviation`` replaces the deprecated ``median_absolute_deviation``. The ``wilcoxon`` function now computes the p-value for Wilcoxon's signed rank test using the exact distribution for inputs up to length 25. The function has a new ``mode`` parameter to specify how the p-value is to be computed. The default is ``"auto"``, which uses the exact distribution for inputs up to length 25 and the normal approximation for larger inputs. Added a new Cython-based implementation to evaluate guassian kernel estimates, which should improve the performance of ``gaussian_kde`` The ``winsorize`` function now has a ``nan_policy`` argument for refined handling of ``nan`` input values. The ``binned_statistic_dd`` function with ``statistic="std"`` performance was improved by ~4x. ``scipy.stats.kstest(rvs, cdf,...)`` now handles both one-sample and two-sample testing. The one-sample variation uses `scipy.stats.ksone` (or `scipy.stats.kstwo` with back off to `scipy.stats.kstwobign`) to calculate the p-value. The two-sample variation, invoked if ``cdf`` is array_like, uses an algorithm described by Hodges to compute the probability directly, only backing off to `scipy.stats.kstwo` in case of overflow. The result in both cases is more accurate p-values, especially for two-sample testing with smaller (or quite different) sizes. `scipy.stats.maxwell` performance improvements include a 20 % speed up for `fit()`` and 5 % for ``pdf()`` `scipy.stats.shapiro` and `scipy.stats.jarque_bera` now return a named tuple for greater consistency with other ``stats`` functions Deprecated features ================ `scipy` deprecations ---------------------------- `scipy.special` changes --------------------------------- The ``bdtr``, ``bdtrc``, and ``bdtri`` functions are deprecating non-negative non-integral ``n`` arguments. `scipy.stats` changes ----------------------------- The function ``median_absolute_deviation`` is deprecated. Use ``median_abs_deviation`` instead. The use of the string ``"raw"`` with the ``scale`` parameter of ``iqr`` is deprecated. Use ``scale=1`` instead. Backwards incompatible changes ========================== `scipy.interpolate` changes ------------------------------------- `scipy.linalg` changes ----------------------------- The output signatures of ``?syevr``, ``?heevr`` have been changed from ``w, v, info`` to ``w, v, m, isuppz, info`` The order of output arguments ``w``, ``v`` of ``{gv, gvd, gvx}`` is swapped. `scipy.signal` changes ------------------------------- The output length of `scipy.signal.upfirdn` has been corrected, resulting outputs may now be shorter for some combinations of up/down ratios and input signal and filter lengths. `scipy.signal.resample` now supports a ``domain`` keyword argument for specification of time or frequency domain input. `scipy.stats` changes ----------------------------- Other changes ============= Improved support for leveraging 64-bit integer size from linear algebra backends in several parts of the SciPy codebase. Shims designed to ensure the compatibility of SciPy with Python 2.7 have now been removed. Many warnings due to unused imports and unused assignments have been addressed. Many usage examples were added to function docstrings, and many input validations and intuitive exception messages have been added throughout the codebase. Early stage adoption of type annotations in a few parts of the codebase Authors ======= * @endolith * Hameer Abbasi * ADmitri + * Wesley Alves + * Berkay Antmen + * Sylwester Arabas + * Arne K??derle + * Christoph Baumgarten * Peter Bell * Felix Berkenkamp * Jord??o Bragantini + * Clemens Brunner + * Evgeni Burovski * Matthias Bussonnier + * CJ Carey * Derrick Chambers + * Leander Claes + * Christian Clauss * Luigi F. Cruz + * dankleeman * Andras Deak * Milad Sadeghi DM + * jeremie du boisberranger + * Stefan Endres * Malte Esders + * Leo Fang + * felixhekhorn + * Isuru Fernando * Andrew Fowlie * Lakshay Garg + * Gaurav Gijare + * Ralf Gommers * Emmanuelle Gouillart + * Kevin Green + * Martin Grignard + * Maja Gwozdz * gyu-don + * Matt Haberland * hakeemo + * Charles Harris * Alex Henrie * Santi Hernandez + * William Hickman + * Till Hoffmann + * Joseph T. Iosue + * Anany Shrey Jain * Jakob Jakobson * Charles Jekel + * Julien Jerphanion + * Jiacheng-Liu + * Christoph Kecht + * Paul Kienzle + * Reidar Kind + * Dmitry E. Kislov + * Konrad + * Konrad0 * Takuya KOUMURA + * Krzysztof Pi??ro * Peter Mahler Larsen * Eric Larson * Antony Lee * Gregory Lee + * Gregory R. Lee * Chelsea Liu * Cong Ma + * Kevin Mader + * Maja Gw????d?? + * Alex Marvin + * Matthias K??mmerer * Nikolay Mayorov * Mazay0 + * G. D. McBain * Nicholas McKibben + * Sabrina J. Mielke + * Sebastian J. Mielke + * Milo?? Komar? evi?? + * Shubham Mishra + * Santiago M. Mola + * Grzegorz Mrukwa + * Peyton Murray * Andrew Nelson * Nico Schl??mer * nwjenkins + * odidev + * Sambit Panda * Vikas Pandey + * Rick Paris + * Harshal Prakash Patankar + * Balint Pato + * Matti Picus * Ilhan Polat * poom + * Siddhesh Poyarekar * Vladyslav Rachek + * Bharat Raghunathan * Manu Rajput + * Tyler Reddy * Andrew Reed + * Lucas Roberts * Ariel Rokem * Heshy Roskes * Matt Ruffalo * Atsushi Sakai + * Benjamin Santos + * Christoph Schock + * Lisa Schwetlick + * Chris Simpson + * Leo Singer * Kai Striega * S??ren Fuglede J??rgensen * Kale-ab Tessera + * Seth Troisi + * Robert Uhl + * Paul van Mulbregt * Vasiliy + * Isaac Virshup + * Pauli Virtanen * Shakthi Visagan + * Jan Vleeshouwers + * Sam Wallan + * Lijun Wang + * Warren Weckesser * Richard Weiss + * wenhui-prudencemed + * Eric Wieser * Josh Wilson * James Wright + * Ruslan Yevdokymov + * Ziyao Zhang + A total of 129 people contributed to this release. People with a "+" by their names contributed a patch for the first time. This list of names is automatically generated, and may not be fully complete. Issues closed for 1.5.0 ------------------------------- * `#1455 `__: ellipord does returns bogus values if gstop or gpass are negative... * `#1968 `__: correlate2d's output does not agree with correlate's output in... * `#2744 `__: BUG: optimize: '\*\*kw' argument of 'newton_krylov' is not documented * `#4755 `__: TypeError: data type "`__: scipy.optimize maxiter option not working as expected * `#5144 `__: RuntimeWarning on csgraph.shortest_path when edge lengths are... * `#5309 `__: Documentation of 'hybr' and 'lm' inconsistent in optimize.root * `#6026 `__: Replace approx_grad with _numdiff.approx_derivative in scipy.optimize * `#6502 `__: Computing Eigenvalues in an Interval with LAPACK * `#7058 `__: Errors in special.bdtri and special.bdtr for non-integer k values * `#7700 `__: SuperLU does not respect perm_c="NATURAL" * `#7895 `__: Improvements to io.loadmat * `#8205 `__: ValueError in scipy.linalg.eigvalsh for large matrix * `#8278 `__: Memory limit for scipy.sparse.linalg.spsolve with scikit-umfpack * `#8327 `__: scipy.stats.mstats.winsorize NaN handling * `#8341 `__: scipy.stats.ks_2samp for masked and unmasked data give different... * `#8748 `__: scipy.stats.kstest for same distribution: p-values nonuniform * `#9042 `__: optimize: Incorrect statement about \`jac\` in the \`minimize\`... * `#9197 `__: problem with scipy.signal.butter with 1000+ points array * `#9212 `__: EIGH very very slow --> suggesting an easy fix * `#9553 `__: ndimage routines behave badly when output has memory overlap... * `#9632 `__: ndimage.maximum_filter undocumented behaviour using footprint... * `#9710 `__: stats.weightedtau([1], [1.0]) SEGFAULTs * `#9797 `__: Master Tracker for some Kolmogorov-Smirnov test Issues * `#9844 `__: scipy.signal.upfirdn gives different length matrix versus MATLAB... * `#9872 `__: scipy.signal.convolve is slower when vectorized * `#9913 `__: BUG: No dt in StateSpace operations * `#10014 `__: Distribution names \`weibull_min\`and \`weibull_max\` should... * `#10159 `__: BUG: stats: chisquare returns incorrect results for arrays of... * `#10302 `__: scipy.fft: Add a \`plan\` argument * `#10332 `__: 'Incomplete wav chunk' inconsistent/reason unknown * `#10441 `__: Remove uses of \`numpy.dual\`? * `#10558 `__: Document implicit sum in csr_matrix() constructor * `#10788 `__: LU with full pivoting * `#10841 `__: Unexpected behavior in linalg.blas.dtrmm wrapper * `#10919 `__: optimize._lbfgsb setulb() function violates parameter bounds * `#10963 `__: kstest, ks_2samp: confusing \`mode\` argument descriptions * `#11022 `__: Unexpected Result in factorial function with NaN input * `#11028 `__: Documentation error in optimize.minimize * `#11058 `__: Adding logsoftmax function * `#11076 `__: ValueError: Unknown wave file format * `#11090 `__: Misconception of the median absolute deviation in stats? * `#11095 `__: BUG: find_peaks_cwt test failures in 32-bit Linux wheels * `#11107 `__: scipy.io.mmread generated an error "TypeError: startswith first... * `#11123 `__: Add wrapper for ?gttrf/?gttrs * `#11128 `__: OverflowError in resample_poly (upfirdn) * `#11132 `__: Possible bug: rv_discret.ppf for percentiles 0 and 100 and loc... * `#11163 `__: Comparisons between scipy spmatrix and can sparse.SparseArray... * `#11168 `__: Generalized Pareto variance inaccurate for concentrations near... * `#11169 `__: Add wrapper for ?geqrfp * `#11184 `__: 2-sided Kolmogorov Smirnov returns p-value of 1 * `#11185 `__: The .roots() or solve() function of scipy.interpolate.CubicHermiteSpline... * `#11190 `__: Add wrapper for ?tbtrs * `#11200 `__: Can no longer slice csr_matrix in 1.3.0 * `#11207 `__: _minimize_scalar_bounded: reference before assignment * `#11216 `__: linprog: interior-point: Cholmod reordering can be reused * `#11223 `__: Add wrappers for ?pttrf, ?pttrs * `#11224 `__: Add wrapperfor ?pteqr * `#11235 `__: MAINT: Missleading Error Message for IIR Filter * `#11244 `__: Missing reference in \`scipy.optimize.line_search\` * `#11262 `__: Hermitian Eigenvalue Problem eigh() API and wrapper change proposal * `#11266 `__: Sparse matrix constructor data type detection changes on Numpy... * `#11270 `__: CI failing: Travis CI Py36 refguide and Linux_Python_36_32bit_full... * `#11279 `__: linalg.eigh checks whole array for finite values * `#11295 `__: CI: azure does not auto-cancel old jobs on pushes * `#11299 `__: stats.truncnorm.rvs 100x slower in v1.4.x than v1.3.3 * `#11315 `__: BUG: special: rgamma on negative integers smaller -34 * `#11319 `__: Missing \`int64_t\` declaration in rectangular_lsap.cpp * `#11323 `__: Compilation failure due to missing symbol pthread_atfork * `#11332 `__: BUG: directed_hausdorff distance on sets u and v when u is a... * `#11350 `__: Khatri-Rao product * `#11354 `__: ENH: Add wrapper for ?gejsv * `#11361 `__: Dropped NaN in eval_genlaguerre function * `#11363 `__: Dropped NaN in hyperu function * `#11365 `__: scipy.stats.binned_statistic regressed in v1.4.0 * `#11369 `__: Dropped NaN in eval_hermite * `#11370 `__: Dropped NaN in eval_gegenbauer * `#11373 `__: Add wrapper for ?gtsvx * `#11374 `__: Add wrapper for ?ptsvx * `#11391 `__: csgraph.minimum_spanning_tree loses precision * `#11398 `__: Update stats to cope with \`np.random.Generator\` machinery * `#11412 `__: Array copying causes unwanted type casting from complex to float... * `#11415 `__: Where is the Wiener Filter derived from? * `#11416 `__: _lib._util.getargspec_no_self is missing KEYWORD_ONLY support * `#11428 `__: Documentation on SHGO inequality constraints appears contradictory * `#11429 `__: Add LAPACK's ZUNCSD cosine sine decomposition * `#11438 `__: run_dualannealing passes bounds incorrectly in benchmarks/optimize.py * `#11441 `__: Can't run optimize benchmarks * `#11442 `__: Chebyshev weights * `#11448 `__: Wrongly typed comparison in integrate.quad * `#11458 `__: BUG: maximum_bipartite_matching produces infeasible solution * `#11460 `__: CI failing: 2 Travis CI tests fail with numpy build or version... * `#11462 `__: Bug on "++" initialization on "kmeans2" * `#11464 `__: Shouldn't data type of KDE evaluation should be like in the input... * `#11468 `__: performance of binned_statistics_2d 100x slowdown from 1.3.2... * `#11484 `__: Callback function doesn't give the same value as the one being... * `#11492 `__: Confusing dendrogram labelling * `#11493 `__: scipy.optimize.least_squares fails if the return array of the... * `#11494 `__: Error performing kronecker product between large sparse vectors * `#11503 `__: medfilt produces 0 on input of length 1 * `#11529 `__: Pyflakes generates almost 700 warnings. * `#11566 `__: irfft/irfft2/irfftn docs are slightly confusing re: input type. * `#11572 `__: least_squares: too small tolerances not catched with method='lm' * `#11581 `__: DOC: scipy.interpolate.RectSphereBivariateSpline * `#11586 `__: Differential evolution breaks with LinearConstraints with sparse... * `#11595 `__: scipy.spatial.cKDTree construction slow for some datasets * `#11598 `__: output of special.voigt_profile when sigma=0 * `#11601 `__: linalg tests failing in runtests.py * `#11602 `__: scipy.optimize.linear_sum_assignment returns reverse diagonal... * `#11610 `__: Analytic formula for normal moments * `#11611 `__: Build failure with gfortran 10 * `#11613 `__: TST, MAINT: test_quadpack TestCtypesQuad wasn't fully migrated... * `#11630 `__: SmoothBivariateSpline bbox parameter * `#11635 `__: typo in docstring of scipy.stats.norminvgauss * `#11637 `__: BUG: core dumps when calling scipy.interpolate.interp1d with... * `#11638 `__: better documentation for 'return_all' option in minimize(Nelder... * `#11652 `__: TST, MAINT: CI failures for pre-release NumPy wheels * `#11659 `__: optimize.fmin_l_bfgs_b needs bound check and appropiate error... * `#11660 `__: BUG/ENH: distribution.ncf with nc=0 returns nan * `#11661 `__: scipy.ndimage.convolve1d and correlate1d don't behave properly... * `#11669 `__: p-value varies with the order of the data * `#11676 `__: documentation of scipy.spatial.HalfspaceIntersection: wrong method... * `#11685 `__: Rotation cannot be expressed as matrix * `#11686 `__: MAINT: mypy imports of Cython "modules" * `#11693 `__: TestDifferentialEvolutionSolver::test_L4 failing in CI * `#11696 `__: DOC: incorrect compiler information for macOS in docs * `#11709 `__: eigh() tests fail to pass, crash Python with seemingly ramdom... * `#11763 `__: Small error in gamma continuous rv fit comments * `#11769 `__: truncnorm.rvs Weird Behaviors * `#11770 `__: crash in TestEigh::test_value_subsets * `#11795 `__: trapz distribution mean computed using single precision * `#11800 `__: Segmentation fault in scipy.odr for multidimensional independent... * `#11811 `__: pyflakes silently failing on travis-ci * `#11826 `__: Error with _fblas * `#11827 `__: \`fft.tests.test_numpy.test_multiprocess\` hangs on Python3.8... * `#11835 `__: tests with \`multiprocessing\` hang on Python 3.8 on macOS * `#11839 `__: linalg.expm returns nans with RuntimeWarning: overflow encountered... * `#11856 `__: Documentation of fit methods for \`weibull_min\` and \`exponweib\`... * `#11868 `__: Function always evaluated twice when using HessianUpdateStrategy... * `#11875 `__: Typo in the docstring of simps() * `#11877 `__: kmeans2 '++' method is orders of magnitude slower than sklearn.cluster.KMeans() * `#11884 `__: The upper code lines are dead code * `#11886 `__: Array shape mismatch in scipy.optimize * `#11892 `__: BUG: stats: Incorrect handling of edges cases by ttest_rel and... * `#11908 `__: LinearOperator should have ndim attribute * `#11910 `__: Documentation missing for what M is in init argument * `#11922 `__: macOS actions CI has started failing in last couple of days. * `#11928 `__: DOC: signal: Wrong description for sepfir2d, cspline2d, qspline2d * `#11944 `__: curve_fit documentation unclear on default value of absolute_sigma * `#11945 `__: Add a (potentially temporary) py.typed file? * `#11949 `__: ValueError 'k exceeds matrix dimensions' for sparse.diagonal()... * `#11951 `__: BUG: asv benchmark failed because of cython version * `#11967 `__: BLD: Azure windows runs complain about drives * `#11973 `__: oaconvolve(a,b,'same') differs in shape from convolve(a,b,'same')... * `#12002 `__: pybind11 license * `#12003 `__: MAINT: circular SphericalVoronoi input * `#12015 `__: Reordering of CSC matrix breaks when you go above int32 limits * `#12031 `__: Documentation Rendering Issues Visible in CircleCI Artifacts * `#12037 `__: MAINT, CI: new Cython 3.0a4 issue * `#12087 `__: DOC: some odr models are missing docs * `#12119 `__: signal.fftconvolve no longer convolves types f8 and numpy.float64 * `#12149 `__: Documentation of Rosenbrock function * `#12173 `__: Large memory usage when indexing sparse matrices with \`np.ix_\` * `#12178 `__: BUG: stats: Some discrete distributions don't accept lists of... * `#12220 `__: BUG, REL: gh_lists.py compromised scraping * `#12239 `__: BUG: median absolute deviation handling of nan Pull requests for 1.5.0 ------------------------------ * `#6510 `__: Add Eigenvalue Range Functionality for Symmetric Eigenvalue Problems * `#9525 `__: BUG: SuperLU 'NATURAL' order applies a column permutation * `#9634 `__: Add the number of Jacobian evaluations to the output of L-BFGS-B. * `#9719 `__: ENH: Added kstwo probability distribution for two-sided one-sample... * `#9783 `__: WIP: optimize: added (dense) interpolative decomposition redundancy... * `#10053 `__: Adding docstring to weibull_min and weibull_max based on issue... * `#10136 `__: DEP: Add warning to linprog_verbose_callback * `#10380 `__: ENH: add geometric_slerp * `#10602 `__: MAINT: optimize: refactor common linprog arguments into namedtuple * `#10648 `__: Bounds for the Powell minimization method * `#10673 `__: ENH: approx_fprime --> approx_derivative * `#10759 `__: ENH: calculation of region areas in spatial.SphericalVoronoi * `#10762 `__: BENCH: optimize: more comprehensive linprog benchmarking * `#10796 `__: ENH exact p-values of wilcoxon test in scipy.stats * `#10797 `__: ENH: linalg: LU with full pivoting (wrappers for ?getc2/?gesc2) * `#10824 `__: ENH: Fast gaussian kernel estimator * `#10942 `__: BUG: prevent bound violation in L-BFGS-B optimize method * `#11003 `__: ENH: add scipy.linalg.convolution_matrix * `#11023 `__: improving error message for cubic-interpolate with duplicates * `#11045 `__: MAINT: make bdt{r,rc,ri}() functions accept double n,k args +... * `#11063 `__: Fix documentation error in optimize.minimize * `#11069 `__: ENH: stats.dlaplace.rvs improvements * `#11071 `__: DOC: Added examples to maximum_position in ndimage * `#11075 `__: DOC: Update stylistic consistency in multiple files * `#11097 `__: BUG: stats: fixing chisquare to return correct results for arrays... * `#11110 `__: ENH: special: Cythonise erfinv, erfcinv * `#11112 `__: BUG: special: Return NaN outside the domain of \`eval_hermite\` * `#11114 `__: BUG: special: fix \`hyp1f1\` for nonnegative integral \`a\` and... * `#11115 `__: DOC: special: add docstrings for \`kei\`, \`ker\`, \`keip\`,... * `#11130 `__: ENH: support for circular input * `#11136 `__: BUG: expm handling of empty input * `#11138 `__: DOC: stylistic consistency, punctuation, etc. * `#11139 `__: MAINT: cluster: use cython_blas, remove handwritten BLAS wrappers * `#11146 `__: DOC: update docs on bp parameter for detrend * `#11151 `__: DOC: special: add docstrings for \`bei\`, \`ber\`, \`beip\`,... * `#11156 `__: ENH: add input validation for ellipord. * `#11157 `__: DOC: stylistic revision, punctuation, consistency * `#11160 `__: ignore warning on 0 \* inf in basin hopping * `#11162 `__: DOC: minor stylistic revision, undo changes * `#11164 `__: ENH/ BUG: Pydata sparse equality * `#11171 `__: Fix dtype validation of "seuclidean" metric V parameter * `#11177 `__: BUG: stats: Improve genpareto stats calculations. * `#11180 `__: MAINT: stats: Some clean up in test_distributions.py. * `#11187 `__: ENH: add functionality log_softmax to SciPy.special. * `#11188 `__: MAINT: add rvs method to argus in scipy.stats * `#11196 `__: DOC: special: add to docstrings of Kelvin zeros functions * `#11202 `__: BUG: fix edge counting in shortest_path * `#11218 `__: BUG: scipy/interpolate: fix PPoly/Cubic\*Spline roots() extrapolation... * `#11225 `__: Add a warning to constant input for spearmanr() function * `#11226 `__: Speed up of interior-point method for cholesky solver * `#11229 `__: BUG: Explicit dtype specification in _upfirdn.py * `#11230 `__: Additional citation for optimize tutorial * `#11231 `__: Adds SLSQP test for duplicate f-evals (#10738) * `#11236 `__: MAINT: Improved error message for Wn range in iirfilter. * `#11245 `__: ENH: optimize: dense redundancy removal routine optimizations * `#11247 `__: MAINT: Remove _lib/_numpy_compat.py * `#11248 `__: BUG: rv_discrete.ppf() to handle loc * `#11251 `__: DOC: add reference for linesearch zoom algorithm * `#11253 `__: BUG: fix kendalltau issue where p-value becomes >1 * `#11254 `__: MAINT: make special.factorial handle nan correctly * `#11256 `__: DOC: Updated documentation for scipy.linalg.qr * `#11265 `__: Fix: Can no longer slice csr_matrix in 1.3.0 * `#11267 `__: BUG: Rework the scaling in the ks_2samp two-sided exact test. * `#11268 `__: DOC: example of NonLinearConstraint * `#11269 `__: Fix: Sparse matrix constructor data type detection changes on... * `#11276 `__: BLD: update minimum Python, NumPy, Cython, Pybind11 versions * `#11277 `__: MAINT: Cleanup conditionals for unsupported numpy verisons * `#11278 `__: MAINT: Cleanup stats.iqr workarounds for unsupported NumPy versions * `#11282 `__: TST/CI: improve traceback formatting for test failures * `#11284 `__: fix docs & behavior for mode sequences in ndimage filters * `#11285 `__: DOC: special: complete the docstrings of Chi-square functions * `#11286 `__: BUG: make loadmat/savemat file opening close resources correctly * `#11287 `__: CI: skip Azure and TravisCI builds on merges and direct pushes... * `#11288 `__: DOC: Fix import in scipy.io.wavfile.read sample code * `#11289 `__: BUG: Use context manager for open * `#11290 `__: MAINT: Remove _lib._version in favour of _lib._pep440 * `#11292 `__: DOC: special: add docstrings for various convenience functions * `#11293 `__: DOC: special: fix typo in \`chdtri\` docstring * `#11296 `__: DOC: special: add to docstrings of Bessel zeros and derivatives * `#11297 `__: DOC: special: add parameters/returns sections for Bessel integrals * `#11300 `__: MAINT: Update vendored uarray version * `#11301 `__: CI: azure conditions should require succeeded() * `#11302 `__: ENH: build infrastructure for ILP64 BLAS + ARPACK conversion * `#11303 `__: DOC: special: fix typo in \`besselpoly\` docstring * `#11304 `__: ENH: MAINT: Rewrite of eigh() and relevant wrappers * `#11306 `__: TST: skip test_aligned_mem linalg test that is crashing on ppcle64 * `#11307 `__: MAINT: Fix typo 'solutuion' -> 'solution' * `#11308 `__: ENH: do not create 1d array out of a scalar * `#11310 `__: MAINT: clean up object array creation, scalar/1d confusion * `#11311 `__: DOC: Specify custom callable option for metric in cluster.hierarchy.fclusterdata * `#11316 `__: BUG: special: fix behavior for \`rgamma\` zeros * `#11317 `__: BUG: fix floating-point literal comparisons under C99 * `#11318 `__: TST: optimize: mark two linprog tests for skipping * `#11320 `__: BUG: Include \`int64_t\` declaration to \`rectangular_lsap.cpp\` * `#11330 `__: MAINT: Update vendored pypocketfft version * `#11333 `__: BUG: directed_hausdorff subset fix * `#11335 `__: [ENH] sparse: Loosen check for sparse outer indexing fast path * `#11337 `__: Undefined name 'e' in pavement.py * `#11338 `__: scipyoptdoc.py: Remove unused variable 'sixu' * `#11340 `__: xrange() was removed in Python 3 in favor of range() * `#11342 `__: range() was removed in Py3 in _binned_statistic.py * `#11343 `__: BUG: constants: fix 'exact' values table * `#11347 `__: ENH: add input validation function and apply it to needed functions * `#11348 `__: MAINT: remove six.string_types usages * `#11349 `__: MAINT: minor doc fix _minimize_trustregion_constr * `#11353 `__: MAINT: py3 remove various six usages * `#11358 `__: ENH: optimize: Use CSR format instead of LIL for speed * `#11362 `__: MAINT: sys.version_info >= 3.5 * `#11364 `__: ENH: cache square of sums for f_oneway * `#11368 `__: ENH: add optional argument, "include_nyquist", for freqz() * `#11372 `__: BENCH: optimize: added linprog presolve benchmarks * `#11376 `__: ENH: Add wrapper for ?gttrf/?gttrs * `#11377 `__: MAINT: Remove Python 2 code from tools/authors.py * `#11378 `__: ENH (WIP): Python wrapper for ?tbtrs * `#11379 `__: MAINT: Remove six.with_metaclass from benchmarks/cython_special.py * `#11380 `__: BUG: sparse/isolve: bicg and qmr don't treat x0 correctly * `#11382 `__: MAINT: remove error throw in binned_statistic_dd() on non-finite... * `#11383 `__: MAINT: _lib: remove py2 compat shims in getargspec * `#11384 `__: MAINT: Use numpy scalar types directly * `#11385 `__: ENH: special: add spherical Bessel functions to \`cython_special\` * `#11389 `__: MAINT: line.startswith shouldn't be bytes * `#11393 `__: ENH: Speed up truncnorm's ppf()and rvs() methods * `#11394 `__: MAINT: Remove self._size (and self._random_state) from stats... * `#11395 `__: correction in error message (%d->%g format) * `#11396 `__: DOC: revert gh10540, removing mtrand * `#11397 `__: MAINT: differential_evolution accepts np.random.Generator * `#11402 `__: ENH: stats can use np.random.Generator * `#11404 `__: ENH: add docstring of butter() for transfer function syntax problem * `#11405 `__: DOC: Fix "see also" for SmoothBivariateSpline * `#11408 `__: ENH: Add a \`plan\` argument to FFT functions in \`scipy.fft\` * `#11411 `__: MAINT: check minimize duplicate evaluations * `#11418 `__: ENH: Linalg: Python wrapper for ?geqrfp * `#11419 `__: TST: Python 3.7 mac OS gcc multibuild fix * `#11423 `__: ENH: Add tool to lint diffs * `#11425 `__: FIX: _array_newton should preserve complex inputs * `#11426 `__: MAINT: licence for global optimization benchmarks * `#11431 `__: Make median_absolute_deviation scale argument aligned w/iqr * `#11432 `__: Fix error message typo * `#11433 `__: DOC: Remove L from longs * `#11434 `__: MAINT: Python3 improvements to refguide_check.py * `#11435 `__: DOC: Update runtest --parallel help * `#11436 `__: MAINT: Remove checks for sys.version < 3.5 * `#11437 `__: DOC: Fix documentation issue * `#11439 `__: Support path objects (PEP 519) in mmio functions * `#11440 `__: correct bounds pass in run_dualannealing for benchmarks/optimize.py * `#11443 `__: BENCH: optimize_linprog remove ImportError exception * `#11453 `__: BUG: sparse: convert csc/csr indices to int64 as needed * `#11454 `__: DOC: Remove caveat on \`maximum_bipartite_matching\` * `#11455 `__: BUG: Fix _lib._util.getargspec_no_self lack of KEYWORD_ONLY support. * `#11456 `__: Implementation of khatri_rao product * `#11459 `__: BUG: fix augmentation being broken in maximum_bipartite_matching * `#11461 `__: MAINT: minor spelling corrections in comments in SciPy.sparse.linalg.arpack * `#11467 `__: [MRG] Make result data type of KDE evaluation like in the input... * `#11469 `__: Update integrate.quad documentation * `#11472 `__: Fixed result typo * `#11476 `__: DOC: stats: Copy-edit the anderson docstring. * `#11478 `__: ENH: avoid unnecessary array copies in matrix product * `#11481 `__: BUG: Make special.hyperu return nan if any argument is nan * `#11483 `__: BUG: Fixed \`_kpp\` initialization on \`scipy.cluster.vq\`, closing... * `#11485 `__: ENH: Update docstring of class KrylovJacobian to fix #2744 * `#11486 `__: BUG: make special.eval_hermite return nan if second argument... * `#11487 `__: ENH: improve docstring of correlate and correlate2d to fix #1968 * `#11488 `__: FIX: change "func -> fun" of scipy.optimize _root.py to solve... * `#11489 `__: BUG: fixes typo introduced in PR #11253 in stats.mstats.kendalltau() * `#11490 `__: DOC: fix typo in scipy/io/matlab/mio4.py * `#11495 `__: MAINT: refactor slsqp to fix issue in callback function * `#11498 `__: [DOC] mention graph cuts in maximum flow docstring * `#11499 `__: DOC: Improve documentation of scipy.signal.signaltools.wiener * `#11506 `__: DOC: Fix typo in documentation of scipy.stats.morestats * `#11508 `__: ENH: avoid copy on sparse __init__ when dtype is given * `#11509 `__: ENH: avoid unnecessary array copies in matrix product (again) * `#11510 `__: [DOC] An ex. for creating arbitrary size tri-diagonal * `#11511 `__: TST: pin numba for Travis/sparse * `#11513 `__: TST: disable NumPy cache dir ppc64le * `#11514 `__: BUG: make special.eval_genlaguerre return nan if passed nan * `#11517 `__: ENH: improve sparse.lil.tocsr performance * `#11519 `__: Fix fresnel documentation * `#11520 `__: BUG: make special.eval_gegenbauer return nan if passed nan * `#11524 `__: ENH: Cosine Sine Decomposition * `#11526 `__: BUG: fix SLSQP max iteration setting to fix #4921 * `#11527 `__: ENH: improve docstring of weibull_min_gen and weibull_max_gen... * `#11530 `__: MAINT: Removed 3 unused imports, 3 unused assignments from ndimage. * `#11531 `__: DOC: fix typos in bdtr and bdtrc from gh PR 11045 * `#11532 `__: MAINT: Fixed several unused imports and unused assignments from... * `#11533 `__: MAINT: Fixed about 100 unused imports, unused assignment warnings... * `#11534 `__: FIX: Allow non-native byte order inputs to scipy.fft * `#11535 `__: MAINT: Fixed several unused imports in _lib. * `#11536 `__: MAINT: Fixed several unused imports and unused assignments in... * `#11537 `__: MAINT: Removed an unused import in scipy/constants. * `#11538 `__: MAINT: Fixed several unused imports in scipy/fft. * `#11539 `__: MAINT: Fixed several unused imports and unused assignments in... * `#11540 `__: MAINT: Fixed two unused imports in scipy/misc. * `#11541 `__: MAINT: Fixed several unused imports and unused assignments in... * `#11542 `__: MAINT: Fixed an unused import in scipy/odr. * `#11543 `__: MAINT: Fixed several unused imports and unused assignments in... * `#11544 `__: MAINT: Fixed unused imports and unused assignments in scipy/integrate. * `#11545 `__: MAINT: Removed unused imports and fixed unused assignments in... * `#11546 `__: MAINT: Removed unused imports; fixed unused assignments in scipy/signal. * `#11547 `__: MAINT: Removed unused imports; fixed unused assignments in scipy/spatial * `#11548 `__: MAINT: Removed unused imports; fixed unused assignments in scipy.sparse. * `#11549 `__: MAINT: Replace xrange with range * `#11560 `__: MAINT: stats: remove an _argcheck call * `#11573 `__: MAINT: Removed unused imports; fixed unused assignments in scipy/stats. * `#11574 `__: MAINT: Small change to \`optimize.nnls\` error messages. * `#11575 `__: MAINT: Update sytrd/hetrd tests * `#11582 `__: MAINT: fix typo in quadpack.py closes #11448 * `#11585 `__: TST: add openblas_support.py * `#11587 `__: BUG: Differential evolution with LinearConstraint with sparse... * `#11588 `__: MAINT: Fully display problem size in lsmr/lsqr. * `#11589 `__: MAINT: Remove Python 2 workarounds * `#11590 `__: MAINT: Remove Python2 module init * `#11605 `__: Standardization of bounds in _linprog_util.py * `#11608 `__: BUG: fix use of is in DE callback * `#11614 `__: TST, MAINT: TestCtypesQuad skip with pytest * `#11619 `__: ENH: add nan_policy argument and functionality to stats.mstats.winsorize * `#11621 `__: MAINT: Cleanup uses of PY_VERSION_HEX, NPY_PY3K in ndimage * `#11622 `__: MAINT: Cleanup uses of PY_VERSION_HEX, NPY_PY3K in sparse * `#11623 `__: MAINT: Remove unnecessary 'from __future__ import ...' statements * `#11626 `__: MAINT: Cleanup uses of PY_VERSION_HEX * `#11627 `__: ENH: add analytic formula for normal moments * `#11628 `__: MAINT, TST: adjust azure for matplotlib release * `#11631 `__: Revert to old behaviour for constant cost matrices in \`linear_sum_assignment\` * `#11632 `__: MAINT: Define ARRAY_ANYORDER with DEF instead of cdef * `#11639 `__: BUG: interpolate/interp1d: fail gracefully on all-nan inputs * `#11640 `__: MAINT: Fix BLAS3 trmm wrapper for "side" arg * `#11642 `__: TST, MAINT: remove dead code in Travis CI * `#11643 `__: MAINT: fix conversion in binom_test * `#11645 `__: MAINT: Assorted clean up. * `#11646 `__: MAINT: Remove unnecessary 'from __future__ import ...' statements * `#11647 `__: DOC: document return_all arguments * `#11648 `__: Perform geometric slerp in quaternion space * `#11651 `__: DOC: Update paper URL in lambertw documentation * `#11653 `__: PERF: Switch to C++ STL std::nth_element * `#11655 `__: MAINT: Remove Python2 cStringStream * `#11657 `__: ENH: Add wrapper for ?pttrf/?pttrs * `#11664 `__: ENH: Add wrapper for ?gejsv * `#11665 `__: ENH: Add wrapper for ?pteqr * `#11667 `__: BUG: Non-central Fisher distribution (fix nan-values when nc=0) * `#11668 `__: ENH: Add wrapper for ?gtsvx * `#11671 `__: TST, CI: restore Azure temporarily * `#11672 `__: Add warning to medfilt when array size < kernel_size * `#11674 `__: TST: bump test precision for two np.dot related linalg tests. * `#11675 `__: MAINT: pycodestyle clean-up * `#11677 `__: ENH: Add wrapper for ?ptsvx * `#11679 `__: BENCH: cKDTree benchmarks added: balanced/unbalanced tree (related... * `#11680 `__: MAINT: rng_integers allows RandomState.randint or Generator.integers * `#11683 `__: BUG: fix mode='mirror' on length 1 axes * `#11684 `__: BUG: fix scipy.special.voigt_profile * `#11687 `__: MAINT: sparse.linalg: avoid importing from \`np.core\` * `#11688 `__: ENH: mypy: get specific about ignoring missing imports * `#11690 `__: MAINT: mypy: fix errors about incompatible types in lists * `#11692 `__: MAINT: mypy: fix remaining type errors * `#11694 `__: TST, MAINT: bump to OpenBLAS 0.3.9 stable, raise tol for Win... * `#11697 `__: DOC: fix pdf of norminvgauss in scipy.stats * `#11701 `__: MAINT: special: add rudimentary types for \`_ufuncs\` extension... * `#11702 `__: BUG: Fixed a post-merge bug for eigh() * `#11703 `__: Improves docstring with consistent L2-norm * `#11705 `__: DOC: Slerp the SphericalVoronoi docstring * `#11706 `__: ENH: mypy: add \`--mypy\` option to \`runtests.py\` * `#11710 `__: ENH: Modified stats.kstest() to use the exact stats.kstwo.sf()... * `#11715 `__: DOC: add .. versionadded:: to as_matrix/from_matrix in spatial/transf??? * `#11716 `__: BENCH: fix benchmark imports for \`\`optimize_linprog.py\`\` * `#11721 `__: MAINT: io: Remove now-unnecessary \`# type: ignore\` * `#11722 `__: MAINT: mypy: remove mpmath from the ratchet * `#11726 `__: Handle constant input for scipy.stats.f_oneway * `#11729 `__: BENCH: optimize: added infeasible benchmarks for linprog * `#11731 `__: fix inaccurate information about Mac OS compiler (#11696) * `#11733 `__: Fix inaccurate docstring example of HalfspaceIntersection * `#11734 `__: Doc: fix inaccurate docstring of SmoothBivariateSpline. * `#11735 `__: Bug: stats: fix wrong shape from median_absolute_deviation for... * `#11736 `__: ENH: add input validations and its tests for FITPACK in fitpack2.py * `#11737 `__: BUG: Prevent crashes due to MKL bug in ?heevr * `#11739 `__: MAINT: special: add type stubs for \`_test_round.pyx\` * `#11740 `__: MAINT: special: remove unused specfun f2py wrappers * `#11741 `__: BUG: fix small tolerances handling for minpack and add a test. * `#11743 `__: Doc: fix docstring of rfft, rfft2, rfftn, irfft, irfft2, irfftn... * `#11744 `__: MAINT: Remove unused py3k.h code * `#11745 `__: DOC: stats: Clean up ncf documentation. * `#11748 `__: MAINT: special: type \`cython_special\` as \`Any\` * `#11750 `__: MAINT: type hints for \`_spherical_voronoi\` * `#11752 `__: DOC: fix docstring of scipy.optimize.least_squares * `#11753 `__: ENH: add input validation for dendrogram and a test. * `#11755 `__: MAINT: Replace uses of tostring with tobytes * `#11757 `__: ENH: improve binned_statistics_2d performance. * `#11759 `__: ENH: optimize: add HiGHS methods to linprog * `#11760 `__: MAINT: Remove FileStream replaced by GenericStream * `#11761 `__: MAINT: Replace npy_3kcompat.h shims * `#11765 `__: TST: Speedup test_pascal which is VERY slow on Azure * `#11766 `__: TST: speed up differential_evolution L8 test * `#11767 `__: Change comment in continuous rv gamma fit function * `#11776 `__: Add domain option for resample. * `#11784 `__: BUG: Fixed calculation of nonzero elements in scipy.sparse.random * `#11786 `__: ENH: stats: add axis keyword argument to scipy.stats.rankdata * `#11789 `__: Doc: fix docstring of scipy.spatial.chebyshev * `#11792 `__: DOC: dev: add guidelines for developing public Cython APIs * `#11794 `__: MAINT: add comments explaining a problem in cython_optimize organization * `#11796 `__: DOC: add a note about precision losing in csgraph.minimum_spanning_tree... * `#11797 `__: ENH: Allow negative \`axis\` in \`interpolate.BSpline\`. Also... * `#11798 `__: Add simplify_cells parameter to scipy.io.loadmat * `#11801 `__: MAINT, DOC: minor changes of ratio-of-uniforms in scipy.stats * `#11802 `__: BUG: fix scipy.odr to handle multidimensional independent and... * `#11803 `__: scipy.stats.trapz: Use analytic formulas for stats and entropy. * `#11808 `__: DOC: add Examples in the scipy.interpolate.interpn docstring. * `#11809 `__: Duplicate entries are added together in csr_matrix constructor * `#11813 `__: MAINT: bump pyflakes to version 2.1.1 * `#11814 `__: BUG: scipy.sparse.csr doctest failing with incorrect output value * `#11817 `__: DOC: add Examples in the scipy.optimize.leastsq docstring * `#11820 `__: ENH: Raise an error on incorrect bounds format in optimize.fmin_l_bfgs_b * `#11822 `__: CI: add github actions for macOS * `#11824 `__: DOC: add Examples in scipy.optimize.line_search docstring (line_search_wolfe2) * `#11830 `__: TST: Always use fork for multiprocessing in fft tests * `#11831 `__: DOC: add Examples and Returns in scipy.misc.central_diff_weights... * `#11832 `__: DOC: stats: Some small corrections to a couple docstrings. * `#11833 `__: BUG: Fix compiler_name when there are paths used in flags * `#11836 `__: MAINT: re-introduce multiprocessing tests on Python3.8 * `#11837 `__: Doc: add Examples in scipy.optimize.fsolve docstring * `#11838 `__: Doc: add Examples in scipy.sparse.linalg.minres docstring * `#11840 `__: BUG: sparse.linalg: fix overflow in expm intermediate computation * `#11842 `__: BLD: fix build with gfortran 10 * `#11843 `__: MAINT: Simplify floats in constants.py * `#11847 `__: DOC: add a tutorial of scipy.optimize.linprog * `#11849 `__: ENH: speed up geninvgauss by using cython * `#11852 `__: CI: remove osx from travisCI * `#11857 `__: BUG: Change parameter fc of gausspulse to float. * `#11861 `__: order = degree + 1 for splines * `#11863 `__: Make g77 ABI wrapper work with gfortran ABI lapack * `#11866 `__: MAINT: add type ignores to sympy and matplotlib imports * `#11867 `__: CI: Add arm64 in travis-ci * `#11869 `__: DOC: signal: Add an example to the lsim2 docstring. * `#11870 `__: DOC: signal: Use impulse instead of impulse2 in the impulse example... * `#11871 `__: ENH: type ufuncs in special as ufuncs instead of Any * `#11872 `__: BUG: avoid recomputing in scipy.optimize.optimize.MemoizeJac * `#11873 `__: DOC: signal: Fix ODE in impulse and impulse2 docstrings. * `#11874 `__: DOC: add Examples of docstring for scipy.interpolate.approximate_taylor_polynomial * `#11878 `__: DOC: fixed a typo under scipy/integrate/quadrature.py * `#11879 `__: BUG: Fix index arrays overflow in sparse.kron * `#11880 `__: DOC: stats: Add Examples for bartlett, fligner, levene. * `#11881 `__: MAINT: normalise numpy-->np in optimize.py * `#11882 `__: DOC: add Examples for scipy.io.readsav docstring. * `#11883 `__: DOC: add Returns and Examples for scipy.ndimage.correlate() docstring * `#11885 `__: BUG: stats: Handle multidimensional arrays in f_oneway, and more. * `#11889 `__: DOC: signal: Unify lsim and lsim2 examples. * `#11896 `__: BUG: stats: Fix handling of size 0 inputs for ttest_rel and ttest_ind. * `#11897 `__: DOC: Remove misleading default values from fit method * `#11898 `__: MAINT: LinearVectorFunction.J is ndarray closes #11886 * `#11902 `__: BUG: linalg: test_heequb failure * `#11904 `__: fix real-to-real transforms for complex inputs and overwrite_x=True * `#11906 `__: DOC: stats: fix error caused by trapz docstring * `#11907 `__: BUG: stats: fixed SEGFAULT from Issue #9710 * `#11912 `__: ENH: Respect matplotlib color palette with hierarchy/dendrogram. * `#11914 `__: DOC: refine doc for spatial.distance.squareform * `#11915 `__: ENH: Ndim linear operator * `#11919 `__: ENH: expose "window_size" parameter in find_peaks_cwt() * `#11920 `__: DOC: explain M, diffev * `#11923 `__: CI: macOS install swig closes #11922 * `#11924 `__: DOC: add Examples for scipy.optimize.bracket() docstring * `#11930 `__: DOC: add Examples and clean up for signal.qspline1d and signal.qspline_eval... * `#11931 `__: DOC: add Examples for sparse.linalg.bicg docstring. * `#11933 `__: DOC: Add original reference for Yao-Liu objective functions * `#11934 `__: DOC, MAINT: mailmap update * `#11935 `__: DOC: make scipy.stats.mode documentation reflect that the function... * `#11936 `__: ENH: special: add type stubs for \`orthogonal.py\` * `#11937 `__: DOC: Add docstring examples to fft2, ifft2, io.savemat * `#11938 `__: MAINT: add helper function for deprecating Cython API functions * `#11942 `__: MAINT: ignore conditional import in _lib/_util * `#11943 `__: MAINT: special: add types for geterr/seterr/errstate * `#11946 `__: MAINT: add py.typed marker * `#11950 `__: TST:MAINT: separated and stabilized heequb tests * `#11952 `__: DOC: update toolchain roadmap for py38, C99, C++11/14 * `#11957 `__: MAINT: Use np.errstate context manager instead of np.seterr. * `#11958 `__: MAINT: interpolate: Remove some trailing spaces. * `#11960 `__: MAINT: Cleanup Python2 compatibility code * `#11961 `__: MAINT: Remove numpy/npy_3kcompat.h from _superluobject.c * `#11962 `__: DOC: Fix type of \`codes\` in docstring of \`_vq._vq()\` * `#11964 `__: MAINT: Cleanup unused IS_PYPY * `#11969 `__: DOC: add Examples and fix docstring for special.airye * `#11970 `__: BUG: sparse: 'diagonal' of sparse matrices fixed to match numpy's... * `#11974 `__: BUG: Reshape oaconvolve output even when no axes are convolved * `#11976 `__: MAINT: add logo for github actions * `#11977 `__: CI: test bleeding edge Python * `#11979 `__: DOC: add Examples for stats.ranksums() docstring. * `#11982 `__: Fix KMeans++ initialisation slowness * `#11983 `__: DOC: add Examples for stats.mstats.argstoarray() docstring. * `#11986 `__: Avoid bugs in ndimage when the output and input arrays overlap... * `#11988 `__: ENH: Override fit method of Laplace distribution with Maximum... * `#11993 `__: TST, CI: Azure Windows path fixups * `#11995 `__: MAINT, CI: remove custom mingw Azure * `#11996 `__: DOC: add Examples and fix pep warning for fft.set_global_backend... * `#11997 `__: MAINT, CI: Azure OpenBLAS simplify * `#11998 `__: BENCH: Run against current HEAD instead of master * `#12001 `__: ENH: stats: Implement _logpdf for the maxwell distribution. * `#12004 `__: DOC: add examples for integrate.quad_vec() and integrate.quad_explain() * `#12005 `__: MAINT: Use helper functions in ?tbtrs tests * `#12007 `__: MAINT: updated LICENSES_bundled for pybind11 and six * `#12008 `__: DOC: roadmap update * `#12009 `__: ENH: optimize: support 64-bit BLAS in lbfgsb * `#12010 `__: ENH: sparse.linalg: support 64-bit BLAS in isolve * `#12012 `__: DOC: add Examples for interpolate.barycentric_interpolate(),... * `#12013 `__: MAINT: remove last uses of numpy.dual * `#12014 `__: CI: print 10 slowest tests * `#12020 `__: MAINT: Removed handling of circular input in SphericalVoronoi * `#12022 `__: DOC : added default value of absolute_sigma to False in scipy.optimize.curve_fit docs * `#12024 `__: DOC: add Examples for io.hb_read() and io.hb_write() * `#12025 `__: MAINT: Remove numpy/npy_3kcompat.h from nd_image * `#12028 `__: Spelling correction * `#12030 `__: ENH: optimize/_trlib: support ILP64 blas/lapack * `#12036 `__: MAINT: Add some generated C files .gitignore * `#12038 `__: MAINT, CI: Travis rackcdn->conda.org * `#12039 `__: MAINT: signal: Lower the resolution of the plots in the chirp... * `#12040 `__: DOC: add Examples for ndimage.spline_filter1d() and spline_filter()... * `#12044 `__: MAINT: combine apt-get update and apt-get install into one RUN * `#12045 `__: TST: Reduce size of test_diagonal_types to speed up tests * `#12046 `__: MAINT: Remove unused npy_3kcompat.h * `#12047 `__: MAINT: Cython 3.0 compat * `#12050 `__: DOC: add download number badges of PyPI and conda-forge in README.rst * `#12052 `__: DOC: add Examples odr.models.polynomial() and fix odr.odr docstring... * `#12056 `__: ENH: Modifies shapiro to return a named tuple * `#12057 `__: Adding my name into THANKS.txt * `#12060 `__: TST: Reduce number of test_diagonal_types configs * `#12062 `__: TST: Change dec.slow to pytest.mark.slow * `#12068 `__: ENH: Modifies jarque_bera to return a named tuple * `#12070 `__: MAINT, CI: appveyor rack->conda.org * `#12072 `__: TST: filter out factorial(float) deprecation warning * `#12078 `__: TST: Skip test on colab with large memory alloc * `#12079 `__: DOC: Remove Python2 reference from stats tutorial * `#12081 `__: DOC: add Examples docstring for optimize.show_options() * `#12084 `__: BUG: interpolate: fix BarycentricInterpolator with integer input... * `#12089 `__: ENH: spatial/qhull: support ILP64 Lapack * `#12090 `__: ENH: integrate: support ILP64 BLAS in odeint/vode/lsoda * `#12091 `__: ENH: integrate: support ILP64 in quadpack * `#12092 `__: BUG: Fix dropping dt in signal.StateSpace * `#12093 `__: MAINT: Rollback python2.6 workaround * `#12094 `__: MAINT: \`openblas_support\` hash checks * `#12095 `__: MAINT: ndimage: change \`shares_memory\` to \`may_share_memory\` * `#12098 `__: Doc: change 4 model instances of odr to be instances of \`Model\`... * `#12101 `__: Removed more unused imports and assignments. * `#12107 `__: ENH: Area calculation for 2D inputs in SphericalVoronoi * `#12108 `__: MAINT: ensure attributes have correct data type in \`SphericalVoronoi\` * `#12109 `__: degree is not order in splines * `#12110 `__: ENH: More helpful/forgiving io.wavfile errors * `#12117 `__: BUG: fix newline * `#12123 `__: [MAINT] Fix error on PyData/Sparse import. * `#12124 `__: TST: Always test matmul now that Python3.5+ is required * `#12126 `__: TST: Cleanup unused matplotlib code. * `#12127 `__: DOC: update docstrings of signal.cspline2d, qspline2d, sepfir2d * `#12130 `__: MAINT: Fixing broken links with linkchecker * `#12135 `__: ENH: linalg: Add the function convolution_matrix. * `#12136 `__: MAINT: Cleanup np.poly1d hack * `#12137 `__: TST, CI: reproduce wheels 32-bit setup * `#12140 `__: TST: stats: add kstwo, ksone to slow tests. * `#12141 `__: Support 64-bit integer size in Fitpack * `#12151 `__: DOC: Correct Rosenbrock function sum * `#12159 `__: BUG: Fix length calculation in upfirdn * `#12160 `__: BUG: Fix M_PI * `#12168 `__: DOC: add an obsolete version checking javascript to doc release... * `#12171 `__: CI, MAINT: Azure OpenBLAS drive flip * `#12172 `__: ENH: Bounds for the Powell minimization method * `#12175 `__: BLD: support more Fortran compilers for ilp64 and macro expansion... * `#12179 `__: BUG: stats: A few distributions didn't accept lists as arguments. * `#12180 `__: MAINT: removed redundant import in SphericalVoronoi tests * `#12181 `__: DOC: for versionwarning don't use $.getScript * `#12182 `__: MAINT: random sampling on the hypersphere in SphericalVoronoi... * `#12194 `__: MAINT: Module and example cleanups for doc build * `#12202 `__: ENH: tool to DL release wheels from Anaconda * `#12210 `__: Remove py.typed marker (at least for the release) * `#12217 `__: BUG: stats: Fix handling of edge cases in median_abs_deviation. * `#12223 `__: BUG: stats: wilcoxon returned p > 1 for certain inputs. * `#12227 `__: BLD: Set macos min version when building rectangular_lsap * `#12229 `__: MAINT: tools/gh_lists.py: fix http header case sensitivity issue * `#12236 `__: DOC: Fix a couple grammatical mistakes in 1.5.0-notes.rst. Checksums ========= MD5 ~~~ 06ae131459a8f9f3c937fd93df34941d scipy-1.5.0rc1-cp36-cp36m-macosx_10_9_x86_64.whl dccbe43624b6653f6456573507575cee scipy-1.5.0rc1-cp36-cp36m-manylinux1_i686.whl d8f025f467888674450ed38515083494 scipy-1.5.0rc1-cp36-cp36m-manylinux1_x86_64.whl 64c3f1654e715bc08fc7e092b8262c30 scipy-1.5.0rc1-cp36-cp36m-win32.whl 3a8ec7956496ed7ee72beaf00421b1d0 scipy-1.5.0rc1-cp36-cp36m-win_amd64.whl 7e6860a337c06d79a19fbef7174acd41 scipy-1.5.0rc1-cp37-cp37m-macosx_10_9_x86_64.whl d825cf7fe16d80ad3584492589dc3460 scipy-1.5.0rc1-cp37-cp37m-manylinux1_i686.whl 919412506218a00076538d8af5d7298d scipy-1.5.0rc1-cp37-cp37m-manylinux1_x86_64.whl 2979169481de902e252dc451154c477a scipy-1.5.0rc1-cp37-cp37m-win32.whl 5f48084c65734a4aeae510f21bcf792a scipy-1.5.0rc1-cp37-cp37m-win_amd64.whl 892607da25980af624c4a0cd82ff557f scipy-1.5.0rc1-cp38-cp38-macosx_10_9_x86_64.whl fb0bcb4d0646e28e093154a98d3bf3eb scipy-1.5.0rc1-cp38-cp38-manylinux1_i686.whl 827b361a0db6671b42ed5aad4a8a906c scipy-1.5.0rc1-cp38-cp38-manylinux1_x86_64.whl f71920b927c3d2eaed4df6c65407a56a scipy-1.5.0rc1-cp38-cp38-win32.whl eacc04102822177622c4e0d5061d580d scipy-1.5.0rc1-cp38-cp38-win_amd64.whl 4dccc1db984fc0fb92697e464774e4da scipy-1.5.0rc1.tar.gz fad54bb2d322f02d4050e521cb856a27 scipy-1.5.0rc1.tar.xz 62867d716dfcb8ae9bd907da479c6926 scipy-1.5.0rc1.zip SHA256 ~~~~~~ ce0164965caadd3a53583ad63643679ccea70b6bb25a691e4a74d3e87e3fffea scipy-1.5.0rc1-cp36-cp36m-macosx_10_9_x86_64.whl 6591dc05981308fb620c3705bf684b57241b73fe9369748f36eaf7069969c67e scipy-1.5.0rc1-cp36-cp36m-manylinux1_i686.whl b5d756e25e26184d19172db49b185a05c618d7c1323588fa261563b451b0dc7b scipy-1.5.0rc1-cp36-cp36m-manylinux1_x86_64.whl a705d1c6b8b9b7a3f5f57aec792be3fce2d65cdf49a8559852084aa18c57af1e scipy-1.5.0rc1-cp36-cp36m-win32.whl d395b63f6bfb737f3b45c8253af7e1761af1cc015db7347cbaacf1f643f3f7b8 scipy-1.5.0rc1-cp36-cp36m-win_amd64.whl 1f57d75c49f6c8b17b4d9217011e5ecca4d04941eb79a465bdfdf9591f09a312 scipy-1.5.0rc1-cp37-cp37m-macosx_10_9_x86_64.whl 38cf18ab60d853113137229e328c97719c22b02d3bf8873349472103015de5f7 scipy-1.5.0rc1-cp37-cp37m-manylinux1_i686.whl 1f402f14e726d41fd34e30b6c54daac36ac84ee64c4a430ed4b5ec016705e053 scipy-1.5.0rc1-cp37-cp37m-manylinux1_x86_64.whl 52998372c9179ebfbf7e875e4cb29137d4edc2b9d6614c5e57a180501dacf4f0 scipy-1.5.0rc1-cp37-cp37m-win32.whl fb642c6c4a19feeeee84a74d1e38c16952fde36c752e4c4a8ed70f9e4d70d5c7 scipy-1.5.0rc1-cp37-cp37m-win_amd64.whl eabc685cae91a899f6eff8aed3db3df2ad884df3b46f85314b5ca016d5bb93ea scipy-1.5.0rc1-cp38-cp38-macosx_10_9_x86_64.whl 52b693c1f842e126efb7882038680fed920fc2014cad3a16da4673e41dc8d0a9 scipy-1.5.0rc1-cp38-cp38-manylinux1_i686.whl 25db07c206d81c9dd9b9a0ea4ea4a134026e4cddc83968e99bc2b95ce2b3c760 scipy-1.5.0rc1-cp38-cp38-manylinux1_x86_64.whl 2a0d8504a08507d6e7b5c2b65db11fdb10ca63245166a5496fe3a781d0d9a452 scipy-1.5.0rc1-cp38-cp38-win32.whl 142649a4487e8849aa7e3ea11e010f6201683ed56adc02270d2c7a8cdb93a7e8 scipy-1.5.0rc1-cp38-cp38-win_amd64.whl e90d679b96b9cbd249e900b2d03558bb01ae161aa9400e9b6cd435cce82552ea scipy-1.5.0rc1.tar.gz e662fba1716763204a38293bf7a157af42c72dec3fc0ea55ff83dc8f49fbf0b5 scipy-1.5.0rc1.tar.xz 90f6fb35601d3ce52cdc9d53888a92504efec9a267a524bc33ad66a407ce070d scipy-1.5.0rc1.zip -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJe0sVbAAoJELD/41ZX0J71n/4P/3012tbgm9o+SaGUiaQy6PGj TqzuX9vRbJipUUODVXQjDJz85oEKOlTLYFeTB1gS27p1s1DpsGs5rDhPv2t0DFUL MKDFYGt3xwQf+3JTJXBAuEyIl62H/YrwIUvVJic9lzJ+b/lPm+5G4ax+Iso1H/x+ 2hN/KiFsKS/ckQ3P2GYvTmW2WGVhacYd1qJM0NNBJa+12nJmLeFlHrWzC6D3hrT/ w1dlVGW7dbEBpRQ6IrH/TFY+8I+my3DyJlnhCDsKOoSRFvZSAXX5Ajsj9jB3s1l1 vRy/fjM7uTk6WBwLkfi64o01Z0RKL3wB0+mpjXEZd39IayjPT5vzS2iHm1gnpXzv uxW+Btfem6XJlVEXeG9R7BWe7SDJq1f009QIlUfCB35k/G5y1Cd+F+I4l4hB/Vw+ 2zoUgfJT9m/r0VZ2bvoIzLx8Q3fDtFceqMbxSy1HCQ/7BYJ/w/PM8eChKsBj7SgJ BXh8EzVpSMeWTVuGWtztl9sZKGKJKkEVxuOVVze4V9PNkW4sQDNcz5YmPsfpQHvc dIrivDKMAlxbOT8nUEZ8bAd6AaN5i9E8+450XmfN307Q1sRj1X5JdhtZTqITs1w1 /RBgwvM8XaQLn0wd8QtwVaEkyd5gu/ui0yPzwJ2WEb5zz5VbbHacm6pDR8avTXQW zdR9OHUlD+Zgvah64iAW =INrS -----END PGP SIGNATURE----- -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Sat May 30 17:46:10 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Sat, 30 May 2020 15:46:10 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: I note that some author names with "special characters" do have issues with some parts of the release cycle where the release notes are copy-pasted from one medium to another (email & GitHub releases in particular). Also, some parts of the release process (quite possibly "paver write_release_and_log") introduce small flaws into the release notes (underlines "---------" gain a spurious space "- --------", and bullet lists get another bullet ("-" to "- -"). I correct these manually to the extent reasonable, but I do not currently manually correct the pasted author names. The "-" issue has existed for all releases in recent memory; the author names/encoding issue probably depends on how I copy/paste (which OS/text editor, etc.). On Sat, 30 May 2020 at 10:56, Tyler Reddy wrote: > The 1.5.0rc1 wheels are slightly delayed because I had to bump Cython > version in the wheels branch to match our Cython bump in the main repo. > That'll cost about half a day of time, so maybe later tonight or tomorrow I > can put those out. > > On Mon, 25 May 2020 at 15:25, Tyler Reddy > wrote: > >> Early draft 1.5.0 release notes PR is open: >> https://github.com/scipy/scipy/pull/12221 >> >> Please do help improve/fix issues there. >> >> Best wishes, >> Tyler >> >> On Fri, 22 May 2020 at 03:48, Ralf Gommers >> wrote: >> >>> >>> >>> On Fri, May 22, 2020 at 2:02 AM Eric Larson >>> wrote: >>> >>>> +1 for bumping it before 1.5.0 branching. It is indeed a risk, but it's >>>> a minor version change so hopefully just makes things work better. >>>> >>> >>> +1 from me too, that should always be fine if CI is green, >>> >>> Ralf >>> >>> >>>> Eric >>>> >>>> >>>> On Thu, May 21, 2020 at 7:44 PM Tyler Reddy >>>> wrote: >>>> >>>>> Any objections to bumping our minimum Cython version from 0.29.14 to >>>>> 0.29.18 to support: https://github.com/scipy/scipy/pull/11385 ? >>>>> >>>>> We do typically bump Cython versions regularly, though just a few days >>>>> before branching might be asking for trouble? >>>>> >>>>> Best wishes, >>>>> Tyler >>>>> >>>>> On Fri, 8 May 2020 at 01:30, Ralf Gommers >>>>> wrote: >>>>> >>>>>> >>>>>> >>>>>> On Wed, May 6, 2020 at 4:49 AM Tyler Reddy >>>>>> wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> SciPy 1.4.0 was released December 16 (~ 5 months ago), and I think >>>>>>> we'd like to keep a roughly biannual release cadence. >>>>>>> >>>>>>> I'd like to propose the following schedule for 1.5.0: >>>>>>> - May 26/2020: branch 1.5.x >>>>>>> - May 29/2020: rc1 >>>>>>> - June 11/2020: rc2 (if needed) >>>>>>> - June 20/2020: final release >>>>>>> >>>>>> >>>>>> Sounds good to me. >>>>>> >>>>>> >>>>>>> Complicating factors this time around may include attempts at >>>>>>> providing ARM/ppc64le wheels and the continued migration from rackspace -> >>>>>>> anaconda.org for asset hosting in both the main and wheels repos. >>>>>>> >>>>>> >>>>>> Looks like the anaconda.org migration is going well, thanks to Tyler >>>>>> and everyone else who is pitching in. Having arm64/ppc64le wheels would be >>>>>> great, we're pretty far along. Not a blocker though - they could be >>>>>> uploaded later. Having CI for both platforms in place now is a good place >>>>>> to start from. >>>>>> >>>>>> >>>>>>> As always, it is a good idea to start tagging things that should be >>>>>>> in 1.5.0 & please do help with reviewing PRs/issues that are >>>>>>> tagged--current counts are: >>>>>>> >>>>>>> - 23 open issues with 1.5.0 milestone >>>>>>> - 38 open PRs with 1.5.0 milestone >>>>>>> >>>>>> >>>>>> I bumped a few milestones and merged some PRs, it's down to 53 total. >>>>>> There's a bunch of PRs that we really need to review, but not any really >>>>>> problematic issues it looks like. >>>>>> >>>>>> >>>>>>> While helping with that, also great if the release notes wiki is >>>>>>> updated for appropriate changes: >>>>>>> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >>>>>>> >>>>>>> >>>>>>> Curating those final notes can be painful if the wiki isn't updated. >>>>>>> >>>>>>> Thoughts/objections for the schedule? >>>>>>> >>>>>> >>>>>> Thanks for leading the charge again Tyler. >>>>>> >>>>>> Cheers, >>>>>> Ralf >>>>>> >>>>>> >>>>>> >>>>>>> Best wishes, >>>>>>> Tyler >>>>>>> _______________________________________________ >>>>>>> SciPy-Dev mailing list >>>>>>> SciPy-Dev at python.org >>>>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>>>> >>>>>> _______________________________________________ >>>>>> SciPy-Dev mailing list >>>>>> SciPy-Dev at python.org >>>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>>> >>>>> _______________________________________________ >>>>> SciPy-Dev mailing list >>>>> SciPy-Dev at python.org >>>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>>> >>>> _______________________________________________ >>>> SciPy-Dev mailing list >>>> SciPy-Dev at python.org >>>> https://mail.python.org/mailman/listinfo/scipy-dev >>>> >>> _______________________________________________ >>> SciPy-Dev mailing list >>> SciPy-Dev at python.org >>> https://mail.python.org/mailman/listinfo/scipy-dev >>> >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From warren.weckesser at gmail.com Sat May 30 18:01:35 2020 From: warren.weckesser at gmail.com (Warren Weckesser) Date: Sat, 30 May 2020 18:01:35 -0400 Subject: [SciPy-Dev] ANN: SciPy 1.5.0rc1 -- please test In-Reply-To: References: Message-ID: On 5/30/20, Tyler Reddy wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > Hi all, > > On behalf of the SciPy development team I'm pleased to announce > the release candidate SciPy 1.5.0rc1. Please help us test this pre-release. Thanks Tyler! Warren > > Sources and binary wheels can be found at: > https://pypi.org/project/scipy/ > and at: > https://github.com/scipy/scipy/releases/tag/v1.5.0rc1 > > > One of a few ways to install the release candidate with pip: > > pip install scipy==1.5.0rc1 > > ========================== > SciPy 1.5.0 Release Notes > ========================== > > Note: Scipy 1.5.0 is not released yet! > > SciPy 1.5.0 is the culmination of 6 months of hard work. It contains > many new features, numerous bug-fixes, improved test coverage and better > documentation. There have been a number of deprecations and API changes > in this release, which are documented below. All users are encouraged to > upgrade to this release, as there are a large number of bug-fixes and > optimizations. Before upgrading, we recommend that users check that > their own code does not use deprecated SciPy functionality (to do so, > run your code with ``python -Wd`` and check for ``DeprecationWarning`` s). > Our development attention will now shift to bug-fix releases on the > 1.5.x branch, and on adding new features on the master branch. > > This release requires Python 3.6+ and NumPy 1.14.5 or greater. > > For running on PyPy, PyPy3 6.0+ and NumPy 1.15.0 are required. > > Highlights of this release > --------------------------------- > > - wrappers for more than a dozen new ``LAPACK`` routines are now available > in `scipy.linalg.lapack` > - Improved support for leveraging 64-bit integer size from linear algebra > backends > - addition of the probability distribution for two-sided one-sample > Kolmogorov-Smirnov tests > > > New features > ============ > > `scipy.cluster` improvements > --------------------------------------- > Initialization of `scipy.cluster.vq.kmeans2` using ``minit="++"`` had a > quadratic complexity in the number of samples. It has been improved, > resulting > in a much faster initialization with quasi-linear complexity. > > `scipy.cluster.hierarchy.dendrogram` now respects the ``matplotlib`` color > palette > > `scipy.fft` improvements > ---------------------------------- > A new keyword-only argument ``plan`` is added to all FFT functions in this > module. It is reserved for passing in a precomputed plan from libraries > providing a FFT backend (such as ``PyFFTW`` and ``mkl-fft``), and it is > currently not used in SciPy. > > `scipy.integrate` improvements > ------------------------------------------ > > > `scipy.interpolate` improvements > -------------------------------------------- > > `scipy.io` improvements > -------------------------------- > `scipy.io.wavfile` error messages are more explicit about what's wrong, and > extraneous bytes at the ends of files are ignored instead of raising an > error > when the data has successfully been read. > > `scipy.io.loadmat` gained a ``simplify_cells`` parameter, which if set to > ``True`` simplifies the structure of the return value if the ``.mat`` file > contains cell arrays. > > ``pathlib.Path`` objects are now supported in `scipy.io` Matrix Market I/O > functions > > `scipy.linalg` improvements > -------------------------------------- > `scipy.linalg.eigh` has been improved. Now various ``LAPACK`` drivers can > be > selected at will and also subsets of eigenvalues can be requested via > ``subset_by_value`` keyword. Another keyword ``subset_by_index`` is > introduced. > Keywords ``turbo`` and ``eigvals`` are deprecated. > > Similarly, standard and generalized Hermitian eigenvalue ``LAPACK`` > routines > ``?evx`` are added and existing ones now have full ``_lwork`` > counterparts. > > Wrappers for the following ``LAPACK`` routines have been added to > `scipy.linalg.lapack`: > > - ``?getc2``: computes the LU factorization of a general matrix with > complete > pivoting > - ``?gesc2``: solves a linear system given an LU factorization from > ``?getc2`` > - ``?gejsv``: computes the singular value decomposition of a general > matrix > with higher accuracy calculation of tiny singular values and their > corresponding singular vectors > - ``?geqrfp``: computes the QR factorization of a general matrix with > non-negative elements on the diagonal of R > - ``?gtsvx``: solves a linear system with general tridiagonal matrix > - ``?gttrf``: computes the LU factorization of a tridiagonal matrix > - ``?gttrs``: solves a linear system given an LU factorization from > ``?gttrf`` > - ``?ptsvx``: solves a linear system with symmetric positive definite > tridiagonal matrix > - ``?pttrf``: computes the LU factorization of a symmetric positive > definite > tridiagonal matrix > - ``?pttrs``: solves a linear system given an LU factorization from > ``?pttrf`` > - ``?pteqr``: computes the eigenvectors and eigenvalues of a positive > definite > tridiagonal matrix > - ``?tbtrs``: solves a linear system with a triangular banded matrix > - ``?csd``: computes the Cosine Sine decomposition of an > orthogonal/unitary > matrix > > Generalized QR factorization routines (``?geqrf``) now have full ``_lwork`` > counterparts. > > `scipy.linalg.cossin` Cosine Sine decomposition of unitary matrices has > been > added. > > The function `scipy.linalg.khatri_rao`, which computes the Khatri-Rao > product, > was added. > > The new function `scipy.linalg.convolution_matrix` constructs the Toeplitz > matrix representing one-dimensional convolution. > > `scipy.ndimage` improvements > ------------------------------------------ > > > `scipy.optimize` improvements > ----------------------------------------- > The finite difference numerical differentiation used in various > ``minimize`` > methods that use gradients has several new features: > > - 2-point, 3-point, or complex step finite differences can be used. > Previously > only a 2-step finite difference was available. > - There is now the possibility to use a relative step size, previously > only an > absolute step size was available. > - If the ``minimize`` method uses bounds the numerical differentiation > strictly > obeys those limits. > - The numerical differentiation machinery now makes use of a simple cache, > which in some cases can reduce the number of function evaluations. > - ``minimize``'s ``method= 'powell'`` now supports simple bound > constraints > > There have been several improvements to `scipy.optimize.linprog`: > > - The ``linprog`` benchmark suite has been expanded considerably. > - ``linprog``'s dense pivot-based redundancy removal routine and sparse > presolve are faster > - When ``scikit-sparse`` is available, solving sparse problems with > ``method='interior-point'`` is faster > > The caching of values when optimizing a function returning both value and > gradient together has been improved, avoiding repeated function evaluations > when using a ``HessianApproximation`` such as ``BFGS``. > > ``differential_evolution`` can now use the modern ``np.random.Generator`` > as > well as the legacy ``np.random.RandomState`` as a seed. > > `scipy.signal` improvements > -------------------------------------- > A new optional argument ``include_nyquist`` is added to ``freqz`` functions > in > this module. It is used for including the last frequency (Nyquist > frequency). > > `scipy.signal.find_peaks_cwt` now accepts a ``window_size`` parameter for > the > size of the window used to calculate the noise floor. > > `scipy.sparse` improvements > ---------------------------------------- > Outer indexing is now faster when using a 2d column vector to select column > indices. > > `scipy.sparse.lil.tocsr` is faster > > Fixed/improved comparisons between pydata sparse arrays and sparse matrices > > BSR format sparse multiplication performance has been improved. > > `scipy.sparse.linalg.LinearOperator` has gained the new ``ndim`` class > attribute > > `scipy.spatial` improvements > --------------------------------------- > `scipy.spatial.geometric_slerp` has been added to enable geometric > spherical linear interpolation on an n-sphere > > `scipy.spatial.SphericalVoronoi` now supports calculation of region areas > in 2D > and 3D cases > > The tree building algorithm used by ``cKDTree`` has improved from quadratic > worst case time complexity to loglinear. Benchmarks are also now available > for > building and querying of balanced/unbalanced kd-trees. > > `scipy.special` improvements > ---------------------------------------- > The following functions now have Cython interfaces in `cython_special`: > > - `scipy.special.erfinv` > - `scipy.special.erfcinv` > - `scipy.special.spherical_jn` > - `scipy.special.spherical_yn` > - `scipy.special.spherical_in` > - `scipy.special.spherical_kn` > > `scipy.special.log_softmax` has been added to calculate the logarithm of > softmax > function. It provides better accuracy than > ``log(scipy.special.softmax(x))`` for > inputs that make softmax saturate. > > `scipy.stats` improvements > ------------------------------------- > The function for generating random samples in `scipy.stats.dlaplace` has > been > improved. The new function is approximately twice as fast with a memory > footprint reduction between 25 % and 60 % (see gh-11069). > > `scipy.stats` functions that accept a seed for reproducible calculations > using > random number generation (e.g. random variates from distributions) can now > use > the modern ``np.random.Generator`` as well as the legacy > ``np.random.RandomState`` as a seed. > > The ``axis`` parameter was added to `scipy.stats.rankdata`. This allows > slices > of an array along the given axis to be ranked independently. > > The ``axis`` parameter was added to `scipy.stats.f_oneway`, allowing it to > compute multiple one-way ANOVA tests for data stored in n-dimensional > arrays. The performance of ``f_oneway`` was also improved for some cases. > > The PDF and CDF methods for ``stats.geninvgauss`` are now significantly > faster > as the numerical integration to calculate the CDF uses a Cython based > ``LowLevelCallable``. > > Moments of the normal distribution (`scipy.stats.norm`) are now calculated > using > analytical formulas instead of numerical integration for greater speed and > accuracy > > Moments and entropy trapezoidal distribution (`scipy.stats.trapz`) are now > calculated using analytical formulas instead of numerical integration for > greater speed and accuracy > > Methods of the truncated normal distribution (`scipy.stats.truncnorm`), > especially ``_rvs``, are significantly faster after a complete rewrite. > > The `fit` method of the Laplace distribution, `scipy.stats.laplace`, now > uses > the analytical formulas for the maximum likelihood estimates of the > parameters. > > Generation of random variates is now thread safe for all SciPy > distributions. > 3rd-party distributions may need to modify the signature of the ``_rvs()`` > method to conform to ``_rvs(self, ..., size=None, random_state=None)``. (A > one-time VisibleDeprecationWarning is emitted when using non-conformant > distributions.) > > The Kolmogorov-Smirnov two-sided test statistic distribution > (`scipy.stats.kstwo`) was added. Calculates the distribution of the K-S > two-sided statistic ``D_n`` for a sample of size n, using a mixture of > exact > and asymptotic algorithms. > > The new function ``median_abs_deviation`` replaces the deprecated > ``median_absolute_deviation``. > > The ``wilcoxon`` function now computes the p-value for Wilcoxon's signed > rank > test using the exact distribution for inputs up to length 25. The function > has > a new ``mode`` parameter to specify how the p-value is to be computed. The > default is ``"auto"``, which uses the exact distribution for inputs up to > length > 25 and the normal approximation for larger inputs. > > Added a new Cython-based implementation to evaluate guassian kernel > estimates, > which should improve the performance of ``gaussian_kde`` > > The ``winsorize`` function now has a ``nan_policy`` argument for refined > handling of ``nan`` input values. > > The ``binned_statistic_dd`` function with ``statistic="std"`` performance > was > improved by ~4x. > > ``scipy.stats.kstest(rvs, cdf,...)`` now handles both one-sample and > two-sample testing. The one-sample variation uses `scipy.stats.ksone` > (or `scipy.stats.kstwo` with back off to `scipy.stats.kstwobign`) to > calculate > the p-value. The two-sample variation, invoked if ``cdf`` is array_like, > uses > an algorithm described by Hodges to compute the probability directly, only > backing off to `scipy.stats.kstwo` in case of overflow. The result in both > cases is more accurate p-values, especially for two-sample testing with > smaller (or quite different) sizes. > > `scipy.stats.maxwell` performance improvements include a 20 % speed up for > `fit()`` and 5 % for ``pdf()`` > > `scipy.stats.shapiro` and `scipy.stats.jarque_bera` now return a named > tuple > for greater consistency with other ``stats`` functions > > Deprecated features > ================ > > `scipy` deprecations > ---------------------------- > > `scipy.special` changes > --------------------------------- > The ``bdtr``, ``bdtrc``, and ``bdtri`` functions are deprecating > non-negative > non-integral ``n`` arguments. > > `scipy.stats` changes > ----------------------------- > The function ``median_absolute_deviation`` is deprecated. Use > ``median_abs_deviation`` instead. > > The use of the string ``"raw"`` with the ``scale`` parameter of ``iqr`` is > deprecated. Use ``scale=1`` instead. > > Backwards incompatible changes > ========================== > > `scipy.interpolate` changes > ------------------------------------- > > `scipy.linalg` changes > ----------------------------- > The output signatures of ``?syevr``, ``?heevr`` have been changed from > ``w, v, info`` to ``w, v, m, isuppz, info`` > > The order of output arguments ``w``, ``v`` of ``{gv, gvd, gvx}`` is > swapped. > > `scipy.signal` changes > ------------------------------- > The output length of `scipy.signal.upfirdn` has been corrected, resulting > outputs may now be shorter for some combinations of up/down ratios and > input > signal and filter lengths. > > `scipy.signal.resample` now supports a ``domain`` keyword argument for > specification of time or frequency domain input. > > `scipy.stats` changes > ----------------------------- > > > Other changes > ============= > Improved support for leveraging 64-bit integer size from linear algebra > backends > in several parts of the SciPy codebase. > > Shims designed to ensure the compatibility of SciPy with Python 2.7 have > now > been removed. > > Many warnings due to unused imports and unused assignments have been > addressed. > > Many usage examples were added to function docstrings, and many input > validations and intuitive exception messages have been added throughout the > codebase. > > Early stage adoption of type annotations in a few parts of the codebase > > > Authors > ======= > > * @endolith > * Hameer Abbasi > * ADmitri + > * Wesley Alves + > * Berkay Antmen + > * Sylwester Arabas + > * Arne K??derle + > * Christoph Baumgarten > * Peter Bell > * Felix Berkenkamp > * Jord??o Bragantini + > * Clemens Brunner + > * Evgeni Burovski > * Matthias Bussonnier + > * CJ Carey > * Derrick Chambers + > * Leander Claes + > * Christian Clauss > * Luigi F. Cruz + > * dankleeman > * Andras Deak > * Milad Sadeghi DM + > * jeremie du boisberranger + > * Stefan Endres > * Malte Esders + > * Leo Fang + > * felixhekhorn + > * Isuru Fernando > * Andrew Fowlie > * Lakshay Garg + > * Gaurav Gijare + > * Ralf Gommers > * Emmanuelle Gouillart + > * Kevin Green + > * Martin Grignard + > * Maja Gwozdz > * gyu-don + > * Matt Haberland > * hakeemo + > * Charles Harris > * Alex Henrie > * Santi Hernandez + > * William Hickman + > * Till Hoffmann + > * Joseph T. Iosue + > * Anany Shrey Jain > * Jakob Jakobson > * Charles Jekel + > * Julien Jerphanion + > * Jiacheng-Liu + > * Christoph Kecht + > * Paul Kienzle + > * Reidar Kind + > * Dmitry E. Kislov + > * Konrad + > * Konrad0 > * Takuya KOUMURA + > * Krzysztof Pi??ro > * Peter Mahler Larsen > * Eric Larson > * Antony Lee > * Gregory Lee + > * Gregory R. Lee > * Chelsea Liu > * Cong Ma + > * Kevin Mader + > * Maja Gw????d?? + > * Alex Marvin + > * Matthias K??mmerer > * Nikolay Mayorov > * Mazay0 + > * G. D. McBain > * Nicholas McKibben + > * Sabrina J. Mielke + > * Sebastian J. Mielke + > * Milo?? Komar? evi?? + > * Shubham Mishra + > * Santiago M. Mola + > * Grzegorz Mrukwa + > * Peyton Murray > * Andrew Nelson > * Nico Schl??mer > * nwjenkins + > * odidev + > * Sambit Panda > * Vikas Pandey + > * Rick Paris + > * Harshal Prakash Patankar + > * Balint Pato + > * Matti Picus > * Ilhan Polat > * poom + > * Siddhesh Poyarekar > * Vladyslav Rachek + > * Bharat Raghunathan > * Manu Rajput + > * Tyler Reddy > * Andrew Reed + > * Lucas Roberts > * Ariel Rokem > * Heshy Roskes > * Matt Ruffalo > * Atsushi Sakai + > * Benjamin Santos + > * Christoph Schock + > * Lisa Schwetlick + > * Chris Simpson + > * Leo Singer > * Kai Striega > * S??ren Fuglede J??rgensen > * Kale-ab Tessera + > * Seth Troisi + > * Robert Uhl + > * Paul van Mulbregt > * Vasiliy + > * Isaac Virshup + > * Pauli Virtanen > * Shakthi Visagan + > * Jan Vleeshouwers + > * Sam Wallan + > * Lijun Wang + > * Warren Weckesser > * Richard Weiss + > * wenhui-prudencemed + > * Eric Wieser > * Josh Wilson > * James Wright + > * Ruslan Yevdokymov + > * Ziyao Zhang + > > A total of 129 people contributed to this release. > People with a "+" by their names contributed a patch for the first time. > This list of names is automatically generated, and may not be fully > complete. > > Issues closed for 1.5.0 > ------------------------------- > > * `#1455 `__: ellipord does > returns bogus values if gstop or gpass are negative... > * `#1968 `__: correlate2d's > output does not agree with correlate's output in... > * `#2744 `__: BUG: optimize: > '\*\*kw' argument of 'newton_krylov' is not documented > * `#4755 `__: TypeError: data > type " * `#4921 `__: scipy.optimize > maxiter option not working as expected > * `#5144 `__: RuntimeWarning on > csgraph.shortest_path when edge lengths are... > * `#5309 `__: Documentation of > 'hybr' and 'lm' inconsistent in optimize.root > * `#6026 `__: Replace > approx_grad with _numdiff.approx_derivative in scipy.optimize > * `#6502 `__: Computing > Eigenvalues in an Interval with LAPACK > * `#7058 `__: Errors in > special.bdtri and special.bdtr for non-integer k values > * `#7700 `__: SuperLU does not > respect perm_c="NATURAL" > * `#7895 `__: Improvements to > io.loadmat > * `#8205 `__: ValueError in > scipy.linalg.eigvalsh for large matrix > * `#8278 `__: Memory limit for > scipy.sparse.linalg.spsolve with scikit-umfpack > * `#8327 `__: > scipy.stats.mstats.winsorize NaN handling > * `#8341 `__: > scipy.stats.ks_2samp for masked and unmasked data give different... > * `#8748 `__: > scipy.stats.kstest for same distribution: p-values nonuniform > * `#9042 `__: optimize: > Incorrect statement about \`jac\` in the \`minimize\`... > * `#9197 `__: problem with > scipy.signal.butter with 1000+ points array > * `#9212 `__: EIGH very very > slow --> suggesting an easy fix > * `#9553 `__: ndimage routines > behave badly when output has memory overlap... > * `#9632 `__: > ndimage.maximum_filter undocumented behaviour using footprint... > * `#9710 `__: > stats.weightedtau([1], [1.0]) SEGFAULTs > * `#9797 `__: Master Tracker > for some Kolmogorov-Smirnov test Issues > * `#9844 `__: > scipy.signal.upfirdn gives different length matrix versus MATLAB... > * `#9872 `__: > scipy.signal.convolve is slower when vectorized > * `#9913 `__: BUG: No dt in > StateSpace operations > * `#10014 `__: Distribution > names \`weibull_min\`and \`weibull_max\` should... > * `#10159 `__: BUG: stats: > chisquare returns incorrect results for arrays of... > * `#10302 `__: scipy.fft: Add > a \`plan\` argument > * `#10332 `__: 'Incomplete wav > chunk' inconsistent/reason unknown > * `#10441 `__: Remove uses of > \`numpy.dual\`? > * `#10558 `__: Document > implicit sum in csr_matrix() constructor > * `#10788 `__: LU with full > pivoting > * `#10841 `__: Unexpected > behavior in linalg.blas.dtrmm wrapper > * `#10919 `__: > optimize._lbfgsb setulb() function violates parameter bounds > * `#10963 `__: kstest, > ks_2samp: confusing \`mode\` argument descriptions > * `#11022 `__: Unexpected > Result in factorial function with NaN input > * `#11028 `__: Documentation > error in optimize.minimize > * `#11058 `__: Adding > logsoftmax function > * `#11076 `__: ValueError: > Unknown wave file format > * `#11090 `__: Misconception > of the median absolute deviation in stats? > * `#11095 `__: BUG: > find_peaks_cwt test failures in 32-bit Linux wheels > * `#11107 `__: scipy.io.mmread > generated an error "TypeError: startswith first... > * `#11123 `__: Add wrapper for > ?gttrf/?gttrs > * `#11128 `__: OverflowError > in resample_poly (upfirdn) > * `#11132 `__: Possible bug: > rv_discret.ppf for percentiles 0 and 100 and loc... > * `#11163 `__: Comparisons > between scipy spmatrix and can sparse.SparseArray... > * `#11168 `__: Generalized > Pareto variance inaccurate for concentrations near... > * `#11169 `__: Add wrapper for > ?geqrfp > * `#11184 `__: 2-sided > Kolmogorov Smirnov returns p-value of 1 > * `#11185 `__: The .roots() or > solve() function of scipy.interpolate.CubicHermiteSpline... > * `#11190 `__: Add wrapper for > ?tbtrs > * `#11200 `__: Can no longer > slice csr_matrix in 1.3.0 > * `#11207 `__: > _minimize_scalar_bounded: reference before assignment > * `#11216 `__: linprog: > interior-point: Cholmod reordering can be reused > * `#11223 `__: Add wrappers > for ?pttrf, ?pttrs > * `#11224 `__: Add wrapperfor > ?pteqr > * `#11235 `__: MAINT: > Missleading Error Message for IIR Filter > * `#11244 `__: Missing > reference in \`scipy.optimize.line_search\` > * `#11262 `__: Hermitian > Eigenvalue Problem eigh() API and wrapper change proposal > * `#11266 `__: Sparse matrix > constructor data type detection changes on Numpy... > * `#11270 `__: CI failing: > Travis CI Py36 refguide and Linux_Python_36_32bit_full... > * `#11279 `__: linalg.eigh > checks whole array for finite values > * `#11295 `__: CI: azure does > not auto-cancel old jobs on pushes > * `#11299 `__: > stats.truncnorm.rvs 100x slower in v1.4.x than v1.3.3 > * `#11315 `__: BUG: special: > rgamma on negative integers smaller -34 > * `#11319 `__: Missing > \`int64_t\` declaration in rectangular_lsap.cpp > * `#11323 `__: Compilation > failure due to missing symbol pthread_atfork > * `#11332 `__: BUG: > directed_hausdorff distance on sets u and v when u is a... > * `#11350 `__: Khatri-Rao > product > * `#11354 `__: ENH: Add > wrapper for ?gejsv > * `#11361 `__: Dropped NaN in > eval_genlaguerre function > * `#11363 `__: Dropped NaN in > hyperu function > * `#11365 `__: > scipy.stats.binned_statistic regressed in v1.4.0 > * `#11369 `__: Dropped NaN in > eval_hermite > * `#11370 `__: Dropped NaN in > eval_gegenbauer > * `#11373 `__: Add wrapper for > ?gtsvx > * `#11374 `__: Add wrapper for > ?ptsvx > * `#11391 `__: > csgraph.minimum_spanning_tree loses precision > * `#11398 `__: Update stats to > cope with \`np.random.Generator\` machinery > * `#11412 `__: Array copying > causes unwanted type casting from complex to float... > * `#11415 `__: Where is the > Wiener Filter derived from? > * `#11416 `__: > _lib._util.getargspec_no_self is missing KEYWORD_ONLY support > * `#11428 `__: Documentation > on SHGO inequality constraints appears contradictory > * `#11429 `__: Add LAPACK's > ZUNCSD cosine sine decomposition > * `#11438 `__: > run_dualannealing passes bounds incorrectly in benchmarks/optimize.py > * `#11441 `__: Can't run > optimize benchmarks > * `#11442 `__: Chebyshev > weights > * `#11448 `__: Wrongly typed > comparison in integrate.quad > * `#11458 `__: BUG: > maximum_bipartite_matching produces infeasible solution > * `#11460 `__: CI failing: 2 > Travis CI tests fail with numpy build or version... > * `#11462 `__: Bug on "++" > initialization on "kmeans2" > * `#11464 `__: Shouldn't data > type of KDE evaluation should be like in the input... > * `#11468 `__: performance of > binned_statistics_2d 100x slowdown from 1.3.2... > * `#11484 `__: Callback > function doesn't give the same value as the one being... > * `#11492 `__: Confusing > dendrogram labelling > * `#11493 `__: > scipy.optimize.least_squares fails if the return array of the... > * `#11494 `__: Error > performing kronecker product between large sparse vectors > * `#11503 `__: medfilt > produces 0 on input of length 1 > * `#11529 `__: Pyflakes > generates almost 700 warnings. > * `#11566 `__: > irfft/irfft2/irfftn docs are slightly confusing re: input type. > * `#11572 `__: least_squares: > too small tolerances not catched with method='lm' > * `#11581 `__: DOC: > scipy.interpolate.RectSphereBivariateSpline > * `#11586 `__: Differential > evolution breaks with LinearConstraints with sparse... > * `#11595 `__: > scipy.spatial.cKDTree construction slow for some datasets > * `#11598 `__: output of > special.voigt_profile when sigma=0 > * `#11601 `__: linalg tests > failing in runtests.py > * `#11602 `__: > scipy.optimize.linear_sum_assignment returns reverse diagonal... > * `#11610 `__: Analytic > formula for normal moments > * `#11611 `__: Build failure > with gfortran 10 > * `#11613 `__: TST, MAINT: > test_quadpack TestCtypesQuad wasn't fully migrated... > * `#11630 `__: > SmoothBivariateSpline bbox parameter > * `#11635 `__: typo in > docstring of scipy.stats.norminvgauss > * `#11637 `__: BUG: core dumps > when calling scipy.interpolate.interp1d with... > * `#11638 `__: better > documentation for 'return_all' option in minimize(Nelder... > * `#11652 `__: TST, MAINT: CI > failures for pre-release NumPy wheels > * `#11659 `__: > optimize.fmin_l_bfgs_b needs bound check and appropiate error... > * `#11660 `__: BUG/ENH: > distribution.ncf with nc=0 returns nan > * `#11661 `__: > scipy.ndimage.convolve1d and correlate1d don't behave properly... > * `#11669 `__: p-value varies > with the order of the data > * `#11676 `__: documentation > of scipy.spatial.HalfspaceIntersection: wrong method... > * `#11685 `__: Rotation cannot > be expressed as matrix > * `#11686 `__: MAINT: mypy > imports of Cython "modules" > * `#11693 `__: > TestDifferentialEvolutionSolver::test_L4 failing in CI > * `#11696 `__: DOC: incorrect > compiler information for macOS in docs > * `#11709 `__: eigh() tests > fail to pass, crash Python with seemingly ramdom... > * `#11763 `__: Small error in > gamma continuous rv fit comments > * `#11769 `__: truncnorm.rvs > Weird Behaviors > * `#11770 `__: crash in > TestEigh::test_value_subsets > * `#11795 `__: trapz > distribution mean computed using single precision > * `#11800 `__: Segmentation > fault in scipy.odr for multidimensional independent... > * `#11811 `__: pyflakes > silently failing on travis-ci > * `#11826 `__: Error with > _fblas > * `#11827 `__: > \`fft.tests.test_numpy.test_multiprocess\` hangs on Python3.8... > * `#11835 `__: tests with > \`multiprocessing\` hang on Python 3.8 on macOS > * `#11839 `__: linalg.expm > returns nans with RuntimeWarning: overflow encountered... > * `#11856 `__: Documentation > of fit methods for \`weibull_min\` and \`exponweib\`... > * `#11868 `__: Function always > evaluated twice when using HessianUpdateStrategy... > * `#11875 `__: Typo in the > docstring of simps() > * `#11877 `__: kmeans2 '++' > method is orders of magnitude slower than sklearn.cluster.KMeans() > * `#11884 `__: The upper code > lines are dead code > * `#11886 `__: Array shape > mismatch in scipy.optimize > * `#11892 `__: BUG: stats: > Incorrect handling of edges cases by ttest_rel and... > * `#11908 `__: LinearOperator > should have ndim attribute > * `#11910 `__: Documentation > missing for what M is in init argument > * `#11922 `__: macOS actions > CI has started failing in last couple of days. > * `#11928 `__: DOC: signal: > Wrong description for sepfir2d, cspline2d, qspline2d > * `#11944 `__: curve_fit > documentation unclear on default value of absolute_sigma > * `#11945 `__: Add a > (potentially temporary) py.typed file? > * `#11949 `__: ValueError 'k > exceeds matrix dimensions' for sparse.diagonal()... > * `#11951 `__: BUG: asv > benchmark failed because of cython version > * `#11967 `__: BLD: Azure > windows runs complain about drives > * `#11973 `__: > oaconvolve(a,b,'same') differs in shape from convolve(a,b,'same')... > * `#12002 `__: pybind11 > license > * `#12003 `__: MAINT: circular > SphericalVoronoi input > * `#12015 `__: Reordering of > CSC matrix breaks when you go above int32 limits > * `#12031 `__: Documentation > Rendering Issues Visible in CircleCI Artifacts > * `#12037 `__: MAINT, CI: new > Cython 3.0a4 issue > * `#12087 `__: DOC: some odr > models are missing docs > * `#12119 `__: > signal.fftconvolve no longer convolves types f8 and numpy.float64 > * `#12149 `__: Documentation > of Rosenbrock function > * `#12173 `__: Large memory > usage when indexing sparse matrices with \`np.ix_\` > * `#12178 `__: BUG: stats: > Some discrete distributions don't accept lists of... > * `#12220 `__: BUG, REL: > gh_lists.py compromised scraping > * `#12239 `__: BUG: median > absolute deviation handling of nan > > Pull requests for 1.5.0 > ------------------------------ > > * `#6510 `__: Add Eigenvalue > Range Functionality for Symmetric Eigenvalue Problems > * `#9525 `__: BUG: SuperLU > 'NATURAL' order applies a column permutation > * `#9634 `__: Add the number of > Jacobian evaluations to the output of L-BFGS-B. > * `#9719 `__: ENH: Added kstwo > probability distribution for two-sided one-sample... > * `#9783 `__: WIP: optimize: > added (dense) interpolative decomposition redundancy... > * `#10053 `__: Adding docstring > to weibull_min and weibull_max based on issue... > * `#10136 `__: DEP: Add warning > to linprog_verbose_callback > * `#10380 `__: ENH: add > geometric_slerp > * `#10602 `__: MAINT: optimize: > refactor common linprog arguments into namedtuple > * `#10648 `__: Bounds for the > Powell minimization method > * `#10673 `__: ENH: > approx_fprime --> approx_derivative > * `#10759 `__: ENH: calculation > of region areas in spatial.SphericalVoronoi > * `#10762 `__: BENCH: optimize: > more comprehensive linprog benchmarking > * `#10796 `__: ENH exact > p-values of wilcoxon test in scipy.stats > * `#10797 `__: ENH: linalg: LU > with full pivoting (wrappers for ?getc2/?gesc2) > * `#10824 `__: ENH: Fast > gaussian kernel estimator > * `#10942 `__: BUG: prevent > bound violation in L-BFGS-B optimize method > * `#11003 `__: ENH: add > scipy.linalg.convolution_matrix > * `#11023 `__: improving error > message for cubic-interpolate with duplicates > * `#11045 `__: MAINT: make > bdt{r,rc,ri}() functions accept double n,k args +... > * `#11063 `__: Fix documentation > error in optimize.minimize > * `#11069 `__: ENH: > stats.dlaplace.rvs improvements > * `#11071 `__: DOC: Added > examples to maximum_position in ndimage > * `#11075 `__: DOC: Update > stylistic consistency in multiple files > * `#11097 `__: BUG: stats: > fixing chisquare to return correct results for arrays... > * `#11110 `__: ENH: special: > Cythonise erfinv, erfcinv > * `#11112 `__: BUG: special: > Return NaN outside the domain of \`eval_hermite\` > * `#11114 `__: BUG: special: fix > \`hyp1f1\` for nonnegative integral \`a\` and... > * `#11115 `__: DOC: special: add > docstrings for \`kei\`, \`ker\`, \`keip\`,... > * `#11130 `__: ENH: support for > circular input > * `#11136 `__: BUG: expm > handling of empty input > * `#11138 `__: DOC: stylistic > consistency, punctuation, etc. > * `#11139 `__: MAINT: cluster: > use cython_blas, remove handwritten BLAS wrappers > * `#11146 `__: DOC: update docs > on bp parameter for detrend > * `#11151 `__: DOC: special: add > docstrings for \`bei\`, \`ber\`, \`beip\`,... > * `#11156 `__: ENH: add input > validation for ellipord. > * `#11157 `__: DOC: stylistic > revision, punctuation, consistency > * `#11160 `__: ignore warning on > 0 \* inf in basin hopping > * `#11162 `__: DOC: minor > stylistic revision, undo changes > * `#11164 `__: ENH/ BUG: Pydata > sparse equality > * `#11171 `__: Fix dtype > validation of "seuclidean" metric V parameter > * `#11177 `__: BUG: stats: > Improve genpareto stats calculations. > * `#11180 `__: MAINT: stats: > Some clean up in test_distributions.py. > * `#11187 `__: ENH: add > functionality log_softmax to SciPy.special. > * `#11188 `__: MAINT: add rvs > method to argus in scipy.stats > * `#11196 `__: DOC: special: add > to docstrings of Kelvin zeros functions > * `#11202 `__: BUG: fix edge > counting in shortest_path > * `#11218 `__: BUG: > scipy/interpolate: fix PPoly/Cubic\*Spline roots() extrapolation... > * `#11225 `__: Add a warning to > constant input for spearmanr() function > * `#11226 `__: Speed up of > interior-point method for cholesky solver > * `#11229 `__: BUG: Explicit > dtype specification in _upfirdn.py > * `#11230 `__: Additional > citation for optimize tutorial > * `#11231 `__: Adds SLSQP test > for duplicate f-evals (#10738) > * `#11236 `__: MAINT: Improved > error message for Wn range in iirfilter. > * `#11245 `__: ENH: optimize: > dense redundancy removal routine optimizations > * `#11247 `__: MAINT: Remove > _lib/_numpy_compat.py > * `#11248 `__: BUG: > rv_discrete.ppf() to handle loc > * `#11251 `__: DOC: add > reference for linesearch zoom algorithm > * `#11253 `__: BUG: fix > kendalltau issue where p-value becomes >1 > * `#11254 `__: MAINT: make > special.factorial handle nan correctly > * `#11256 `__: DOC: Updated > documentation for scipy.linalg.qr > * `#11265 `__: Fix: Can no > longer slice csr_matrix in 1.3.0 > * `#11267 `__: BUG: Rework the > scaling in the ks_2samp two-sided exact test. > * `#11268 `__: DOC: example of > NonLinearConstraint > * `#11269 `__: Fix: Sparse > matrix constructor data type detection changes on... > * `#11276 `__: BLD: update > minimum Python, NumPy, Cython, Pybind11 versions > * `#11277 `__: MAINT: Cleanup > conditionals for unsupported numpy verisons > * `#11278 `__: MAINT: Cleanup > stats.iqr workarounds for unsupported NumPy versions > * `#11282 `__: TST/CI: improve > traceback formatting for test failures > * `#11284 `__: fix docs & > behavior for mode sequences in ndimage filters > * `#11285 `__: DOC: special: > complete the docstrings of Chi-square functions > * `#11286 `__: BUG: make > loadmat/savemat file opening close resources correctly > * `#11287 `__: CI: skip Azure > and TravisCI builds on merges and direct pushes... > * `#11288 `__: DOC: Fix import > in scipy.io.wavfile.read sample code > * `#11289 `__: BUG: Use context > manager for open > * `#11290 `__: MAINT: Remove > _lib._version in favour of _lib._pep440 > * `#11292 `__: DOC: special: add > docstrings for various convenience functions > * `#11293 `__: DOC: special: fix > typo in \`chdtri\` docstring > * `#11296 `__: DOC: special: add > to docstrings of Bessel zeros and derivatives > * `#11297 `__: DOC: special: add > parameters/returns sections for Bessel integrals > * `#11300 `__: MAINT: Update > vendored uarray version > * `#11301 `__: CI: azure > conditions should require succeeded() > * `#11302 `__: ENH: build > infrastructure for ILP64 BLAS + ARPACK conversion > * `#11303 `__: DOC: special: fix > typo in \`besselpoly\` docstring > * `#11304 `__: ENH: MAINT: > Rewrite of eigh() and relevant wrappers > * `#11306 `__: TST: skip > test_aligned_mem linalg test that is crashing on ppcle64 > * `#11307 `__: MAINT: Fix typo > 'solutuion' -> 'solution' > * `#11308 `__: ENH: do not > create 1d array out of a scalar > * `#11310 `__: MAINT: clean up > object array creation, scalar/1d confusion > * `#11311 `__: DOC: Specify > custom callable option for metric in cluster.hierarchy.fclusterdata > * `#11316 `__: BUG: special: fix > behavior for \`rgamma\` zeros > * `#11317 `__: BUG: fix > floating-point literal comparisons under C99 > * `#11318 `__: TST: optimize: > mark two linprog tests for skipping > * `#11320 `__: BUG: Include > \`int64_t\` declaration to \`rectangular_lsap.cpp\` > * `#11330 `__: MAINT: Update > vendored pypocketfft version > * `#11333 `__: BUG: > directed_hausdorff subset fix > * `#11335 `__: [ENH] sparse: > Loosen check for sparse outer indexing fast path > * `#11337 `__: Undefined name > 'e' in pavement.py > * `#11338 `__: scipyoptdoc.py: > Remove unused variable 'sixu' > * `#11340 `__: xrange() was > removed in Python 3 in favor of range() > * `#11342 `__: range() was > removed in Py3 in _binned_statistic.py > * `#11343 `__: BUG: constants: > fix 'exact' values table > * `#11347 `__: ENH: add input > validation function and apply it to needed functions > * `#11348 `__: MAINT: remove > six.string_types usages > * `#11349 `__: MAINT: minor doc > fix _minimize_trustregion_constr > * `#11353 `__: MAINT: py3 remove > various six usages > * `#11358 `__: ENH: optimize: > Use CSR format instead of LIL for speed > * `#11362 `__: MAINT: > sys.version_info >= 3.5 > * `#11364 `__: ENH: cache square > of sums for f_oneway > * `#11368 `__: ENH: add optional > argument, "include_nyquist", for freqz() > * `#11372 `__: BENCH: optimize: > added linprog presolve benchmarks > * `#11376 `__: ENH: Add wrapper > for ?gttrf/?gttrs > * `#11377 `__: MAINT: Remove > Python 2 code from tools/authors.py > * `#11378 `__: ENH (WIP): Python > wrapper for ?tbtrs > * `#11379 `__: MAINT: Remove > six.with_metaclass from benchmarks/cython_special.py > * `#11380 `__: BUG: > sparse/isolve: bicg and qmr don't treat x0 correctly > * `#11382 `__: MAINT: remove > error throw in binned_statistic_dd() on non-finite... > * `#11383 `__: MAINT: _lib: > remove py2 compat shims in getargspec > * `#11384 `__: MAINT: Use numpy > scalar types directly > * `#11385 `__: ENH: special: add > spherical Bessel functions to \`cython_special\` > * `#11389 `__: MAINT: > line.startswith shouldn't be bytes > * `#11393 `__: ENH: Speed up > truncnorm's ppf()and rvs() methods > * `#11394 `__: MAINT: Remove > self._size (and self._random_state) from stats... > * `#11395 `__: correction in > error message (%d->%g format) > * `#11396 `__: DOC: revert > gh10540, removing mtrand > * `#11397 `__: MAINT: > differential_evolution accepts np.random.Generator > * `#11402 `__: ENH: stats can > use np.random.Generator > * `#11404 `__: ENH: add > docstring of butter() for transfer function syntax problem > * `#11405 `__: DOC: Fix "see > also" for SmoothBivariateSpline > * `#11408 `__: ENH: Add a > \`plan\` argument to FFT functions in \`scipy.fft\` > * `#11411 `__: MAINT: check > minimize duplicate evaluations > * `#11418 `__: ENH: Linalg: > Python wrapper for ?geqrfp > * `#11419 `__: TST: Python 3.7 > mac OS gcc multibuild fix > * `#11423 `__: ENH: Add tool to > lint diffs > * `#11425 `__: FIX: > _array_newton should preserve complex inputs > * `#11426 `__: MAINT: licence > for global optimization benchmarks > * `#11431 `__: Make > median_absolute_deviation scale argument aligned w/iqr > * `#11432 `__: Fix error message > typo > * `#11433 `__: DOC: Remove L > from longs > * `#11434 `__: MAINT: Python3 > improvements to refguide_check.py > * `#11435 `__: DOC: Update > runtest --parallel help > * `#11436 `__: MAINT: Remove > checks for sys.version < 3.5 > * `#11437 `__: DOC: Fix > documentation issue > * `#11439 `__: Support path > objects (PEP 519) in mmio functions > * `#11440 `__: correct bounds > pass in run_dualannealing for benchmarks/optimize.py > * `#11443 `__: BENCH: > optimize_linprog remove ImportError exception > * `#11453 `__: BUG: sparse: > convert csc/csr indices to int64 as needed > * `#11454 `__: DOC: Remove > caveat on \`maximum_bipartite_matching\` > * `#11455 `__: BUG: Fix > _lib._util.getargspec_no_self lack of KEYWORD_ONLY support. > * `#11456 `__: Implementation of > khatri_rao product > * `#11459 `__: BUG: fix > augmentation being broken in maximum_bipartite_matching > * `#11461 `__: MAINT: minor > spelling corrections in comments in SciPy.sparse.linalg.arpack > * `#11467 `__: [MRG] Make result > data type of KDE evaluation like in the input... > * `#11469 `__: Update > integrate.quad documentation > * `#11472 `__: Fixed result typo > * `#11476 `__: DOC: stats: > Copy-edit the anderson docstring. > * `#11478 `__: ENH: avoid > unnecessary array copies in matrix product > * `#11481 `__: BUG: Make > special.hyperu return nan if any argument is nan > * `#11483 `__: BUG: Fixed > \`_kpp\` initialization on \`scipy.cluster.vq\`, closing... > * `#11485 `__: ENH: Update > docstring of class KrylovJacobian to fix #2744 > * `#11486 `__: BUG: make > special.eval_hermite return nan if second argument... > * `#11487 `__: ENH: improve > docstring of correlate and correlate2d to fix #1968 > * `#11488 `__: FIX: change "func > -> fun" of scipy.optimize _root.py to solve... > * `#11489 `__: BUG: fixes typo > introduced in PR #11253 in stats.mstats.kendalltau() > * `#11490 `__: DOC: fix typo in > scipy/io/matlab/mio4.py > * `#11495 `__: MAINT: refactor > slsqp to fix issue in callback function > * `#11498 `__: [DOC] mention > graph cuts in maximum flow docstring > * `#11499 `__: DOC: Improve > documentation of scipy.signal.signaltools.wiener > * `#11506 `__: DOC: Fix typo in > documentation of scipy.stats.morestats > * `#11508 `__: ENH: avoid copy > on sparse __init__ when dtype is given > * `#11509 `__: ENH: avoid > unnecessary array copies in matrix product (again) > * `#11510 `__: [DOC] An ex. for > creating arbitrary size tri-diagonal > * `#11511 `__: TST: pin numba > for Travis/sparse > * `#11513 `__: TST: disable > NumPy cache dir ppc64le > * `#11514 `__: BUG: make > special.eval_genlaguerre return nan if passed nan > * `#11517 `__: ENH: improve > sparse.lil.tocsr performance > * `#11519 `__: Fix fresnel > documentation > * `#11520 `__: BUG: make > special.eval_gegenbauer return nan if passed nan > * `#11524 `__: ENH: Cosine Sine > Decomposition > * `#11526 `__: BUG: fix SLSQP > max iteration setting to fix #4921 > * `#11527 `__: ENH: improve > docstring of weibull_min_gen and weibull_max_gen... > * `#11530 `__: MAINT: Removed 3 > unused imports, 3 unused assignments from ndimage. > * `#11531 `__: DOC: fix typos in > bdtr and bdtrc from gh PR 11045 > * `#11532 `__: MAINT: Fixed > several unused imports and unused assignments from... > * `#11533 `__: MAINT: Fixed > about 100 unused imports, unused assignment warnings... > * `#11534 `__: FIX: Allow > non-native byte order inputs to scipy.fft > * `#11535 `__: MAINT: Fixed > several unused imports in _lib. > * `#11536 `__: MAINT: Fixed > several unused imports and unused assignments in... > * `#11537 `__: MAINT: Removed an > unused import in scipy/constants. > * `#11538 `__: MAINT: Fixed > several unused imports in scipy/fft. > * `#11539 `__: MAINT: Fixed > several unused imports and unused assignments in... > * `#11540 `__: MAINT: Fixed two > unused imports in scipy/misc. > * `#11541 `__: MAINT: Fixed > several unused imports and unused assignments in... > * `#11542 `__: MAINT: Fixed an > unused import in scipy/odr. > * `#11543 `__: MAINT: Fixed > several unused imports and unused assignments in... > * `#11544 `__: MAINT: Fixed > unused imports and unused assignments in scipy/integrate. > * `#11545 `__: MAINT: Removed > unused imports and fixed unused assignments in... > * `#11546 `__: MAINT: Removed > unused imports; fixed unused assignments in scipy/signal. > * `#11547 `__: MAINT: Removed > unused imports; fixed unused assignments in scipy/spatial > * `#11548 `__: MAINT: Removed > unused imports; fixed unused assignments in scipy.sparse. > * `#11549 `__: MAINT: Replace > xrange with range > * `#11560 `__: MAINT: stats: > remove an _argcheck call > * `#11573 `__: MAINT: Removed > unused imports; fixed unused assignments in scipy/stats. > * `#11574 `__: MAINT: Small > change to \`optimize.nnls\` error messages. > * `#11575 `__: MAINT: Update > sytrd/hetrd tests > * `#11582 `__: MAINT: fix typo > in quadpack.py closes #11448 > * `#11585 `__: TST: add > openblas_support.py > * `#11587 `__: BUG: Differential > evolution with LinearConstraint with sparse... > * `#11588 `__: MAINT: Fully > display problem size in lsmr/lsqr. > * `#11589 `__: MAINT: Remove > Python 2 workarounds > * `#11590 `__: MAINT: Remove > Python2 module init > * `#11605 `__: Standardization > of bounds in _linprog_util.py > * `#11608 `__: BUG: fix use of > is in DE callback > * `#11614 `__: TST, MAINT: > TestCtypesQuad skip with pytest > * `#11619 `__: ENH: add > nan_policy argument and functionality to stats.mstats.winsorize > * `#11621 `__: MAINT: Cleanup > uses of PY_VERSION_HEX, NPY_PY3K in ndimage > * `#11622 `__: MAINT: Cleanup > uses of PY_VERSION_HEX, NPY_PY3K in sparse > * `#11623 `__: MAINT: Remove > unnecessary 'from __future__ import ...' statements > * `#11626 `__: MAINT: Cleanup > uses of PY_VERSION_HEX > * `#11627 `__: ENH: add analytic > formula for normal moments > * `#11628 `__: MAINT, TST: > adjust azure for matplotlib release > * `#11631 `__: Revert to old > behaviour for constant cost matrices in \`linear_sum_assignment\` > * `#11632 `__: MAINT: Define > ARRAY_ANYORDER with DEF instead of cdef > * `#11639 `__: BUG: > interpolate/interp1d: fail gracefully on all-nan inputs > * `#11640 `__: MAINT: Fix BLAS3 > trmm wrapper for "side" arg > * `#11642 `__: TST, MAINT: > remove dead code in Travis CI > * `#11643 `__: MAINT: fix > conversion in binom_test > * `#11645 `__: MAINT: Assorted > clean up. > * `#11646 `__: MAINT: Remove > unnecessary 'from __future__ import ...' statements > * `#11647 `__: DOC: document > return_all arguments > * `#11648 `__: Perform geometric > slerp in quaternion space > * `#11651 `__: DOC: Update paper > URL in lambertw documentation > * `#11653 `__: PERF: Switch to > C++ STL std::nth_element > * `#11655 `__: MAINT: Remove > Python2 cStringStream > * `#11657 `__: ENH: Add wrapper > for ?pttrf/?pttrs > * `#11664 `__: ENH: Add wrapper > for ?gejsv > * `#11665 `__: ENH: Add wrapper > for ?pteqr > * `#11667 `__: BUG: Non-central > Fisher distribution (fix nan-values when nc=0) > * `#11668 `__: ENH: Add wrapper > for ?gtsvx > * `#11671 `__: TST, CI: restore > Azure temporarily > * `#11672 `__: Add warning to > medfilt when array size < kernel_size > * `#11674 `__: TST: bump test > precision for two np.dot related linalg tests. > * `#11675 `__: MAINT: > pycodestyle clean-up > * `#11677 `__: ENH: Add wrapper > for ?ptsvx > * `#11679 `__: BENCH: cKDTree > benchmarks added: balanced/unbalanced tree (related... > * `#11680 `__: MAINT: > rng_integers allows RandomState.randint or Generator.integers > * `#11683 `__: BUG: fix > mode='mirror' on length 1 axes > * `#11684 `__: BUG: fix > scipy.special.voigt_profile > * `#11687 `__: MAINT: > sparse.linalg: avoid importing from \`np.core\` > * `#11688 `__: ENH: mypy: get > specific about ignoring missing imports > * `#11690 `__: MAINT: mypy: fix > errors about incompatible types in lists > * `#11692 `__: MAINT: mypy: fix > remaining type errors > * `#11694 `__: TST, MAINT: bump > to OpenBLAS 0.3.9 stable, raise tol for Win... > * `#11697 `__: DOC: fix pdf of > norminvgauss in scipy.stats > * `#11701 `__: MAINT: special: > add rudimentary types for \`_ufuncs\` extension... > * `#11702 `__: BUG: Fixed a > post-merge bug for eigh() > * `#11703 `__: Improves > docstring with consistent L2-norm > * `#11705 `__: DOC: Slerp the > SphericalVoronoi docstring > * `#11706 `__: ENH: mypy: add > \`--mypy\` option to \`runtests.py\` > * `#11710 `__: ENH: Modified > stats.kstest() to use the exact stats.kstwo.sf()... > * `#11715 `__: DOC: add .. > versionadded:: to as_matrix/from_matrix in spatial/transf??? > * `#11716 `__: BENCH: fix > benchmark imports for \`\`optimize_linprog.py\`\` > * `#11721 `__: MAINT: io: Remove > now-unnecessary \`# type: ignore\` > * `#11722 `__: MAINT: mypy: > remove mpmath from the ratchet > * `#11726 `__: Handle constant > input for scipy.stats.f_oneway > * `#11729 `__: BENCH: optimize: > added infeasible benchmarks for linprog > * `#11731 `__: fix inaccurate > information about Mac OS compiler (#11696) > * `#11733 `__: Fix inaccurate > docstring example of HalfspaceIntersection > * `#11734 `__: Doc: fix > inaccurate docstring of SmoothBivariateSpline. > * `#11735 `__: Bug: stats: fix > wrong shape from median_absolute_deviation for... > * `#11736 `__: ENH: add input > validations and its tests for FITPACK in fitpack2.py > * `#11737 `__: BUG: Prevent > crashes due to MKL bug in ?heevr > * `#11739 `__: MAINT: special: > add type stubs for \`_test_round.pyx\` > * `#11740 `__: MAINT: special: > remove unused specfun f2py wrappers > * `#11741 `__: BUG: fix small > tolerances handling for minpack and add a test. > * `#11743 `__: Doc: fix > docstring of rfft, rfft2, rfftn, irfft, irfft2, irfftn... > * `#11744 `__: MAINT: Remove > unused py3k.h code > * `#11745 `__: DOC: stats: Clean > up ncf documentation. > * `#11748 `__: MAINT: special: > type \`cython_special\` as \`Any\` > * `#11750 `__: MAINT: type hints > for \`_spherical_voronoi\` > * `#11752 `__: DOC: fix > docstring of scipy.optimize.least_squares > * `#11753 `__: ENH: add input > validation for dendrogram and a test. > * `#11755 `__: MAINT: Replace > uses of tostring with tobytes > * `#11757 `__: ENH: improve > binned_statistics_2d performance. > * `#11759 `__: ENH: optimize: > add HiGHS methods to linprog > * `#11760 `__: MAINT: Remove > FileStream replaced by GenericStream > * `#11761 `__: MAINT: Replace > npy_3kcompat.h shims > * `#11765 `__: TST: Speedup > test_pascal which is VERY slow on Azure > * `#11766 `__: TST: speed up > differential_evolution L8 test > * `#11767 `__: Change comment in > continuous rv gamma fit function > * `#11776 `__: Add domain option > for resample. > * `#11784 `__: BUG: Fixed > calculation of nonzero elements in scipy.sparse.random > * `#11786 `__: ENH: stats: add > axis keyword argument to scipy.stats.rankdata > * `#11789 `__: Doc: fix > docstring of scipy.spatial.chebyshev > * `#11792 `__: DOC: dev: add > guidelines for developing public Cython APIs > * `#11794 `__: MAINT: add > comments explaining a problem in cython_optimize organization > * `#11796 `__: DOC: add a note > about precision losing in csgraph.minimum_spanning_tree... > * `#11797 `__: ENH: Allow > negative \`axis\` in \`interpolate.BSpline\`. Also... > * `#11798 `__: Add > simplify_cells parameter to scipy.io.loadmat > * `#11801 `__: MAINT, DOC: minor > changes of ratio-of-uniforms in scipy.stats > * `#11802 `__: BUG: fix > scipy.odr to handle multidimensional independent and... > * `#11803 `__: > scipy.stats.trapz: Use analytic formulas for stats and entropy. > * `#11808 `__: DOC: add Examples > in the scipy.interpolate.interpn docstring. > * `#11809 `__: Duplicate entries > are added together in csr_matrix constructor > * `#11813 `__: MAINT: bump > pyflakes to version 2.1.1 > * `#11814 `__: BUG: > scipy.sparse.csr doctest failing with incorrect output value > * `#11817 `__: DOC: add Examples > in the scipy.optimize.leastsq docstring > * `#11820 `__: ENH: Raise an > error on incorrect bounds format in optimize.fmin_l_bfgs_b > * `#11822 `__: CI: add github > actions for macOS > * `#11824 `__: DOC: add Examples > in scipy.optimize.line_search docstring (line_search_wolfe2) > * `#11830 `__: TST: Always use > fork for multiprocessing in fft tests > * `#11831 `__: DOC: add Examples > and Returns in scipy.misc.central_diff_weights... > * `#11832 `__: DOC: stats: Some > small corrections to a couple docstrings. > * `#11833 `__: BUG: Fix > compiler_name when there are paths used in flags > * `#11836 `__: MAINT: > re-introduce multiprocessing tests on Python3.8 > * `#11837 `__: Doc: add Examples > in scipy.optimize.fsolve docstring > * `#11838 `__: Doc: add Examples > in scipy.sparse.linalg.minres docstring > * `#11840 `__: BUG: > sparse.linalg: fix overflow in expm intermediate computation > * `#11842 `__: BLD: fix build > with gfortran 10 > * `#11843 `__: MAINT: Simplify > floats in constants.py > * `#11847 `__: DOC: add a > tutorial of scipy.optimize.linprog > * `#11849 `__: ENH: speed up > geninvgauss by using cython > * `#11852 `__: CI: remove osx > from travisCI > * `#11857 `__: BUG: Change > parameter fc of gausspulse to float. > * `#11861 `__: order = degree + > 1 for splines > * `#11863 `__: Make g77 ABI > wrapper work with gfortran ABI lapack > * `#11866 `__: MAINT: add type > ignores to sympy and matplotlib imports > * `#11867 `__: CI: Add arm64 in > travis-ci > * `#11869 `__: DOC: signal: Add > an example to the lsim2 docstring. > * `#11870 `__: DOC: signal: Use > impulse instead of impulse2 in the impulse example... > * `#11871 `__: ENH: type ufuncs > in special as ufuncs instead of Any > * `#11872 `__: BUG: avoid > recomputing in scipy.optimize.optimize.MemoizeJac > * `#11873 `__: DOC: signal: Fix > ODE in impulse and impulse2 docstrings. > * `#11874 `__: DOC: add Examples > of docstring for scipy.interpolate.approximate_taylor_polynomial > * `#11878 `__: DOC: fixed a typo > under scipy/integrate/quadrature.py > * `#11879 `__: BUG: Fix index > arrays overflow in sparse.kron > * `#11880 `__: DOC: stats: Add > Examples for bartlett, fligner, levene. > * `#11881 `__: MAINT: normalise > numpy-->np in optimize.py > * `#11882 `__: DOC: add Examples > for scipy.io.readsav docstring. > * `#11883 `__: DOC: add Returns > and Examples for scipy.ndimage.correlate() docstring > * `#11885 `__: BUG: stats: > Handle multidimensional arrays in f_oneway, and more. > * `#11889 `__: DOC: signal: > Unify lsim and lsim2 examples. > * `#11896 `__: BUG: stats: Fix > handling of size 0 inputs for ttest_rel and ttest_ind. > * `#11897 `__: DOC: Remove > misleading default values from fit method > * `#11898 `__: MAINT: > LinearVectorFunction.J is ndarray closes #11886 > * `#11902 `__: BUG: linalg: > test_heequb failure > * `#11904 `__: fix real-to-real > transforms for complex inputs and overwrite_x=True > * `#11906 `__: DOC: stats: fix > error caused by trapz docstring > * `#11907 `__: BUG: stats: fixed > SEGFAULT from Issue #9710 > * `#11912 `__: ENH: Respect > matplotlib color palette with hierarchy/dendrogram. > * `#11914 `__: DOC: refine doc > for spatial.distance.squareform > * `#11915 `__: ENH: Ndim linear > operator > * `#11919 `__: ENH: expose > "window_size" parameter in find_peaks_cwt() > * `#11920 `__: DOC: explain M, > diffev > * `#11923 `__: CI: macOS install > swig closes #11922 > * `#11924 `__: DOC: add Examples > for scipy.optimize.bracket() docstring > * `#11930 `__: DOC: add Examples > and clean up for signal.qspline1d and signal.qspline_eval... > * `#11931 `__: DOC: add Examples > for sparse.linalg.bicg docstring. > * `#11933 `__: DOC: Add original > reference for Yao-Liu objective functions > * `#11934 `__: DOC, MAINT: > mailmap update > * `#11935 `__: DOC: make > scipy.stats.mode documentation reflect that the function... > * `#11936 `__: ENH: special: add > type stubs for \`orthogonal.py\` > * `#11937 `__: DOC: Add > docstring examples to fft2, ifft2, io.savemat > * `#11938 `__: MAINT: add helper > function for deprecating Cython API functions > * `#11942 `__: MAINT: ignore > conditional import in _lib/_util > * `#11943 `__: MAINT: special: > add types for geterr/seterr/errstate > * `#11946 `__: MAINT: add > py.typed marker > * `#11950 `__: TST:MAINT: > separated and stabilized heequb tests > * `#11952 `__: DOC: update > toolchain roadmap for py38, C99, C++11/14 > * `#11957 `__: MAINT: Use > np.errstate context manager instead of np.seterr. > * `#11958 `__: MAINT: > interpolate: Remove some trailing spaces. > * `#11960 `__: MAINT: Cleanup > Python2 compatibility code > * `#11961 `__: MAINT: Remove > numpy/npy_3kcompat.h from _superluobject.c > * `#11962 `__: DOC: Fix type of > \`codes\` in docstring of \`_vq._vq()\` > * `#11964 `__: MAINT: Cleanup > unused IS_PYPY > * `#11969 `__: DOC: add Examples > and fix docstring for special.airye > * `#11970 `__: BUG: sparse: > 'diagonal' of sparse matrices fixed to match numpy's... > * `#11974 `__: BUG: Reshape > oaconvolve output even when no axes are convolved > * `#11976 `__: MAINT: add logo > for github actions > * `#11977 `__: CI: test bleeding > edge Python > * `#11979 `__: DOC: add Examples > for stats.ranksums() docstring. > * `#11982 `__: Fix KMeans++ > initialisation slowness > * `#11983 `__: DOC: add Examples > for stats.mstats.argstoarray() docstring. > * `#11986 `__: Avoid bugs in > ndimage when the output and input arrays overlap... > * `#11988 `__: ENH: Override fit > method of Laplace distribution with Maximum... > * `#11993 `__: TST, CI: Azure > Windows path fixups > * `#11995 `__: MAINT, CI: remove > custom mingw Azure > * `#11996 `__: DOC: add Examples > and fix pep warning for fft.set_global_backend... > * `#11997 `__: MAINT, CI: Azure > OpenBLAS simplify > * `#11998 `__: BENCH: Run > against current HEAD instead of master > * `#12001 `__: ENH: stats: > Implement _logpdf for the maxwell distribution. > * `#12004 `__: DOC: add examples > for integrate.quad_vec() and integrate.quad_explain() > * `#12005 `__: MAINT: Use helper > functions in ?tbtrs tests > * `#12007 `__: MAINT: updated > LICENSES_bundled for pybind11 and six > * `#12008 `__: DOC: roadmap > update > * `#12009 `__: ENH: optimize: > support 64-bit BLAS in lbfgsb > * `#12010 `__: ENH: > sparse.linalg: support 64-bit BLAS in isolve > * `#12012 `__: DOC: add Examples > for interpolate.barycentric_interpolate(),... > * `#12013 `__: MAINT: remove > last uses of numpy.dual > * `#12014 `__: CI: print 10 > slowest tests > * `#12020 `__: MAINT: Removed > handling of circular input in SphericalVoronoi > * `#12022 `__: DOC : added > default value of absolute_sigma to False in scipy.optimize.curve_fit docs > * `#12024 `__: DOC: add Examples > for io.hb_read() and io.hb_write() > * `#12025 `__: MAINT: Remove > numpy/npy_3kcompat.h from nd_image > * `#12028 `__: Spelling > correction > * `#12030 `__: ENH: > optimize/_trlib: support ILP64 blas/lapack > * `#12036 `__: MAINT: Add some > generated C files .gitignore > * `#12038 `__: MAINT, CI: Travis > rackcdn->conda.org > * `#12039 `__: MAINT: signal: > Lower the resolution of the plots in the chirp... > * `#12040 `__: DOC: add Examples > for ndimage.spline_filter1d() and spline_filter()... > * `#12044 `__: MAINT: combine > apt-get update and apt-get install into one RUN > * `#12045 `__: TST: Reduce size > of test_diagonal_types to speed up tests > * `#12046 `__: MAINT: Remove > unused npy_3kcompat.h > * `#12047 `__: MAINT: Cython 3.0 > compat > * `#12050 `__: DOC: add download > number badges of PyPI and conda-forge in README.rst > * `#12052 `__: DOC: add Examples > odr.models.polynomial() and fix odr.odr docstring... > * `#12056 `__: ENH: Modifies > shapiro to return a named tuple > * `#12057 `__: Adding my name > into THANKS.txt > * `#12060 `__: TST: Reduce > number of test_diagonal_types configs > * `#12062 `__: TST: Change > dec.slow to pytest.mark.slow > * `#12068 `__: ENH: Modifies > jarque_bera to return a named tuple > * `#12070 `__: MAINT, CI: > appveyor rack->conda.org > * `#12072 `__: TST: filter out > factorial(float) deprecation warning > * `#12078 `__: TST: Skip test on > colab with large memory alloc > * `#12079 `__: DOC: Remove > Python2 reference from stats tutorial > * `#12081 `__: DOC: add Examples > docstring for optimize.show_options() > * `#12084 `__: BUG: interpolate: > fix BarycentricInterpolator with integer input... > * `#12089 `__: ENH: > spatial/qhull: support ILP64 Lapack > * `#12090 `__: ENH: integrate: > support ILP64 BLAS in odeint/vode/lsoda > * `#12091 `__: ENH: integrate: > support ILP64 in quadpack > * `#12092 `__: BUG: Fix dropping > dt in signal.StateSpace > * `#12093 `__: MAINT: Rollback > python2.6 workaround > * `#12094 `__: MAINT: > \`openblas_support\` hash checks > * `#12095 `__: MAINT: ndimage: > change \`shares_memory\` to \`may_share_memory\` > * `#12098 `__: Doc: change 4 > model instances of odr to be instances of \`Model\`... > * `#12101 `__: Removed more > unused imports and assignments. > * `#12107 `__: ENH: Area > calculation for 2D inputs in SphericalVoronoi > * `#12108 `__: MAINT: ensure > attributes have correct data type in \`SphericalVoronoi\` > * `#12109 `__: degree is not > order in splines > * `#12110 `__: ENH: More > helpful/forgiving io.wavfile errors > * `#12117 `__: BUG: fix newline > * `#12123 `__: [MAINT] Fix error > on PyData/Sparse import. > * `#12124 `__: TST: Always test > matmul now that Python3.5+ is required > * `#12126 `__: TST: Cleanup > unused matplotlib code. > * `#12127 `__: DOC: update > docstrings of signal.cspline2d, qspline2d, sepfir2d > * `#12130 `__: MAINT: Fixing > broken links with linkchecker > * `#12135 `__: ENH: linalg: Add > the function convolution_matrix. > * `#12136 `__: MAINT: Cleanup > np.poly1d hack > * `#12137 `__: TST, CI: > reproduce wheels 32-bit setup > * `#12140 `__: TST: stats: add > kstwo, ksone to slow tests. > * `#12141 `__: Support 64-bit > integer size in Fitpack > * `#12151 `__: DOC: Correct > Rosenbrock function sum > * `#12159 `__: BUG: Fix length > calculation in upfirdn > * `#12160 `__: BUG: Fix M_PI > * `#12168 `__: DOC: add an > obsolete version checking javascript to doc release... > * `#12171 `__: CI, MAINT: Azure > OpenBLAS drive flip > * `#12172 `__: ENH: Bounds for > the Powell minimization method > * `#12175 `__: BLD: support more > Fortran compilers for ilp64 and macro expansion... > * `#12179 `__: BUG: stats: A few > distributions didn't accept lists as arguments. > * `#12180 `__: MAINT: removed > redundant import in SphericalVoronoi tests > * `#12181 `__: DOC: for > versionwarning don't use $.getScript > * `#12182 `__: MAINT: random > sampling on the hypersphere in SphericalVoronoi... > * `#12194 `__: MAINT: Module and > example cleanups for doc build > * `#12202 `__: ENH: tool to DL > release wheels from Anaconda > * `#12210 `__: Remove py.typed > marker (at least for the release) > * `#12217 `__: BUG: stats: Fix > handling of edge cases in median_abs_deviation. > * `#12223 `__: BUG: stats: > wilcoxon returned p > 1 for certain inputs. > * `#12227 `__: BLD: Set macos > min version when building rectangular_lsap > * `#12229 `__: MAINT: > tools/gh_lists.py: fix http header case sensitivity issue > * `#12236 `__: DOC: Fix a couple > grammatical mistakes in 1.5.0-notes.rst. > > > Checksums > ========= > > MD5 > ~~~ > > 06ae131459a8f9f3c937fd93df34941d > scipy-1.5.0rc1-cp36-cp36m-macosx_10_9_x86_64.whl > dccbe43624b6653f6456573507575cee > scipy-1.5.0rc1-cp36-cp36m-manylinux1_i686.whl > d8f025f467888674450ed38515083494 > scipy-1.5.0rc1-cp36-cp36m-manylinux1_x86_64.whl > 64c3f1654e715bc08fc7e092b8262c30 scipy-1.5.0rc1-cp36-cp36m-win32.whl > 3a8ec7956496ed7ee72beaf00421b1d0 scipy-1.5.0rc1-cp36-cp36m-win_amd64.whl > 7e6860a337c06d79a19fbef7174acd41 > scipy-1.5.0rc1-cp37-cp37m-macosx_10_9_x86_64.whl > d825cf7fe16d80ad3584492589dc3460 > scipy-1.5.0rc1-cp37-cp37m-manylinux1_i686.whl > 919412506218a00076538d8af5d7298d > scipy-1.5.0rc1-cp37-cp37m-manylinux1_x86_64.whl > 2979169481de902e252dc451154c477a scipy-1.5.0rc1-cp37-cp37m-win32.whl > 5f48084c65734a4aeae510f21bcf792a scipy-1.5.0rc1-cp37-cp37m-win_amd64.whl > 892607da25980af624c4a0cd82ff557f > scipy-1.5.0rc1-cp38-cp38-macosx_10_9_x86_64.whl > fb0bcb4d0646e28e093154a98d3bf3eb > scipy-1.5.0rc1-cp38-cp38-manylinux1_i686.whl > 827b361a0db6671b42ed5aad4a8a906c > scipy-1.5.0rc1-cp38-cp38-manylinux1_x86_64.whl > f71920b927c3d2eaed4df6c65407a56a scipy-1.5.0rc1-cp38-cp38-win32.whl > eacc04102822177622c4e0d5061d580d scipy-1.5.0rc1-cp38-cp38-win_amd64.whl > 4dccc1db984fc0fb92697e464774e4da scipy-1.5.0rc1.tar.gz > fad54bb2d322f02d4050e521cb856a27 scipy-1.5.0rc1.tar.xz > 62867d716dfcb8ae9bd907da479c6926 scipy-1.5.0rc1.zip > > SHA256 > ~~~~~~ > > ce0164965caadd3a53583ad63643679ccea70b6bb25a691e4a74d3e87e3fffea > scipy-1.5.0rc1-cp36-cp36m-macosx_10_9_x86_64.whl > 6591dc05981308fb620c3705bf684b57241b73fe9369748f36eaf7069969c67e > scipy-1.5.0rc1-cp36-cp36m-manylinux1_i686.whl > b5d756e25e26184d19172db49b185a05c618d7c1323588fa261563b451b0dc7b > scipy-1.5.0rc1-cp36-cp36m-manylinux1_x86_64.whl > a705d1c6b8b9b7a3f5f57aec792be3fce2d65cdf49a8559852084aa18c57af1e > scipy-1.5.0rc1-cp36-cp36m-win32.whl > d395b63f6bfb737f3b45c8253af7e1761af1cc015db7347cbaacf1f643f3f7b8 > scipy-1.5.0rc1-cp36-cp36m-win_amd64.whl > 1f57d75c49f6c8b17b4d9217011e5ecca4d04941eb79a465bdfdf9591f09a312 > scipy-1.5.0rc1-cp37-cp37m-macosx_10_9_x86_64.whl > 38cf18ab60d853113137229e328c97719c22b02d3bf8873349472103015de5f7 > scipy-1.5.0rc1-cp37-cp37m-manylinux1_i686.whl > 1f402f14e726d41fd34e30b6c54daac36ac84ee64c4a430ed4b5ec016705e053 > scipy-1.5.0rc1-cp37-cp37m-manylinux1_x86_64.whl > 52998372c9179ebfbf7e875e4cb29137d4edc2b9d6614c5e57a180501dacf4f0 > scipy-1.5.0rc1-cp37-cp37m-win32.whl > fb642c6c4a19feeeee84a74d1e38c16952fde36c752e4c4a8ed70f9e4d70d5c7 > scipy-1.5.0rc1-cp37-cp37m-win_amd64.whl > eabc685cae91a899f6eff8aed3db3df2ad884df3b46f85314b5ca016d5bb93ea > scipy-1.5.0rc1-cp38-cp38-macosx_10_9_x86_64.whl > 52b693c1f842e126efb7882038680fed920fc2014cad3a16da4673e41dc8d0a9 > scipy-1.5.0rc1-cp38-cp38-manylinux1_i686.whl > 25db07c206d81c9dd9b9a0ea4ea4a134026e4cddc83968e99bc2b95ce2b3c760 > scipy-1.5.0rc1-cp38-cp38-manylinux1_x86_64.whl > 2a0d8504a08507d6e7b5c2b65db11fdb10ca63245166a5496fe3a781d0d9a452 > scipy-1.5.0rc1-cp38-cp38-win32.whl > 142649a4487e8849aa7e3ea11e010f6201683ed56adc02270d2c7a8cdb93a7e8 > scipy-1.5.0rc1-cp38-cp38-win_amd64.whl > e90d679b96b9cbd249e900b2d03558bb01ae161aa9400e9b6cd435cce82552ea > scipy-1.5.0rc1.tar.gz > e662fba1716763204a38293bf7a157af42c72dec3fc0ea55ff83dc8f49fbf0b5 > scipy-1.5.0rc1.tar.xz > 90f6fb35601d3ce52cdc9d53888a92504efec9a267a524bc33ad66a407ce070d > scipy-1.5.0rc1.zip > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v2 > > iQIcBAEBCAAGBQJe0sVbAAoJELD/41ZX0J71n/4P/3012tbgm9o+SaGUiaQy6PGj > TqzuX9vRbJipUUODVXQjDJz85oEKOlTLYFeTB1gS27p1s1DpsGs5rDhPv2t0DFUL > MKDFYGt3xwQf+3JTJXBAuEyIl62H/YrwIUvVJic9lzJ+b/lPm+5G4ax+Iso1H/x+ > 2hN/KiFsKS/ckQ3P2GYvTmW2WGVhacYd1qJM0NNBJa+12nJmLeFlHrWzC6D3hrT/ > w1dlVGW7dbEBpRQ6IrH/TFY+8I+my3DyJlnhCDsKOoSRFvZSAXX5Ajsj9jB3s1l1 > vRy/fjM7uTk6WBwLkfi64o01Z0RKL3wB0+mpjXEZd39IayjPT5vzS2iHm1gnpXzv > uxW+Btfem6XJlVEXeG9R7BWe7SDJq1f009QIlUfCB35k/G5y1Cd+F+I4l4hB/Vw+ > 2zoUgfJT9m/r0VZ2bvoIzLx8Q3fDtFceqMbxSy1HCQ/7BYJ/w/PM8eChKsBj7SgJ > BXh8EzVpSMeWTVuGWtztl9sZKGKJKkEVxuOVVze4V9PNkW4sQDNcz5YmPsfpQHvc > dIrivDKMAlxbOT8nUEZ8bAd6AaN5i9E8+450XmfN307Q1sRj1X5JdhtZTqITs1w1 > /RBgwvM8XaQLn0wd8QtwVaEkyd5gu/ui0yPzwJ2WEb5zz5VbbHacm6pDR8avTXQW > zdR9OHUlD+Zgvah64iAW > =INrS > -----END PGP SIGNATURE----- > From pav at iki.fi Sat May 30 18:47:01 2020 From: pav at iki.fi (Pauli Virtanen) Date: Sun, 31 May 2020 01:47:01 +0300 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: la, 2020-05-30 kello 15:46 -0600, Tyler Reddy kirjoitti: > Also, some parts of the release process (quite possibly "paver > write_release_and_log") introduce small flaws into the release notes > (underlines "---------" gain a spurious space "- --------", and > bullet lists get another bullet ("-" to "- -"). I correct these > manually to the extent reasonable, but I do not currently manually > correct the pasted author names. Those are actually not flaws, but parts of the encoding required for the GPG signature. If you modify them manually, the signature becomes invalid (as you can see if your email client supports GPG). Pauli > The "-" issue has existed for all releases in recent memory; the > author names/encoding issue probably depends on how I copy/paste > (which OS/text editor, etc.). > > On Sat, 30 May 2020 at 10:56, Tyler Reddy > wrote: > > The 1.5.0rc1 wheels are slightly delayed because I had to bump > > Cython version in the wheels branch to match our Cython bump in the > > main repo. That'll cost about half a day of time, so maybe later > > tonight or tomorrow I can put those out. > > > > On Mon, 25 May 2020 at 15:25, Tyler Reddy > > wrote: > > > Early draft 1.5.0 release notes PR is open: > > > https://github.com/scipy/scipy/pull/12221 > > > > > > Please do help improve/fix issues there. > > > > > > Best wishes, > > > Tyler > > > > > > On Fri, 22 May 2020 at 03:48, Ralf Gommers < > > > ralf.gommers at gmail.com> wrote: > > > > > > > > On Fri, May 22, 2020 at 2:02 AM Eric Larson < > > > > larson.eric.d at gmail.com> wrote: > > > > > +1 for bumping it before 1.5.0 branching. It is indeed a > > > > > risk, but it's a minor version change so hopefully just makes > > > > > things work better. > > > > > > > > > > > > > +1 from me too, that should always be fine if CI is green, > > > > > > > > Ralf > > > > > > > > > Eric > > > > > > > > > > > > > > > On Thu, May 21, 2020 at 7:44 PM Tyler Reddy < > > > > > tyler.je.reddy at gmail.com> wrote: > > > > > > Any objections to bumping our minimum Cython version from > > > > > > 0.29.14 to 0.29.18 to support: > > > > > > https://github.com/scipy/scipy/pull/11385 ? > > > > > > > > > > > > We do typically bump Cython versions regularly, though just > > > > > > a few days before branching might be asking for trouble? > > > > > > > > > > > > Best wishes, > > > > > > Tyler > > > > > > > > > > > > On Fri, 8 May 2020 at 01:30, Ralf Gommers < > > > > > > ralf.gommers at gmail.com> wrote: > > > > > > > > > > > > > > On Wed, May 6, 2020 at 4:49 AM Tyler Reddy < > > > > > > > tyler.je.reddy at gmail.com> wrote: > > > > > > > > Hi, > > > > > > > > > > > > > > > > SciPy 1.4.0 was released December 16 (~ 5 months ago), > > > > > > > > and I think we'd like to keep a roughly biannual > > > > > > > > release cadence. > > > > > > > > > > > > > > > > I'd like to propose the following schedule for 1.5.0: > > > > > > > > - May 26/2020: branch 1.5.x > > > > > > > > - May 29/2020: rc1 > > > > > > > > - June 11/2020: rc2 (if needed) > > > > > > > > - June 20/2020: final release > > > > > > > > > > > > > > > > > > > > > > Sounds good to me. > > > > > > > > > > > > > > > Complicating factors this time around may include > > > > > > > > attempts at providing ARM/ppc64le wheels and the > > > > > > > > continued migration from rackspace -> anaconda.org for > > > > > > > > asset hosting in both the main and wheels repos. > > > > > > > > > > > > > > > > > > > > > > Looks like the anaconda.org migration is going well, > > > > > > > thanks to Tyler and everyone else who is pitching in. > > > > > > > Having arm64/ppc64le wheels would be great, we're pretty > > > > > > > far along. Not a blocker though - they could be uploaded > > > > > > > later. Having CI for both platforms in place now is a > > > > > > > good place to start from. > > > > > > > > > > > > > > > As always, it is a good idea to start tagging things > > > > > > > > that should be in 1.5.0 & please do help with reviewing > > > > > > > > PRs/issues that are tagged--current counts are: > > > > > > > > > > > > > > > > - 23 open issues with 1.5.0 milestone > > > > > > > > - 38 open PRs with 1.5.0 milestone > > > > > > > > > > > > > > > > > > > > > > I bumped a few milestones and merged some PRs, it's down > > > > > > > to 53 total. There's a bunch of PRs that we really need > > > > > > > to review, but not any really problematic issues it looks > > > > > > > like. > > > > > > > > > > > > > > > While helping with that, also great if the release > > > > > > > > notes wiki is updated for appropriate changes: > > > > > > > > https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 > > > > > > > > > > > > > > > > > > > > > > > > Curating those final notes can be painful if the wiki > > > > > > > > isn't updated. > > > > > > > > > > > > > > > > Thoughts/objections for the schedule? > > > > > > > > > > > > > > > > > > > > > > Thanks for leading the charge again Tyler. > > > > > > > > > > > > > > Cheers, > > > > > > > Ralf > > > > > > > > > > > > > > > > > > > > > > Best wishes, > > > > > > > > Tyler > > > > > > > > _______________________________________________ > > > > > > > > SciPy-Dev mailing list > > > > > > > > SciPy-Dev at python.org > > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > > > > > _______________________________________________ > > > > > > > SciPy-Dev mailing list > > > > > > > SciPy-Dev at python.org > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > > > _______________________________________________ > > > > > > SciPy-Dev mailing list > > > > > > SciPy-Dev at python.org > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > _______________________________________________ > > > > > SciPy-Dev mailing list > > > > > SciPy-Dev at python.org > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > _______________________________________________ > > > > SciPy-Dev mailing list > > > > SciPy-Dev at python.org > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev From tyler.je.reddy at gmail.com Sat May 30 18:56:56 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Sat, 30 May 2020 16:56:56 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: Ah interesting, but copy/pasting the extra "Hi all.." text/preamble at the start doesn't invalidate the signature? I guess I don't understand encryption stuff enough to know why we can't have the retained formatting and encryption at the same time. On Sat, 30 May 2020 at 16:48, Pauli Virtanen wrote: > la, 2020-05-30 kello 15:46 -0600, Tyler Reddy kirjoitti: > > Also, some parts of the release process (quite possibly "paver > > write_release_and_log") introduce small flaws into the release notes > > (underlines "---------" gain a spurious space "- --------", and > > bullet lists get another bullet ("-" to "- -"). I correct these > > manually to the extent reasonable, but I do not currently manually > > correct the pasted author names. > > Those are actually not flaws, but parts of the encoding required for > the GPG signature. If you modify them manually, the signature becomes > invalid (as you can see if your email client supports GPG). > > Pauli > > > > The "-" issue has existed for all releases in recent memory; the > > author names/encoding issue probably depends on how I copy/paste > > (which OS/text editor, etc.). > > > > On Sat, 30 May 2020 at 10:56, Tyler Reddy > > wrote: > > > The 1.5.0rc1 wheels are slightly delayed because I had to bump > > > Cython version in the wheels branch to match our Cython bump in the > > > main repo. That'll cost about half a day of time, so maybe later > > > tonight or tomorrow I can put those out. > > > > > > On Mon, 25 May 2020 at 15:25, Tyler Reddy > > > wrote: > > > > Early draft 1.5.0 release notes PR is open: > > > > https://github.com/scipy/scipy/pull/12221 > > > > > > > > Please do help improve/fix issues there. > > > > > > > > Best wishes, > > > > Tyler > > > > > > > > On Fri, 22 May 2020 at 03:48, Ralf Gommers < > > > > ralf.gommers at gmail.com> wrote: > > > > > > > > > > On Fri, May 22, 2020 at 2:02 AM Eric Larson < > > > > > larson.eric.d at gmail.com> wrote: > > > > > > +1 for bumping it before 1.5.0 branching. It is indeed a > > > > > > risk, but it's a minor version change so hopefully just makes > > > > > > things work better. > > > > > > > > > > > > > > > > +1 from me too, that should always be fine if CI is green, > > > > > > > > > > Ralf > > > > > > > > > > > Eric > > > > > > > > > > > > > > > > > > On Thu, May 21, 2020 at 7:44 PM Tyler Reddy < > > > > > > tyler.je.reddy at gmail.com> wrote: > > > > > > > Any objections to bumping our minimum Cython version from > > > > > > > 0.29.14 to 0.29.18 to support: > > > > > > > https://github.com/scipy/scipy/pull/11385 ? > > > > > > > > > > > > > > We do typically bump Cython versions regularly, though just > > > > > > > a few days before branching might be asking for trouble? > > > > > > > > > > > > > > Best wishes, > > > > > > > Tyler > > > > > > > > > > > > > > On Fri, 8 May 2020 at 01:30, Ralf Gommers < > > > > > > > ralf.gommers at gmail.com> wrote: > > > > > > > > > > > > > > > > On Wed, May 6, 2020 at 4:49 AM Tyler Reddy < > > > > > > > > tyler.je.reddy at gmail.com> wrote: > > > > > > > > > Hi, > > > > > > > > > > > > > > > > > > SciPy 1.4.0 was released December 16 (~ 5 months ago), > > > > > > > > > and I think we'd like to keep a roughly biannual > > > > > > > > > release cadence. > > > > > > > > > > > > > > > > > > I'd like to propose the following schedule for 1.5.0: > > > > > > > > > - May 26/2020: branch 1.5.x > > > > > > > > > - May 29/2020: rc1 > > > > > > > > > - June 11/2020: rc2 (if needed) > > > > > > > > > - June 20/2020: final release > > > > > > > > > > > > > > > > > > > > > > > > > Sounds good to me. > > > > > > > > > > > > > > > > > Complicating factors this time around may include > > > > > > > > > attempts at providing ARM/ppc64le wheels and the > > > > > > > > > continued migration from rackspace -> anaconda.org for > > > > > > > > > asset hosting in both the main and wheels repos. > > > > > > > > > > > > > > > > > > > > > > > > > Looks like the anaconda.org migration is going well, > > > > > > > > thanks to Tyler and everyone else who is pitching in. > > > > > > > > Having arm64/ppc64le wheels would be great, we're pretty > > > > > > > > far along. Not a blocker though - they could be uploaded > > > > > > > > later. Having CI for both platforms in place now is a > > > > > > > > good place to start from. > > > > > > > > > > > > > > > > > As always, it is a good idea to start tagging things > > > > > > > > > that should be in 1.5.0 & please do help with reviewing > > > > > > > > > PRs/issues that are tagged--current counts are: > > > > > > > > > > > > > > > > > > - 23 open issues with 1.5.0 milestone > > > > > > > > > - 38 open PRs with 1.5.0 milestone > > > > > > > > > > > > > > > > > > > > > > > > > I bumped a few milestones and merged some PRs, it's down > > > > > > > > to 53 total. There's a bunch of PRs that we really need > > > > > > > > to review, but not any really problematic issues it looks > > > > > > > > like. > > > > > > > > > > > > > > > > > While helping with that, also great if the release > > > > > > > > > notes wiki is updated for appropriate changes: > > > > > > > > > > https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 > > > > > > > > > > > > > > > > > > > > > > > > > > > Curating those final notes can be painful if the wiki > > > > > > > > > isn't updated. > > > > > > > > > > > > > > > > > > Thoughts/objections for the schedule? > > > > > > > > > > > > > > > > > > > > > > > > > Thanks for leading the charge again Tyler. > > > > > > > > > > > > > > > > Cheers, > > > > > > > > Ralf > > > > > > > > > > > > > > > > > > > > > > > > > Best wishes, > > > > > > > > > Tyler > > > > > > > > > _______________________________________________ > > > > > > > > > SciPy-Dev mailing list > > > > > > > > > SciPy-Dev at python.org > > > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > > > SciPy-Dev mailing list > > > > > > > > SciPy-Dev at python.org > > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > > > > > _______________________________________________ > > > > > > > SciPy-Dev mailing list > > > > > > > SciPy-Dev at python.org > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > > > _______________________________________________ > > > > > > SciPy-Dev mailing list > > > > > > SciPy-Dev at python.org > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > > > > > > > _______________________________________________ > > > > > SciPy-Dev mailing list > > > > > SciPy-Dev at python.org > > > > > https://mail.python.org/mailman/listinfo/scipy-dev > > > > _______________________________________________ > > SciPy-Dev mailing list > > SciPy-Dev at python.org > > https://mail.python.org/mailman/listinfo/scipy-dev > > _______________________________________________ > SciPy-Dev mailing list > SciPy-Dev at python.org > https://mail.python.org/mailman/listinfo/scipy-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tyler.je.reddy at gmail.com Sun May 31 18:43:09 2020 From: tyler.je.reddy at gmail.com (Tyler Reddy) Date: Sun, 31 May 2020 16:43:09 -0600 Subject: [SciPy-Dev] Proposed SciPy 1.5.0 Release Schedule In-Reply-To: References: Message-ID: For the author names formatting issue, it looks like the problem happens when the release notes are opened in "gvim" on Windows so I can more easily copy/paste them vs. copying from vim in WSL. Maybe some encoding settings. I've already seen one complaint about that--I'll try to use a different intermediate for rc2/final release. Ideally GitHub would just provide a way to read the draft release notes contents in from a file directly. On Sat, 30 May 2020 at 16:56, Tyler Reddy wrote: > Ah interesting, but copy/pasting the extra "Hi all.." text/preamble at the > start doesn't invalidate the signature? > > I guess I don't understand encryption stuff enough to know why we can't > have the retained formatting and encryption at the same time. > > On Sat, 30 May 2020 at 16:48, Pauli Virtanen wrote: > >> la, 2020-05-30 kello 15:46 -0600, Tyler Reddy kirjoitti: >> > Also, some parts of the release process (quite possibly "paver >> > write_release_and_log") introduce small flaws into the release notes >> > (underlines "---------" gain a spurious space "- --------", and >> > bullet lists get another bullet ("-" to "- -"). I correct these >> > manually to the extent reasonable, but I do not currently manually >> > correct the pasted author names. >> >> Those are actually not flaws, but parts of the encoding required for >> the GPG signature. If you modify them manually, the signature becomes >> invalid (as you can see if your email client supports GPG). >> >> Pauli >> >> >> > The "-" issue has existed for all releases in recent memory; the >> > author names/encoding issue probably depends on how I copy/paste >> > (which OS/text editor, etc.). >> > >> > On Sat, 30 May 2020 at 10:56, Tyler Reddy >> > wrote: >> > > The 1.5.0rc1 wheels are slightly delayed because I had to bump >> > > Cython version in the wheels branch to match our Cython bump in the >> > > main repo. That'll cost about half a day of time, so maybe later >> > > tonight or tomorrow I can put those out. >> > > >> > > On Mon, 25 May 2020 at 15:25, Tyler Reddy > > > > wrote: >> > > > Early draft 1.5.0 release notes PR is open: >> > > > https://github.com/scipy/scipy/pull/12221 >> > > > >> > > > Please do help improve/fix issues there. >> > > > >> > > > Best wishes, >> > > > Tyler >> > > > >> > > > On Fri, 22 May 2020 at 03:48, Ralf Gommers < >> > > > ralf.gommers at gmail.com> wrote: >> > > > > >> > > > > On Fri, May 22, 2020 at 2:02 AM Eric Larson < >> > > > > larson.eric.d at gmail.com> wrote: >> > > > > > +1 for bumping it before 1.5.0 branching. It is indeed a >> > > > > > risk, but it's a minor version change so hopefully just makes >> > > > > > things work better. >> > > > > > >> > > > > >> > > > > +1 from me too, that should always be fine if CI is green, >> > > > > >> > > > > Ralf >> > > > > >> > > > > > Eric >> > > > > > >> > > > > > >> > > > > > On Thu, May 21, 2020 at 7:44 PM Tyler Reddy < >> > > > > > tyler.je.reddy at gmail.com> wrote: >> > > > > > > Any objections to bumping our minimum Cython version from >> > > > > > > 0.29.14 to 0.29.18 to support: >> > > > > > > https://github.com/scipy/scipy/pull/11385 ? >> > > > > > > >> > > > > > > We do typically bump Cython versions regularly, though just >> > > > > > > a few days before branching might be asking for trouble? >> > > > > > > >> > > > > > > Best wishes, >> > > > > > > Tyler >> > > > > > > >> > > > > > > On Fri, 8 May 2020 at 01:30, Ralf Gommers < >> > > > > > > ralf.gommers at gmail.com> wrote: >> > > > > > > > >> > > > > > > > On Wed, May 6, 2020 at 4:49 AM Tyler Reddy < >> > > > > > > > tyler.je.reddy at gmail.com> wrote: >> > > > > > > > > Hi, >> > > > > > > > > >> > > > > > > > > SciPy 1.4.0 was released December 16 (~ 5 months ago), >> > > > > > > > > and I think we'd like to keep a roughly biannual >> > > > > > > > > release cadence. >> > > > > > > > > >> > > > > > > > > I'd like to propose the following schedule for 1.5.0: >> > > > > > > > > - May 26/2020: branch 1.5.x >> > > > > > > > > - May 29/2020: rc1 >> > > > > > > > > - June 11/2020: rc2 (if needed) >> > > > > > > > > - June 20/2020: final release >> > > > > > > > > >> > > > > > > > >> > > > > > > > Sounds good to me. >> > > > > > > > >> > > > > > > > > Complicating factors this time around may include >> > > > > > > > > attempts at providing ARM/ppc64le wheels and the >> > > > > > > > > continued migration from rackspace -> anaconda.org for >> > > > > > > > > asset hosting in both the main and wheels repos. >> > > > > > > > > >> > > > > > > > >> > > > > > > > Looks like the anaconda.org migration is going well, >> > > > > > > > thanks to Tyler and everyone else who is pitching in. >> > > > > > > > Having arm64/ppc64le wheels would be great, we're pretty >> > > > > > > > far along. Not a blocker though - they could be uploaded >> > > > > > > > later. Having CI for both platforms in place now is a >> > > > > > > > good place to start from. >> > > > > > > > >> > > > > > > > > As always, it is a good idea to start tagging things >> > > > > > > > > that should be in 1.5.0 & please do help with reviewing >> > > > > > > > > PRs/issues that are tagged--current counts are: >> > > > > > > > > >> > > > > > > > > - 23 open issues with 1.5.0 milestone >> > > > > > > > > - 38 open PRs with 1.5.0 milestone >> > > > > > > > > >> > > > > > > > >> > > > > > > > I bumped a few milestones and merged some PRs, it's down >> > > > > > > > to 53 total. There's a bunch of PRs that we really need >> > > > > > > > to review, but not any really problematic issues it looks >> > > > > > > > like. >> > > > > > > > >> > > > > > > > > While helping with that, also great if the release >> > > > > > > > > notes wiki is updated for appropriate changes: >> > > > > > > > > >> https://github.com/scipy/scipy/wiki/Release-note-entries-for-SciPy-1.5.0 >> > > > > > > > > >> > > > > > > > > >> > > > > > > > > Curating those final notes can be painful if the wiki >> > > > > > > > > isn't updated. >> > > > > > > > > >> > > > > > > > > Thoughts/objections for the schedule? >> > > > > > > > > >> > > > > > > > >> > > > > > > > Thanks for leading the charge again Tyler. >> > > > > > > > >> > > > > > > > Cheers, >> > > > > > > > Ralf >> > > > > > > > >> > > > > > > > >> > > > > > > > > Best wishes, >> > > > > > > > > Tyler >> > > > > > > > > _______________________________________________ >> > > > > > > > > SciPy-Dev mailing list >> > > > > > > > > SciPy-Dev at python.org >> > > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev >> > > > > > > > >> > > > > > > > _______________________________________________ >> > > > > > > > SciPy-Dev mailing list >> > > > > > > > SciPy-Dev at python.org >> > > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev >> > > > > > > >> > > > > > > _______________________________________________ >> > > > > > > SciPy-Dev mailing list >> > > > > > > SciPy-Dev at python.org >> > > > > > > https://mail.python.org/mailman/listinfo/scipy-dev >> > > > > > >> > > > > > _______________________________________________ >> > > > > > SciPy-Dev mailing list >> > > > > > SciPy-Dev at python.org >> > > > > > https://mail.python.org/mailman/listinfo/scipy-dev >> > > > > >> > > > > _______________________________________________ >> > > > > SciPy-Dev mailing list >> > > > > SciPy-Dev at python.org >> > > > > https://mail.python.org/mailman/listinfo/scipy-dev >> > >> > _______________________________________________ >> > SciPy-Dev mailing list >> > SciPy-Dev at python.org >> > https://mail.python.org/mailman/listinfo/scipy-dev >> >> _______________________________________________ >> SciPy-Dev mailing list >> SciPy-Dev at python.org >> https://mail.python.org/mailman/listinfo/scipy-dev >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From charlesr.harris at gmail.com Sun May 31 19:50:17 2020 From: charlesr.harris at gmail.com (Charles R Harris) Date: Sun, 31 May 2020 17:50:17 -0600 Subject: [SciPy-Dev] (no subject) Message-ID: Hi All, On behalf of the NumPy team I am pleased to announce that NumPy 1.19.0rc2 has been released. This NumPy release supports Python 3.6-3.8 and is marked by the removal of much technical debt: support for Python 2 has been removed, many deprecations have been expired, and documentation has been improved. The polishing of the random module continues apace with bug fixes and better usability from Cython. Perhaps the most interesting thing for users will be the availability of wheels for aarch64 and PyPY. Downstream developers should use Cython >= 0.29.16 for Python 3.8 support and OpenBLAS >= 3.7 to avoid wrong results on the Skylake architecture. The NumPy Wheels for this release can be downloaded from PyPI , source archives and release notes are available from Github . *Contributors* A total of 124 people contributed to this release. People with a "+" by their names contributed a patch for the first time. - Alex Henrie - Alexandre de Siqueira + - Andras Deak - Andrea Sangalli + - Andreas Kl?ckner + - Andrei Shirobokov + - Anirudh Subramanian + - Anne Bonner - Anton Ritter-Gogerly + - Benjamin Trendelkamp-Schroer + - Bharat Raghunathan - Brandt Bucher + - Brian Wignall - Bui Duc Minh + - Changqing Li + - Charles Harris - Chris Barker - Chris Holland + - Christian Kastner + - Chunlin + - Chunlin Fang + - Damien Caliste + - Dan Allan - Daniel Hrisca - Daniel Povey + - Dustan Levenstein + - Emmanuelle Gouillart + - Eric Larson - Eric M. Bray - Eric Mariasis + - Eric Wieser - Erik Welch + - Fabio Zeiser + - Gabriel Gerlero + - Ganesh Kathiresan + - Gengxin Xie + - Guilherme Leobas - Guillaume Peillex + - Hameer Abbasi - Hao Jin + - Harshal Prakash Patankar + - Heshy Roskes + - Himanshu Garg + - Huon Wilson + - John Han + - John Kirkham - Jon Dufresne - Jon Morris + - Josh Wilson - Justus Magin - Kai Striega - Kerem Halla? + - Kevin Sheppard - Kirill Zinovjev + - Marcin Podhajski + - Mark Harfouche - Marten van Kerkwijk - Martin Michlmayr + - Masashi Kishimoto + - Mathieu Lamarre - Matt Hancock + - MatteoRaso + - Matthew Harrigan - Matthias Bussonnier - Matti Picus - Max Balandat + - Maximilian Konrad + - Maxwell Aladago - Maxwell Bileschi + - Melissa Weber Mendon?a + - Michael Felt - Mike Taves - Nico Schl?mer - Pan Jan + - Paul Rougieux + - Pauli Virtanen - Peter Andreas Entschev - Petre-Flaviu Gostin + - Pierre de Buyl - Piotr Gai?ski + - Przemyslaw Bartosik + - Raghuveer Devulapalli - Rakesh Vasudevan + - Ralf Gommers - RenaRuirui + - Roman Yurchak - Ross Barnowski + - Ryan + - Ryan Soklaski - Sanjeev Kumar + - SanthoshBala18 + - Sayed Adel + - Sebastian Berg - Seth Troisi - Sha Liu + - Siba Smarak Panigrahi + - Simon Gasse + - Stephan Hoyer - Steve Dower + - Thomas A Caswell - Till Hoffmann + - Tim Hoffmann - Tina Oberoi + - Tirth Patel - Tyler Reddy - Warren Weckesser - Wojciech Rzadkowski + - Xavier Thomas + - Yilin LI + - Zac Hatfield-Dodds + - Z? Vin?cius + - @Adam + - @Anthony + - @Jim + - @bartosz-grabowski + - @dojafrat + - @gamboon + - @jfbu + - @keremh + - @mayeut + - @ndunnewind + - @nglinh + - @shreepads + - @sslivkoff + Cheers, Charles Harris -------------- next part -------------- An HTML attachment was scrubbed... URL: