Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backports release 1.5-RC2 #36577

Merged
merged 12 commits into from
Jul 14, 2020
Merged

Backports release 1.5-RC2 #36577

merged 12 commits into from
Jul 14, 2020

Conversation

KristofferC
Copy link
Sponsor Member

@KristofferC KristofferC commented Jul 8, 2020

Backported PRs:

Contains multiple commits, manual intervention needed:

dlfivefifty and others added 6 commits July 8, 2020 14:49
* Remove unnecessary restriction to `StridedVecOrMat`

The "Strided array interface" https://docs.julialang.org/en/v1/manual/interfaces/#man-interface-strided-arrays-1 means that this is useful beyond these types

* Update adjtrans.jl

* Add tests for adj/trans strides

* Add tests, change strides(::Adjoint{<:Any,<:AbstractVector}) definition

* stride(::AbstractrArray, k) for all k, add ConjPtr

* Remove ConjPtr

* Always throw an error if strides is not implemented

* Update abstractarray.jl

* Update blas.jl

* Remove k < 1 special case

* Also widen elsize to AbstractVecOrMat

* Use strides for dim > ndims

* Update stdlib/LinearAlgebra/test/blas.jl

Co-authored-by: Matt Bauman <[email protected]>
(cherry picked from commit 6b2c7f1)
When using `return` or `break` nested inside `finally` handlers,
exception stack lowering failed to pop exceptions from the stack
correctly:

* For `return`, the exception stack was not popped at all. If done
  inside a loop this could eventually cause the runtime to run out of
  memory.
* For `break`, the exception stack was popped too early, causing subtle
  inconsistency in intermediate finally handlers.

Fix these issues by storing the current exception token stack with the
current finally handler information and using it to pop the stack before
jumping into the finally block.

Fixes #34579

(cherry picked from commit 16ba0dd)
While the condition (the new type has to be wider) of the assertion
should hold, #36407 shows that this may still fail sometimes. Instead of
throwing an error, it seems better to just widen more aggressively if
needed to ensure that the condition is fulfilled.

(cherry picked from commit 604f658)
* fix broadcast for scalar cartesian indexing

When broadcasting left-hand side indexing is turned into a dotview.
For scalar indexing this should be equivalent to a `getindex`, but up
until this patch the `CartesianIndex` would not be treated as such.

This fixes e.g. broadcasting like `a[CartesianIndex(1)] .= 1` for a nested
array `a`.

* Also extend to `AbstractCartesianIndex`es

Co-authored-by: Matt Bauman <[email protected]>
(cherry picked from commit ff17412)
@KristofferC KristofferC added the release Release management and versioning. label Jul 8, 2020
@martinholters
Copy link
Member

I've backported "#36532 - Fix #36531 - Error in abstract_iteration". Should I just push it here or open a PR into this branch?

@KristofferC
Copy link
Sponsor Member Author

You could just push it here.

yuyichao and others added 2 commits July 10, 2020 21:06
The issue here is passing a `Vargarg` to `precise_container_type`, which
doesn't really make sense. Instead, we need to have the caller unwrap
the vararg, request the precise container type of the inner type and
then re-wrap the answer in a vararg.

(cherry picked from commit 63179af)
@KristofferC KristofferC merged commit 33582a9 into release-1.5 Jul 14, 2020
@KristofferC KristofferC deleted the backports-release-1.5 branch July 14, 2020 12:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release Release management and versioning.
Projects
None yet
Development

Successfully merging this pull request may close these issues.