Release Notes
Added
- aiken-lang: Allow test assertions to "see through" backpassing, to provide better insights on failing tests using a continuation passing style. @KtorZ
- aiken: New flag
-I / --include-all-typesto theaiken buildcommand to include all serialisable types in the blueprint, regardless of whether they are part of the contract interface or not. @emiflake, @KtorZ - aiken:
aiken testis now an alias foraiken check. @KtorZ - aiken:
aiken benchnow also display units using human-readable units by default and falls back to plain number when passed--plain-numbers. @KtorZ - aiken:
aiken benchindicates a projected maximum size for benches by performing a linear regression on the results, using the minimum/bottleneck between cpu and mem. @KtorZ - aiken-project: Swap constants with variable arguments in symmetric operators to allow currying and hoisting optimisations to kick-in more often. @KtorZ
- aiken-project: Automatically optimise subtraction of constant values into sum of negative constants. @KtorZ
- aiken-project: Better code-generation for boolean comparisons with constant terms. @KtorZ
Fixed
- uplc: Fixed conversion/discrepancy from large negative bigint when using
Data::integer; mostly impacting value reification and tracing of large negative integers. Fixes #1241. @KtorZ - uplc: Make evaluation failures language-dependent; thus allowing V1 & V2 evaluations to return non-unit results. @michaeljfazio, @KtorZ
- uplc: Fixed case and constr UPLC text-formatter in cases where they are formatted on a single-line. @KtorZ
- aiken-lang: Improve/fix formatter on assignments, in particular multiline ones. @KtorZ
- aiken-lang: Do not display UPLC machine logs in test reports when
-t silentis given. @KtorZ - aiken-lang: Allow test assertions to "see through" backpassing and provide feedback on test failure even when using continuation passing style. @KtorZ
- aiken-lang: Fix code generation interner to avoid FreeUnique caused by optimisations. @KtorZ
- aiken-lang: Fix compiler removing empty list checks with
-t silentfor list patterns containing only discards. @KtorZ - aiken-lang: Reject malformed list spread patterns with a leading comma (e.g.
[, ..rest]) at parse time instead of crashing during code generation. Fixes #1313. @SAY-5 - aiken-lsp: Fix import suggestions not being able to see through modules that aren't within the dependency path. @KtorZ
Install aiken 1.1.22
Install prebuilt binaries via shell script
:::sh
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aiken-lang/aiken/releases/download/v1.1.22/aiken-installer.sh | sh
Install prebuilt binaries via powershell script
:::sh
powershell -ExecutionPolicy ByPass -c "irm https://github.com/aiken-lang/aiken/releases/download/v1.1.22/aiken-installer.ps1 | iex"
Install prebuilt binaries into your npm project
:::sh
npm install @aiken-lang/aiken@1.1.22
Install prebuilt binaries via Homebrew
:::sh
brew install aiken-lang/tap/aiken
Download aiken 1.1.22
| File | Platform | Checksum |
|---|---|---|
| aiken-aarch64-apple-darwin.tar.gz (github.com) | Apple Silicon macOS | checksum |
| aiken-x86_64-apple-darwin.tar.gz (github.com) | Intel macOS | checksum |
| aiken-x86_64-pc-windows-msvc.tar.gz (github.com) | x64 Windows | checksum |
| aiken-aarch64-unknown-linux-musl.tar.gz (github.com) | ARM64 MUSL Linux | checksum |
| aiken-x86_64-unknown-linux-musl.tar.gz (github.com) | x64 MUSL Linux | checksum |