(; a, b) = x
can now be used to destructure propertiesa
andb
ofx
. This syntax is equivalent toa = getproperty(x, :a)
and similarly forb
. ([#39285])
- If the
JULIA_NUM_THREADS
environment variable is set toauto
, then the number of threads will be set to the number of CPU threads ([#38952])
- Two argument methods
findmax(f, domain)
,argmax(f, domain)
and the correspondingmin
versions ([#27613]). isunordered(x)
returns true ifx
is value that is normally unordered, such asNaN
ormissing
.- New macro
Base.@invokelatest f(args...; kwargs...)
provides a convenient way to callBase.invokelatest(f, args...; kwargs...)
([#37971]) - New macro
Base.@invoke f(arg1::T1, arg2::T2; kwargs...)
provides an easier syntax to callinvoke(f, Tuple{T1,T2}, arg1, arg2; kwargs...)
([#38438])
- The optional keyword argument
context
ofsprint
can now be set to a tuple of:key => value
pairs to specify multiple attributes. ([#39381])
count
andfindall
now accept anAbstractChar
argument to search for a character in a string ([#38675]).range
now supports therange(start, stop)
andrange(start, stop, length)
methods ([#39228]).range
now supportsstart
as an optional keyword argument ([#38041]).islowercase
andisuppercase
are now compliant with the Unicode lower/uppercase categories ([#38574]).iseven
andisodd
functions now support non-Integer
numeric types ([#38976]).escape_string
can now receive a collection of characters in the keywordkeep
that are to be kept as they are. ([#38597]).getindex
can now be used onNamedTuple
s with multiple values ([#38878])- Subtypes of
AbstractRange
now correctly follow the general array indexing behavior when indexed byBool
s, erroring for scalarBool
s and treating arrays (including ranges) ofBool
as an logical index ([#31829]) keys(::RegexMatch)
is now defined to return the capture's keys, by name if named, or by index if not ([#37299]).keys(::Generator)
is now defined to return the iterator's keys ([#34678])RegexMatch
now iterate to give their captures. ([#34355]).
- Use Libblastrampoline to pick a BLAS and LAPACK at runtime. By default it forwards to OpenBLAS in the Julia distribution. The forwarding mechanism can be used by packages to replace the BLAS and LAPACK with user preferences. ([#39455])
- On aarch64, OpenBLAS now uses an ILP64 BLAS like all other 64-bit platforms. ([#39436])
- OpenBLAS is updated to 0.3.13. ([#39216])
- SuiteSparse is updated to 5.8.1. ([#39455])
- The
Dates.periods
function can be used to get theVector
ofPeriod
s that comprise aCompoundPeriod
([#39169]).
mmap
is now exported ([#39816]).
- Multiple successive semicolons in an array expresion were previously ignored (e.g.
[1 ;; 2] == [1 ; 2]
). Multiple semicolons are being reserved for future syntax and may have different behavior in a future release.