···4455### Compiler
6677+- The compiler now supports list prepending in constants. For example:
88+99+ ```gleam
1010+ pub const viviparous_mammals = ["dog", "cat", "human"]
1111+1212+ pub const all_mammals = ["platypus", "echidna", ..viviparous_mammals]
1313+ ```
1414+1515+ ([Surya Rose](https://github.com/GearsDatapacks))
1616+717### Build tool
818919- When publishing, the package manager now uses the full term instead of the
···11+---
22+source: compiler-core/src/parse/tests.rs
33+expression: "\nconst wibble = [2, 3]\nconst wobble = [..wibble, 4, 5]\n"
44+---
55+----- SOURCE CODE
66+77+const wibble = [2, 3]
88+const wobble = [..wibble, 4, 5]
99+1010+1111+----- ERROR
1212+error: Syntax error
1313+ ┌─ /src/parse/error.gleam:3:17
1414+ │
1515+3 │ const wobble = [..wibble, 4, 5]
1616+ │ ^^^^^^^^ I wasn't expecting elements after this
1717+1818+Lists are immutable and singly-linked, so to append items to them
1919+all the elements of a list would need to be copied into a new list.
2020+This would be slow, so there is no built-in syntax for it.
2121+2222+Hint: Prepend items to the list and then reverse it once you are done.
···11+---
22+source: compiler-core/src/parse/tests.rs
33+expression: "\nconst wibble = [2, 3]\nconst wobble = [0, 1]\nconst wubble = [..wobble, ..wibble]\n"
44+---
55+----- SOURCE CODE
66+77+const wibble = [2, 3]
88+const wobble = [0, 1]
99+const wubble = [..wobble, ..wibble]
1010+1111+1212+----- ERROR
1313+error: Syntax error
1414+ ┌─ /src/parse/error.gleam:4:27
1515+ │
1616+4 │ const wubble = [..wobble, ..wibble]
1717+ │ -- ^^ I wasn't expecting a second list here
1818+ │ │
1919+ │ You're using a list here
2020+2121+Lists are immutable and singly-linked, so to join two or more lists
2222+all the elements of the lists would need to be copied into a new list.
2323+This would be slow, so there is no built-in syntax for it.
···11+---
22+source: compiler-core/src/parse/tests.rs
33+expression: "\nconst wibble = [1, 2, ..]\n"
44+---
55+----- SOURCE CODE
66+77+const wibble = [1, 2, ..]
88+99+1010+----- ERROR
1111+error: Syntax error
1212+ ┌─ /src/parse/error.gleam:2:23
1313+ │
1414+2 │ const wibble = [1, 2, ..]
1515+ │ ^^ I was expecting a value after this spread
1616+1717+If a list expression has a spread then a tail must also be given.