Skip to content

Latest commit

 

History

History
63 lines (40 loc) · 1.92 KB

NEWS.md

File metadata and controls

63 lines (40 loc) · 1.92 KB

Julia v1.13 Release Notes

New language features

  • New Base.@acquire macro for a non-closure version of Base.acquire(f, s::Base.Semaphore), like @lock. ([#56845])

Language changes

  • mod(x::AbstractFloat, -Inf) now returns x (as long as x is finite), this aligns with C standard and is considered a bug fix ([#47102])

Compiler/Runtime improvements

Command-line option changes

Multi-threading changes

Build system changes

New library functions

  • Exporting function fieldindex to get the index of a struct's field ([#58119]).

New library features

  • fieldoffset now also accepts the field name as a symbol as fieldtype already did ([#58100]).
  • sort(keys(::Dict)) and sort(values(::Dict)) now automatically collect, they previously threw ([#56978]).
  • Base.AbstractOneTo is added as a supertype of one-based axes, with Base.OneTo as its subtype ([#56902]).

Standard library changes

JuliaSyntaxHighlighting

LinearAlgebra

Profile

REPL

Test

  • Test failures when using the @test macro now show evaluated arguments for all function calls ([#57825], [#57839]).

InteractiveUtils

  • Introspection utilities such as @code_typed, @which and @edit now accept type annotations as substitutes for values, recognizing forms such as f(1, ::Float64, 3) or even sum(::Vector{T}; init = ::T) where {T<:Real}. Type-annotated variables as in f(val::Int; kw::Float64) are not evaluated if the type annotation provides the necessary information, making this syntax compatible with signatures found in stacktraces ([#57909], [#58222]).

External dependencies

Tooling Improvements