Skip to content

Commit 5ce072b

Browse files
aykevldeadprogram
authored andcommitted
all: release v0.22.0
1 parent 4029b83 commit 5ce072b

File tree

2 files changed

+106
-1
lines changed

2 files changed

+106
-1
lines changed

CHANGELOG.md

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,108 @@
1+
0.22.0
2+
---
3+
4+
* **command line**
5+
- add asyncify to scheduler flag help
6+
- support -run for tests
7+
- remove FreeBSD target support
8+
- add LLVM 12 and LLVM 13 support, use LLVM 13 by default
9+
- add support for ARM64 MacOS
10+
- improve help
11+
- check /run/media as well as /media on Linux for non-debian-based distros
12+
- `test`: set cmd.Dir even when running emulators
13+
- `info`: add JSON output using the `-json` flag
14+
* **compiler**
15+
- `builder`: fix off-by-one in size calculation
16+
- `builder`: handle concurrent library header rename
17+
- `builder`: use flock to avoid double-compiles
18+
- `builder`: use build ID as cache key
19+
- `builder`: add -fno-stack-protector to musl build
20+
- `builder`: update clang header search path to look in /usr/lib
21+
- `builder`: explicitly disable unwind tables for ARM
22+
- `cgo`: add support for `C.CString` and related functions
23+
- `compiler`: fix ranging over maps with particular map types
24+
- `compiler`: add correct debug location to init instructions
25+
- `compiler`: fix emission of large object layouts
26+
- `compiler`: work around AVR atomics bugs
27+
- `compiler`: predeclare runtime.trackPointer
28+
- `interp`: work around AVR function pointers in globals
29+
- `interp`: run goroutine starts and checks at runtime
30+
- `interp`: always run atomic and volatile loads/stores at runtime
31+
- `interp`: bump timeout to 180 seconds
32+
- `interp`: handle type assertions on nil interfaces
33+
- `loader`: elminate goroot cache inconsistency
34+
- `loader`: respect $GOROOT when running `go list`
35+
- `transform`: allocate the correct amount of bytes in an alloca
36+
- `transform`: remove switched func lowering
37+
* **standard library**
38+
- `crypto/rand`: show error if platform has no rng
39+
- `device/*`: add `*_Msk` field for each bit field and avoid duplicates
40+
- `device/*`: provide Set/Get for each register field described in the SVD files
41+
- `internal/task`: swap stack chain when switching goroutines
42+
- `internal/task`: remove `-scheduler=coroutines`
43+
- `machine`: add `Device` string constant
44+
- `net`: add bare Interface implementation
45+
- `net`: add net.Buffers
46+
- `os`: stub out support for some features
47+
- `os`: obey TMPDIR on unix, TMP on Windows, etc
48+
- `os`: implement `ReadAt`, `Mkdir`, `Remove`, `Stat`, `Lstat`, `CreateTemp`, `MkdirAll`, `Chdir`, `Chmod`, `Clearenv`, `Unsetenv`, `Setenv`, `MkdirTemp`, `Rename`, `Seek`, `ExpandEnv`, `Symlink`, `Readlink`
49+
- `os`: implement `File.Stat`
50+
- `os`: fix `IsNotExist` on nonexistent path
51+
- `os`: fix opening files on WASI in read-only mode
52+
- `os`: work around lack of `syscall.seek` on 386 and arm
53+
- `reflect`: make sure indirect pointers are handled correctly
54+
- `runtime`: allow comparing interfaces
55+
- `runtime`: use LLVM intrinsic to read the stack pointer
56+
- `runtime`: strengthen hashmap hash function for structs and arrays
57+
- `runtime`: fix float/complex hashing
58+
- `runtime`: fix nil map dereference
59+
- `runtime`: add realloc implementation to GCs
60+
- `runtime`: handle negative sleep times
61+
- `runtime`: correct GC scan bounds
62+
- `runtime`: remove extalloc GC
63+
- `rumtime`: implement `__sync` libcalls as critical sections for most microcontrollers
64+
- `runtime`: add stubs for `Func.FileLine` and `Frame.PC`
65+
- `sync`: fix concurrent read-lock on write-locked RWMutex
66+
- `sync`: add a package doc
67+
- `sync`: add tests
68+
- `syscall`: add support for `Mmap` and `Mprotect`
69+
- `syscall`: fix array size for mmap slice creation
70+
- `syscall`: enable `Getwd` in wasi
71+
- `testing`: add a stub for `CoverMode`
72+
- `testing`: support -bench option to run benchmarks matching the given pattern.
73+
- `testing`: support b.SetBytes(); implement sub-benchmarks.
74+
- `testing`: replace spaces with underscores in test/benchmark names, as upstream does
75+
- `testing`: implement testing.Cleanup
76+
- `testing`: allow filtering subbenchmarks with the `-bench` flag
77+
- `testing`: implement `-benchtime` flag
78+
- `testing`: print duration
79+
- `testing`: allow filtering of subtests using `-run`
80+
* **targets**
81+
- `all`: change LLVM features to match vanilla Clang
82+
- `avr`: use interrupt-based timer which is much more accurate
83+
- `nrf`: fix races in I2C
84+
- `samd51`: implement TRNG for randomness
85+
- `stm32`: pull-up on I2C lines
86+
- `stm32`: fix timeout for i2c comms
87+
- `stm32f4`, `stm32f103`: initial implementation for ADC
88+
- `stm32f4`, `stm32f7`, `stm32l0x2`, `stm32l4`, `stm32l5`, `stm32wl`: TRNG implementation in crypto/rand
89+
- `stm32wl`: add I2C support
90+
- `windows`: add support for the `-size=` flag
91+
- `wasm`: add support for `tinygo test`
92+
- `wasi`, `wasm`: raise default stack size to 16 KiB
93+
* **boards**
94+
- add M5Stack
95+
- add lorae5 (stm32wle) support
96+
- add Generic Node Sensor Edition
97+
- add STM32F469 Discovery
98+
- add M5Stamp C3
99+
- add Blues Wireless Swan
100+
- `bluepill`: add definitions for ADC pins
101+
- `stm32f4disco`: add definitions for ADC pins
102+
- `stm32l552ze`: use supported stlink interface
103+
- `microbit-v2`: add some pin definitions
104+
105+
1106
0.21.0
2107
---
3108

goenv/version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212

1313
// Version of TinyGo.
1414
// Update this value before release of new version of software.
15-
const Version = "0.22.0-dev"
15+
const Version = "0.22.0"
1616

1717
// GetGorootVersion returns the major and minor version for a given GOROOT path.
1818
// If the goroot cannot be determined, (0, 0) is returned.

0 commit comments

Comments
 (0)