Skip to content

Commit d50efcb

Browse files
josevalimggVGc
authored andcommitted
Start v1.20
1 parent 2a9a4f2 commit d50efcb

File tree

7 files changed

+36
-11
lines changed

7 files changed

+36
-11
lines changed

CHANGELOG.md

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,28 @@
88

99
## Type system improvements
1010

11+
### More type inference
12+
13+
Elixir now performs inference of whole functions. The best way to show the new capabilities are with examples. Take the following code:
14+
15+
```elixir
16+
def add_foo_and_bar(data) do
17+
data.foo + data.bar
18+
end
19+
```
20+
21+
Elixir now infers that the function expects a `map` as first argument, and the map must have the keys `.foo` and `.bar` whose values are either `integer()` or `float()`. The return type will be either `integer()` or `float()`.
22+
23+
Here is another example:
24+
25+
```elixir
26+
def sum_to_string(a, b) do
27+
Integer.to_string(a + b)
28+
end
29+
```
30+
31+
Even though the `+` operator works with both integers and floats, Elixir infers that `a` and `b` must be both integers, as the result of `+` is given to a function that expects an integer. The inferred type information is then used during type checking to find possible typing errors.
32+
1133
### Type checking of protocol dispatch and implementations
1234

1335
This release also adds type checking when dispatching and implementing protocols.
@@ -194,7 +216,7 @@ These additions offer greater transparency into the components and licenses of e
194216

195217
This work was performed by Jonatan Männchen and sponsored by the Erlang Ecosystem Foundation.
196218

197-
## v1.19.0-rc.0 (2025-06-09)
219+
## v1.19.0-dev
198220

199221
### 1. Enhancements
200222

RELEASE.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
1. Update version in /VERSION, bin/elixir, and bin/elixir.bat
1212

1313
2. Ensure /CHANGELOG.md is updated, versioned and add the current date
14+
1415
- If this release addresses any publicly known security vulnerabilities with
1516
assigned CVEs, add a "Security" section to `CHANGELOG.md`. For example:
1617
```md
@@ -42,7 +43,7 @@
4243

4344
### Back in main
4445

45-
1. Bump /VERSION file, bin/elixir, bin/elixir.bat, and bin/elixir.ps1
46+
1. Bump /VERSION file, bin/elixir, and bin/elixir.bat
4647

4748
2. Start new /CHANGELOG.md
4849

SECURITY.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ Elixir applies bug fixes only to the latest minor branch. Security patches are a
1212

1313
Elixir version | Support
1414
:------------- | :-----------------------------
15-
1.19 | Bug fixes and security patches
16-
1.18 | Security patches only
15+
1.19 | Development
16+
1.18 | Bug fixes and security patches
1717
1.17 | Security patches only
1818
1.16 | Security patches only
1919
1.15 | Security patches only
20+
1.14 | Security patches only
2021

2122
## Announcements
2223

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.19.0-rc.0
1+
1.19.0-dev

bin/elixir

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
set -e
88

9-
ELIXIR_VERSION=1.19.0-rc.0
9+
ELIXIR_VERSION=1.19.0-dev
1010

1111
if [ $# -eq 0 ] || { [ $# -eq 1 ] && { [ "$1" = "--help" ] || [ "$1" = "-h" ]; }; }; then
1212
cat <<USAGE >&2

bin/elixir.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
:: SPDX-FileCopyrightText: 2021 The Elixir Team
55
:: SPDX-FileCopyrightText: 2012 Plataformatec
66

7-
set ELIXIR_VERSION=1.19.0-rc.0
7+
set ELIXIR_VERSION=1.19.0-dev
88

99
if ""%1""=="""" if ""%2""=="""" goto documentation
1010
if /I ""%1""==""--help"" if ""%2""=="""" goto documentation

lib/elixir/pages/references/compatibility-and-deprecations.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,12 @@ Elixir applies bug fixes only to the latest minor branch. Security patches are a
1414

1515
Elixir version | Support
1616
:------------- | :-----------------------------
17-
1.19 | Bug fixes and security patches
18-
1.18 | Security patches only
17+
1.19 | Development
18+
1.18 | Bug fixes and security patches
1919
1.17 | Security patches only
2020
1.16 | Security patches only
2121
1.15 | Security patches only
22+
1.14 | Security patches only
2223

2324
New releases are announced in the read-only [announcements mailing list](https://groups.google.com/group/elixir-lang-ann). All security releases [will be tagged with `[security]`](https://groups.google.com/forum/#!searchin/elixir-lang-ann/%5Bsecurity%5D%7Csort:date).
2425

@@ -48,7 +49,7 @@ Erlang/OTP versioning is independent from the versioning of Elixir. Erlang relea
4849

4950
Elixir version | Supported Erlang/OTP versions
5051
:------------- | :-------------------------------
51-
1.19 | 26 - 28
52+
1.19 | 26 - 27
5253
1.18 | 25 - 27
5354
1.17 | 25 - 27
5455
1.16 | 24 - 26
@@ -235,4 +236,4 @@ Version | Deprecated feature | Replaced by (ava
235236
[v1.16]: https://github.com/elixir-lang/elixir/blob/v1.16/CHANGELOG.md#4-hard-deprecations
236237
[v1.17]: https://github.com/elixir-lang/elixir/blob/v1.17/CHANGELOG.md#4-hard-deprecations
237238
[v1.18]: https://github.com/elixir-lang/elixir/blob/v1.18/CHANGELOG.md#4-hard-deprecations
238-
[v1.19]: https://github.com/elixir-lang/elixir/blob/v1.19/CHANGELOG.md#4-hard-deprecations
239+
[v1.19]: https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#4-hard-deprecations

0 commit comments

Comments
 (0)