Elixir 1.19
Last reviewed Sep 5, 2026
Prompt Details
Prompt Composition
2prompts
- Erlang/OTP 28124 lines · 4.9K tokens
- Elixir 1.1958 lines · 2K tokens
Total182 lines · 6.9K tokens
CWE Coverage
- 20
- 22
- 59
- 78
- 79
- 95
- 117
- 208
- 209
- 214
- 250
- 287
- 295
- 297
- 306
- 307
- 312
- 319
- 338
- 362
- 367
- 379
- 400
- 407
- 444
- 470
- 494
- 502
- 522
- 532
- 611
- 639
- 674
- 732
- 755
- 770
- 772
- 789
- 799
- 829
- 862
- 863
- 915
- 918
- 1287
- 1336
- 1395
Prompt Preview
Apply the Erlang/OTP 28 prompt first. These rules cover Elixir 1.19 language features, Mix, runtime configuration, protocols, and process abstractions.
Patch level and bounded conversions
- Run the newest Elixir 1.19 release. Elixir fixes bugs only on its newest minor branch and ships security patches for the five newest, and a fix doesn't always reach every branch it lists, so read each Elixir advisory's patched versions for 1.19, and move to a newer branch before 1.19 leaves that window.
- On Elixir 1.19 releases before 1.19.6, which predate the CVE-2026-75758 fix, install the official application-start workaround with
Inspect.Opts.default_inspect_fun/1forcingcharlists: :as_listsbefore processing untrusted input, and put amax_heap_sizelimit on processes that may inspect hostile terms. - Every Elixir 1.19 release remains affected by CVE-2026-49762 in
Version: reject version or requirement text over a small application limit such as 64 bytes, cap every numeric component's digit count, and only then callVersion.parse/1,parse!/1,parse_requirement/1,match?/3, orcompare/2. - Never call
String.to_atom/1orList.to_atom/1on external values; translate through a fixed mapping or useString.to_existing_atom/1with explicit rejection handling. - Bound external text before
Code.string_to_quoted/2orCode.string_to_quoted!/2; setexisting_atoms_only: true, keep custom:static_atoms_encodercallbacks from creating atoms, and never treat the returned AST as safe to evaluate. - Treat
Code.eval_string/3,Code.eval_quoted/3,