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 for Julia 1.8.4 #47488

Merged
merged 26 commits into from
Dec 16, 2022
Merged

Backports for Julia 1.8.4 #47488

merged 26 commits into from
Dec 16, 2022

Conversation

KristofferC
Copy link
Member

@KristofferC KristofferC commented Nov 8, 2022

Backported PRs:

Need manual backport:

Contains multiple commits, manual intervention needed:

Non-merged PRs with backport label:

@KristofferC KristofferC requested a review from a team as a code owner November 8, 2022 07:18
@KristofferC KristofferC changed the title Backports release 1.8 Backports for Julia 1.8.4 Nov 8, 2022
@DilumAluthge DilumAluthge removed the request for review from a team November 8, 2022 12:33
@DilumAluthge DilumAluthge added the release Release management and versioning. label Nov 8, 2022
awfeequdng and others added 4 commits November 15, 2022 12:38
Co-authored-by: Gabriel Baraldi <baraldigabriel@gmail.com>
(cherry picked from commit 9e1dac0)
…hefile (#47433)

* CircleCI caching: allow ftime to be ceil(ftime_req) in Base.stale_cachefile

It appears that [caching functionalities](https://circleci.com/docs/caching/) provided by CircleCi, a leading CI/CD provider, can truncate timestamps to full seconds, resulting in re-compilations as below:
```
Rejecting stale cache file /root/.julia/compiled/v1.8/ComponentArrays/cYHSD_3rQji.ji (mtime 1.6673960929277816e9) because file /root/.julia/packages/ComponentArrays/YyD7i/src/ComponentArrays.jl
```

This PR relaxes the `is_stale` check to be robust against rounding-to-second timestamp mutations.

I can provide a minimal CircleCI configuration file to reproduce if this is helpful.

(cherry picked from commit bf92e83)
LLVM adds the nonnull attribute on its own, which makes
the verifier fail.

Fixes #47245

(cherry picked from commit bc39fd1)
@DilumAluthge DilumAluthge removed their request for review November 17, 2022 14:02
@DilumAluthge
Copy link
Member

I'd like to get JuliaCI/julia-buildkite#259 merged before this PR is merged. This will allow Buildkite to upload .zip files for Windows for 1.8.4.

apaz-cli and others added 3 commits November 28, 2022 20:14
* Probe if system libstdc++ is newer than ours

If the system libstdc++ is detected to be newer, load it.
Otherwise, load the one that we ship. This improves compatibility
with external shared libraries that the user might have on their
system.

Fixes #34276

Co-authored-by: Jameson Nash <vtjnash@gmail.com>
Co-authored-by: Elliot Saba <staticfloat@gmail.com>

* Addressed review comments.

* Change error handling in wrapper functions

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Call write_wrapper three times instead of snprintf

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Apply suggestions from code review

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Update cli/loader_lib.c

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Reordered reading and waiting to avoid a deadlock.

* Fixed obvious issues.

* Only load libstdc++ preemptively on linux.

* Update cli/loader_lib.c

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Update cli/loader_lib.c

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Specified path to bundled libstdc++ on the command line.

* Removed whitespace.

* Update cli/Makefile

Co-authored-by: Jameson Nash <vtjnash@gmail.com>

* Handled make install stringreplace.

* Correctly quoted stringreplace.

* Added -Wl,--enable-new-dtags to prevent DT_RPATH for transitive dependencies

* Updated news entry.

* Added comment about environment variable.

* patched rpath for libgfortran and libLLVM.

* Added explaination to Make.inc

* Removed trailing space

* Removed patchelf for libgfortran, now that BB has been fixed.

* Fixed typos and comments

Co-authored-by: Max Horn <max@quendi.de>

Co-authored-by: Mosè Giordano <mose@gnu.org>
Co-authored-by: Jameson Nash <vtjnash@gmail.com>
Co-authored-by: Elliot Saba <staticfloat@gmail.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit eb708d6)
* Limit initial OpenBLAS thread count

We set OpenBLAS's initial thread count to `1` to prevent runaway
allocation within OpenBLAS's initial thread startup.  LinearAlgebra will
later call `BLAS.set_num_threads()` to the actual value we require.

* Support older names

(cherry picked from commit 58b559f)
@KristofferC KristofferC force-pushed the backports-release-1.8 branch 3 times, most recently from e82fcbf to 48f11e9 Compare December 14, 2022 08:58
@KristofferC
Copy link
Member Author

@nanosoldier runbenchmarks(ALL, vs = ":release-1.8")

@KristofferC

This comment was marked as outdated.

staticfloat and others added 7 commits December 14, 2022 12:46
The command-line program `rm` has no problem deleting an empty directory
that we do not have listing permissions on, so we should follow suit.

Example:

```
mktempdir() do dir
    mkpath("$(dir)/foo")
    chmod("$(dir)/foo", 0o200)
    rm(dir; recursive=true)
end
```

(cherry picked from commit d0a211a)
Co-authored-by: N5N3 <2642243996@qq.com>
(cherry picked from commit 902e8a7)
`b->name` is used to lookup in `b->owner`, not `var`.

(cherry picked from commit dbe41d4)
closes #45892

(cherry picked from commit 59ff2e5)
This code was introduced by me back in #31025 to speed up evaluation
of generated functions that didn't make use of all of their arguments to
make generation decisions. However, it neglected to take into account the
possibility that the generator could be varargs. As a result, an unfortunate
coincidence of an unused slot in the correct position could have allowed
expansion of generators that were not supposed to be expandable. This can
cause incorrect inference with all the usual consequences. However, fortunately
this coincidence appears to be pretty rare.

Fixes JuliaDebug/CassetteOverlay.jl#12

(cherry picked from commit 328dd57)
vchuravy and others added 7 commits December 14, 2022 12:46
(cherry picked from commit 5a6c808)
This has probably been wrong for a long time (since being introduced in 7908246).

(cherry picked from commit b369511)
This fixes some issues around macro hygiene in `global` expressions.
Apparently we always treat l-values in global expressions as being
escaped, but we still need to be careful to handle type annotations and
destructuring correctly.

(cherry picked from commit cc25a13)
This should prevent LinearAlgebra from trying to increase our OpenBLAS
thread count in its `__init__()` method when we're not trying to enable
threaded BLAS.

(cherry picked from commit a8b3994)
* Fix the issue #43921

* add a test

Co-authored-by: Kristoffer <kcarlsson89@gmail.com>
(cherry picked from commit b8a77da)
KristofferC and others added 2 commits December 14, 2022 12:48
[release 1.8] backport of precompile: serialize the full edges graph (#46920)
@KristofferC
Copy link
Member Author

@nanosoldier runtests(ALL, vs = ":release-1.8", configuration = (buildflags=["LLVM_ASSERTIONS=1", "FORCE_ASSERTIONS=1"],), vs_configuration=(buildflags=["LLVM_ASSERTIONS=1", "FORCE_ASSERTIONS=1"],))

@nanosoldier
Copy link
Collaborator

Your benchmark job has completed - possible performance regressions were detected. A full report can be found here.

@nanosoldier
Copy link
Collaborator

Your package evaluation job has completed - possible new issues were detected. A full report can be found here.

@KristofferC
Copy link
Member Author

The PkgEval failures are due to QuantumBFS/LuxurySparse.jl#72.

@KristofferC KristofferC merged commit 3d1e89d into release-1.8 Dec 16, 2022
@KristofferC KristofferC deleted the backports-release-1.8 branch December 16, 2022 09:01
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.