You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: NEWS.md
+16-1Lines changed: 16 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,9 @@ New language features
8
8
9
9
*`import` now allows quoted symbols, e.g. `import Base.:+` ([#33158]).
10
10
11
+
* Function composition now supports multiple functions: `∘(f, g, h) = f ∘ g ∘ h`
12
+
and splatting `∘(fs...)` for composing an iterable collection of functions ([#33568]).
13
+
11
14
Language changes
12
15
----------------
13
16
@@ -30,9 +33,10 @@ New library functions
30
33
* The `tempname` function now takes an optional `parent::AbstractString` argument to give it a directory in which to attempt to produce a temporary path name ([#33090]).
31
34
* The `tempname` function now takes a `cleanup::Bool` keyword argument defaulting to `true`, which causes the process to try to ensure that any file or directory at the path returned by `tempname` is deleted upon process exit ([#33090]).
32
35
* The `readdir` function now takes a `join::Bool` keyword argument defaulting to `false`, which when set causes `readdir` to join its directory argument with each listed name ([#33113]).
36
+
*`readdir` output is now guaranteed to be sorted. The `sort` keyword allows opting out of sorting to get names in OS-native order ([#33542]).
33
37
* The new `only(x)` function returns the one-and-only element of a collection `x`, and throws an `ArgumentError` if `x` contains zero or multiple elements. ([#33129])
34
38
*`takewhile` and `dropwhile` have been added to the Iterators submodule ([#33437]).
35
-
39
+
* There is a now an `evalpoly` (generated) function meant to take the role of the `@evalpoly` macro. The function is just as efficient as the macro while giving added flexibility, so it should be preferred over `@evalpoly`. `evalpoly` takes a list of coefficients as a tuple, so where one might write `@evalpoly(x, p1, p2, p3)` one would instead write `evalpoly(x, (p1, p2, p3))`.
36
40
37
41
Standard library changes
38
42
------------------------
@@ -43,6 +47,10 @@ Standard library changes
43
47
44
48
* Verbose `display` of `Char` (`text/plain` output) now shows the codepoint value in standard-conforming `"U+XXXX"` format ([#33291]).
45
49
50
+
*`Iterators.partition` now uses views (or smartly re-computed ranges) for partitions of all `AbstractArray`s ([#33533]).
51
+
52
+
* Sets are now displayed less compactly in the REPL, as a column of elements, like vectors
53
+
and dictionaries ([#33300]).
46
54
47
55
#### Libdl
48
56
@@ -54,6 +62,8 @@ Standard library changes
54
62
55
63
*`ldlt` and non-pivoted `lu` now throw a new `ZeroPivotException` type ([#33372]).
56
64
65
+
*`cond(A, p)` with `p=1` or `p=Inf` now computes the exact condition number instead of an estimate ([#33547]).
66
+
57
67
#### Random
58
68
59
69
*`AbstractRNG`s now behave like scalars when used in broadcasting ([#33213]).
@@ -63,6 +73,11 @@ Standard library changes
63
73
* The performance of `rand(::Tuple)` is improved in some cases ([#32208]). As a consequence, the
64
74
stream of generated values produced for a given seed has changed.
65
75
76
+
#### REPL
77
+
78
+
* The attributes of the implicit `IOContext` used by the REPL to display objects can be
79
+
modified by the user (experimental feature) ([#29249]).
0 commit comments