aboutsummaryrefslogtreecommitdiffhomepage
path: root/CHANGELOG.md
diff options
context:
space:
mode:
authorAyke van Laethem <[email protected]>2024-02-25 21:00:18 +0100
committerRon Evans <[email protected]>2024-02-26 09:37:39 +0100
commit6061f3db928c65e0e415d08c73a4193ef4519d6a (patch)
treecba7ae9d8a4b1b08e35b1ae00a6f977c74f7e253 /CHANGELOG.md
parent410aa0e0d8c9467e3dfd0b331f5e9d7c51ff409f (diff)
downloadtinygo-6061f3db928c65e0e415d08c73a4193ef4519d6a.tar.gz
tinygo-6061f3db928c65e0e415d08c73a4193ef4519d6a.zip
all: version 0.31.0
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r--CHANGELOG.md75
1 files changed, 75 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7f9c212f4..260fd0def 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,78 @@
+0.31.0
+---
+
+* **general**
+ * remove LLVM 14 support
+ * add LLVM 17 support, and use it by default
+ * add Nix flake support
+ * update bundled Binaryen to version 116
+ * add `ports` subcommand that lists available serial ports for `-port` and `-monitor`
+ * support wasmtime version 14
+ * add `-serial=rtt` for serial output over SWD
+ * add Go 1.22 support and use it by default
+ * change minimum Node.js version from 16 to 18
+* **compiler**
+ * use the new LLVM pass manager
+ * allow systems with more stack space to allocate larger values on the stack
+ * `build`: fix a crash due to sharing GlobalValues between build instances
+ * `cgo`: add `C._Bool` type
+ * `cgo`: fix calling CGo callback inside generic function
+ * `compileopts`: set `purego` build tag by default so that more packages can be built
+ * `compileopts`: force-enable CGo to avoid build issues
+ * `compiler`: fix crash on type assert on interfaces with no methods
+ * `interp`: print LLVM instruction in traceback
+ * `interp`: support runtime times by running them at runtime
+ * `loader`: enforce Go language version in the type checker (this may break existing programs with an incorrect Go version in go.mod)
+ * `transform`: fix bug in StringToBytes optimization pass
+* **standard library**
+ * `crypto/tls`: stub out a lot of functions
+ * `internal/task`, `machine`: make TinyGo code usable with "big Go" CGo
+ * `machine`: implement `I2C.SetBaudRate` consistently across chips
+ * `machine`: implement `SPI.Configure` consistently across chips
+ * `machine`: add `DeviceID` for nrf, rp2040, sam, stm32
+ * `machine`: use smaller UART buffer size on atmega chips
+ * `machine/usb`: allow setting a serial number using a linker flag
+ * `math`: support more math functions on baremetal (picolibc) systems
+ * `net`: replace entire net package with a new one based on the netdev driver
+ * `os/user`: add bare-bones implementation of this package
+ * `reflect`: stub `CallSlice` and `FuncOf`
+ * `reflect`: add `TypeFor[T]`
+ * `reflect`: update `IsZero` to Go 1.22 semantics
+ * `reflect`: move indirect values into interface when setting interfaces
+ * `runtime`: stub `Breakpoint`
+ * `sync`: implement trylock
+* **targets**
+ * `atmega`: use UART double speed mode for fewer errors and higher throughput
+ * `atmega328pb`: refactor to enable extra uart
+ * `avr`: don't compile large parts of picolibc (math, stdio) for LLVM 17 support
+ * `esp32`: switch over to the official SVD file
+ * `esp32c3`: implement USB_SERIAL for USBCDC communication
+ * `esp32c3`: implement I2C
+ * `esp32c3`: implement RNG
+ * `esp32c3`: add more ROM functions and update linker script for the in-progress wifi support
+ * `esp32c3`: update to newer SVD files
+ * `rp2040`: add support for UART hardware flow control
+ * `rp2040`: add definition for `machine.PinToggle`
+ * `rp2040`: set XOSC startup delay multiplier
+ * `samd21`: add support for UART hardware flow control
+ * `samd51`: add support for UART hardware flow control
+ * `wasm`: increase default stack size to 64k for wasi/wasm targets
+ * `wasm`: bump wasi-libc version to SDK 20
+ * `wasm`: remove line of dead code in wasm_exec.js
+* **new targets/boards**
+ * `qtpy-esp32c3`: add Adafruit QT Py ESP32-C3 board
+ * `mksnanov3`: add support for the MKS Robin Nano V3.x
+ * `nrf52840-generic`: add generic nrf52840 chip support
+ * `thumby`: add support for Thumby
+ * `wasm`: add new `wasm-generic` target that doesn't depend on WASI or a browser
+* **boards**
+ * `arduino-mkrwifi1010`, `arduino-nano33`, `nano-rp2040`, `matrixportal-m4`, `metro-m4-airlift`, `pybadge`, `pyportal`: add `ninafw` build tag and some constants for BLE support
+ * `gopher-badge`: fix typo in USB product name
+ * `nano-rp2040`: add UART1 and correct mappings for NINA via UART
+ * `pico`: bump default stack size from 2kB to 8kB
+ * `wioterminal`: expose UART4
+
+
0.30.0
---