|
| 1 | +0.40.0 |
| 2 | +--- |
| 3 | +* **general** |
| 4 | + - all: add full LLVM 20 support |
| 5 | + - core: feat: enable //go:linkname pragma for globals |
| 6 | + - core: feature: Add flag to ignore go compatibility matrix (#5078) |
| 7 | + - chore: update version for 0.40 development cycle |
| 8 | +* **compiler** |
| 9 | + - emit an error when the actual arch doesn't match GOARCH |
| 10 | + - mark string parameters as readonly |
| 11 | + - use Tarjan's SCC algorithm to detect loops for defer |
| 12 | + - lower "large stack" limit to 16kb |
| 13 | +* **core** |
| 14 | + - shrink bdwgc library |
| 15 | + - Fix linker errors for runtime.vgetrandom and crypto/internal/sysrand.fatal |
| 16 | + - fix: add TryLock to sync.RWMutex |
| 17 | + - fix: correct linter issues exposed by the fix in #4679 |
| 18 | + - fix: don't hardcode success return state |
| 19 | + - fix: expand RTT debugger compatibility |
| 20 | + - internal/task (threads): save stack bounds instead of scanning under a lock |
| 21 | + - internal/task: create detatched threads and fix error handling |
| 22 | + - interp: better errors when debugging interp |
| 23 | + - transform (gc): create stack slots in callers of external functions |
| 24 | +* **machine** |
| 25 | + - cortexm: optimize code size for the HardFault_Handler |
| 26 | + - fe310: add I2C pins for the HiFive1b |
| 27 | + - clarify WriteAt semantics of BlockDevice |
| 28 | + - fix deprecated AsmFull comment (#5005) |
| 29 | + - make sure DMA buffers do not escape unnecessarily |
| 30 | + - only enable USB-CDC when needed |
| 31 | + - use larger SPI MAXCNT on nrf52833 and nrf52840 |
| 32 | + - fix: update m.queuedBytes when clamping output to avoid corrupting sentBytes |
| 33 | + - fix: use int64 in ReadTemperature to avoid overflow |
| 34 | + - fix(rp2): disable DBGPAUSE on startup |
| 35 | + - fix(rp2): possible integer overflow while computing factors for SPI baudrate |
| 36 | + - fix(rp2): reset spinlocks at startup |
| 37 | + - fix(rp2): switch spinlock busy loop to wfe |
| 38 | + - fix(rp2): use side-effect-free spinlocks |
| 39 | + - nrf: add ADC_VDDH which is an ADC pin for VDDH |
| 40 | + - nrf: don't block SPI transfer |
| 41 | + - nrf: don't set PSELN, it's ignored in single ended mode anyway |
| 42 | + - nrf: fix typo in ADC configuration |
| 43 | + - nrf: refactor SoftDevice enabled check |
| 44 | + - nrf: rename pwmPin to adcPin |
| 45 | + - nrf: support flash operations while the SoftDevice is enabled |
| 46 | + - rp2040: allow writing to the UART inside interrupts |
| 47 | + - machine,nrf528: stop the bus only once on I2C bus error and ensures the first error is returned |
| 48 | +* **net** |
| 49 | + - update submodule to latest commits |
| 50 | +* **runtime** |
| 51 | + - (avr): fix infinite longjmp loop if stack is aligned to 256 bytes |
| 52 | + - (gc_blocks.go): clear full size of allocation |
| 53 | + - (gc_blocks.go): make sweep branchless |
| 54 | + - (gc_blocks.go): simplify scanning logic |
| 55 | + - (gc_blocks.go): use a linked stack to scan marked objects |
| 56 | + - (gc_blocks.go): use best-fit allocation |
| 57 | + - (gc_boehm.go): fix world already stopped check |
| 58 | + - (wasm): scan the system stack |
| 59 | + - fix sleep duration for long sleeps |
| 60 | + - remove copied code for nrf52840 |
| 61 | + - src/syscall: update src buffer after write |
| 62 | + - wasm: fix C realloc and optimize it a bit |
| 63 | +* **targets** |
| 64 | + - add xiao-esp32s3 board target |
| 65 | + - Add ESP32-S3 support (#5091) |
| 66 | + - Added Gopher ARCADE board |
| 67 | + - Create "pico2-ice" target board (#5062) |
| 68 | +* **build/test** |
| 69 | + - Add testing.T.Context() and testing.B.Context() |
| 70 | + - create separate go.mod file for testing dependencies for wasm tests that use Chromium headless browser to avoid use of older incompatible version. |
| 71 | + - go back to normal scheduler instead of tasks scheduler for macos CI |
| 72 | + - update CI to use Go 1.25.5 |
| 73 | + - update macOS GH actions builds to handle sunset of macOS 13 |
| 74 | + - use task scheduler on macOS builds to avoid test race condition lockups |
| 75 | + - update all CI builds to use latest stable Go release. Also update some of the actions to their latest releases. |
| 76 | + - update GH actions builds to use Go 1.25.4 |
| 77 | + - uninstall cmake before install |
| 78 | + - fix: point the submodule for musl-lib to a mirror in the TinyGo GitHub org |
| 79 | + - fix: remove macOS 15 from CI build matrix (conflicts with macOS 14 build) |
| 80 | + - fix: separate host expected bytes from device intended bytes |
| 81 | + - fix/typo: makeESPFirmwareImage |
| 82 | + - make: GNUmakefile: shrink TinyGo binaries on Linux |
| 83 | + - move the directory list into a variable |
| 84 | + - several improvements to the macOS GH actions build |
| 85 | + - Fix for #4678: top-level 'make lint' wasn't working |
| 86 | + - fix: increase the timeout for chromedp to connect to the headless browser used for running the wasm tests. |
| 87 | + |
1 | 88 | 0.39.0 |
2 | 89 | --- |
3 | 90 | * **general** |
|
0 commit comments