Skip to content

Aether 0.847.0

Choose a tag to compare

@github-actions github-actions released this 25 Oct 06:35
· 500 commits to main since this release
Immutable release. Only release title and notes can be modified.

What's new in 0.847.0

Added

  • move hands a buffer to an actor, and a use after it is a compile error
    (#2975).
    r ! Chunk { data: move buf } sends the ptr buffer with no copy
    (the receiver gets the sender's data pointer) and leaves buf moved-from.
    The Isolated[T] move checker then refuses any later use of buf on any
    path that reaches it, and names the line of the move: a read, a second send,
    a free, a defer or a closure. It also refuses moving a borrowed parameter
    (declare it @keep), a capture, a field or element, and anything that is not
    a ptr. move is contextual, so fs.move, mem.move and a program's own
    move() still parse as calls. The same checker now handles match/switch
    arms and closures, and checks a defer where its block ends. Its message
    names the line of the move. The runtime does not free a moved buffer that
    its receiver drops, or one still queued when the receiver dies (#2974).

Downloads

Platform Architecture File Notes
Linux x86_64 aether-0.847.0-linux-x86_64.tar.gz
macOS x86_64 aether-0.847.0-macos-x86_64.tar.gz
macOS arm64 aether-0.847.0-macos-arm64.tar.gz
Windows x86_64 aether-0.847.0-windows-x86_64.zip
FreeBSD x86_64 aether-0.847.0-freebsd-x86_64.tar.gz cross-built, not tested on FreeBSD

Quick install

Linux / macOS

# Download the archive for your platform, then:
tar -xzf aether-0.847.0-<platform>.tar.gz
export PATH="$PWD/bin:$PATH"
ae version

Windows

Extract the .zip archive, then run bin\ae.exe version from the extracted folder.


Documentation: https://github.com/aether-lang-dev/aether#readme