|
| 1 | +0.41.0 |
| 2 | +--- |
| 3 | +* **general** |
| 4 | + - go.mod, compiler: bump minimum Go version to 1.23 |
| 5 | + - builder: support Go 1.26 now |
| 6 | + - internal/tools: move into root |
| 7 | + - feat: add inheritable-only field to filter processor-level targets (#5270) |
| 8 | + - create generic targets for esp32 boards |
| 9 | + - feature: add esp32flash flash method for esp32s3/esp32c3/esp32/esp8266 |
| 10 | + - flashing: introduce flash method 'esp32jtag' for esp32c3/esp32s3 targets |
| 11 | + - targets: add "adb" flash method using Android Debug Bridge |
| 12 | + - main: auto-use best available flashing options on esp32 |
| 13 | + - espflasher: update to espflasher 0.6.0 |
| 14 | +* **compiler** |
| 15 | + - implement method-set based AssignableTo and Implements (#5304) |
| 16 | + - simplify createObjectLayout |
| 17 | + - implement copy directly |
| 18 | + - fix min/max on floats by using intrinsics |
| 19 | + - add element layout to sliceAppend |
| 20 | + - add intrinsic for crypto/internal/constanttime.boolToUint8 |
| 21 | + - fix SyscallN handling for Windows on Go 1.26+ |
| 22 | +* **core** |
| 23 | + - reflect: add TypeAssert |
| 24 | + - reflect: fix TypeAssert for structs |
| 25 | + - sync: add WaitGroup.Go |
| 26 | + - os: add UserCacheDir and UserConfigDir |
| 27 | + - os: implement Lchown function for changing file ownership (#5161) |
| 28 | + - testing: add b.ReportMetric() |
| 29 | + - errors: add errors package to passing list |
| 30 | + - internal/gclayout: use correct lengths |
| 31 | + - internal/abi: add EscapeNonString, EscapeToResultNonString |
| 32 | + - internal, runtime: add internal fips bool |
| 33 | + - internal/itoa: resurrect from Go stdlib |
| 34 | + - internal/syscall/unix: implement GetRandom for WASI targets |
| 35 | + - interp: make ptrtoint size mismatch a recoverable error |
| 36 | + - loader: support "all:" prefix in //go:embed patterns |
| 37 | + - loader, crypto/internal/entropy: fix 32 MiB RAM overflow on microcontrollers |
| 38 | + - loader, unicode/utf8: fix hiBits overflow on 16-bit AVR targets |
| 39 | + - builder: order embedded files deterministically |
| 40 | + - builder: fix panic in findPackagePath when using -size short |
| 41 | + - builder: fix SIGSEGV when stripping duplicate function definitions |
| 42 | + - builder, runtime: fix duplicate symbol error with Go 1.26+ on Windows |
| 43 | + - builder: use target-specific -march for RISC-V library compilation |
| 44 | + - transform: modify output format from the -print-allocs flag to match the go coverage tool format |
| 45 | + - cgo: allow for changes to 'short-enums' flag |
| 46 | + - wasm: add more stubbed file operations |
| 47 | +* **machine** |
| 48 | + - esp32c3: implement BlockDevice for esp32c3 flash |
| 49 | + - esp32c3: clear GPIO STATUS before dispatching pin callbacks |
| 50 | + - esp32c3: implement USBDevice using interrupts |
| 51 | + - esp32c3: add Enable stub for QEMU test target |
| 52 | + - esp32c3: fix interrupt disable handling |
| 53 | + - esp32c3: clear MCAUSE after handling interrupt |
| 54 | + - esp32c3: map missing IRAM sections in linker script |
| 55 | + - esp32c3: fix to use PROVIDE() for WiFi/BLE ROM function addresses to allow blob overrides |
| 56 | + - esp32c3: add WiFi/BLE ROM linker support |
| 57 | + - esp32c3: use TIMG0 alarm interrupt for sleepTicks instead of busy-waiting |
| 58 | + - esp32s3: implement Pin.SetInterrupt for GPIO pin change interrupts |
| 59 | + - esp32s3: use edge-triggered CPU interrupt for GPIO pin interrupts |
| 60 | + - esp32s3: add interrupt support (#5244) |
| 61 | + - esp32s3: switch USB implementation to use interrupts instead of polling |
| 62 | + - esp32s3: replace inline ISR with full interrupt vector handler |
| 63 | + - esp32s3: use TIMG0 alarm interrupt for sleepTicks |
| 64 | + - esp32s3: improve exception handlers, add procPin/procUnpin, and linker wrap flags |
| 65 | + - esp32s3: fix Xtensa register window spill using recursive call4 in task switching |
| 66 | + - esp32s3: update linker script and boot assembly for multi-page flash XIP mapping |
| 67 | + - esp32s3: add flash XIP boot assembly with cache/MMU init |
| 68 | + - esp32s3: implement SPI (#5169) |
| 69 | + - esp32s3: implement I2C interface (#5210) |
| 70 | + - esp32s3: implement RNG based on onboard hardware random number generator |
| 71 | + - esp32s3,esp32c3: add USB serial support |
| 72 | + - esp32s3,esp32c3: add txStalled flag to skip USB serial spin when no host |
| 73 | + - esp32s3,esp32c3: make USB Serial/JTAG writes non-blocking when FIFO is full |
| 74 | + - esp32c3/esp32s3: refactor ADC implementation to reduce code duplication |
| 75 | + - esp32s3,esp32c3: add ADC support (#5231) |
| 76 | + - esp32s3,esp32c3: add PWM support (#5215) |
| 77 | + - esp32c3/esp32s3: refactoring and corrections for SPI implementation |
| 78 | + - esp32xx: add WASM simulator support for ESP32-C3/ESP32-S3 targets |
| 79 | + - esp32: default SPI CS pin to NoPin when unset |
| 80 | + - esp: fix tinygo_scanCurrentStack to spill register windows |
| 81 | + - stm32: fix UART interrupt storm caused by uncleared overrun error |
| 82 | + - stm32: fix PWM problem due to register shifting |
| 83 | + - stm32: add STM32U585 target definition and runtime |
| 84 | + - stm32: add STM32U5 GPIO, pin interrupts, and UART support |
| 85 | + - stm32: add STM32U5 I2C support |
| 86 | + - stm32: add STM32U5 SPI support |
| 87 | + - stm32u585: implement ADC |
| 88 | + - stm32g0b1: add support (#5150) |
| 89 | + - stm32g0b1: add Watchdog + ADC support (#5158) |
| 90 | + - stm32l0: add flash support |
| 91 | + - stm32l0x1,l0x2: TIM: adapt to 32-bit register access |
| 92 | + - stm32g0: sync with updated stm32 device files |
| 93 | + - attiny85: add USI-based SPI support (#5181) |
| 94 | + - attiny85: add PWM support (#5171) |
| 95 | + - rp: add Close function to UART to allow for removing all system resources/power usage |
| 96 | + - rp: use blockReset() and unresetBlockWait() helper functions for peripheral reset/unreset |
| 97 | + - rp2: prevent PWM Period method overflow |
| 98 | + - rp2: add per-byte timeout budget for I2C (#5189) |
| 99 | + - feather-m0: export UART0 and pins |
| 100 | + - fix usb truncation |
| 101 | + - usb/cdc: better ring buffer implementation (#5209) |
| 102 | + - fix: replace ! with ~ for register mask |
| 103 | + - atmega328p_simulator: add correct build tag for arduino_uno after renaming |
| 104 | +* **net** |
| 105 | + - update to Go 1.26.2 net package with UDP and JS improvements |
| 106 | +* **runtime** |
| 107 | + - implement fminimum/fmaximum |
| 108 | + - make timeoffset atomic |
| 109 | + - add MemStats.HeapObjects |
| 110 | + - handle GODEBUG on wasip2 (#5312) |
| 111 | + - fix Darwin syscall return value truncation and lost arguments |
| 112 | + - add syscall.runtimeClearenv for Go 1.26 |
| 113 | + - split syscall functions for darwin changes for 1.26 |
| 114 | + - fix: init heap before random number seed on wasm platforms |
| 115 | +* **targets** |
| 116 | + - add esp32s3-supermini board target |
| 117 | + - add support for Seeedstudio Xiao-RP2350 board |
| 118 | + - add Shrike Lite board (#5170) |
| 119 | + - rename arduino target to arduino-uno |
| 120 | + - add pins/setup for Arduino UNO Q board QWIIC connector |
| 121 | + - correct pin mapping for Arduino UNO Q STM32 MCU |
| 122 | + - add stm32u585 openocd commands for flashing on Arduino UNO Q |
| 123 | + - correct name/tag use for esp32s3-wroom1 board |
| 124 | + - modify esp32, esp32s3, esp32c3, & esp8266 targets to use built-in esp32flash |
| 125 | + - switch rp2040/rp2350 to default to tasks scheduler |
| 126 | + - change default stack size for esp32c3 and esp32s3 to 8196 |
| 127 | + - swan: rename group build tag stm32l4x5 => stm32l4y5 to avoid clash with stm32 device name |
| 128 | + - nucleo-f722ze: add build-tag stm32f722 |
| 129 | + - fix: set stm32u5x clock rate to default |
| 130 | +* **libs** |
| 131 | + - stm32-svd: update submodule |
| 132 | + - update tools/gen-device-svd for recent changes to stm32-svd file structure (#5212) |
| 133 | +* **build/test** |
| 134 | + - build: use Golang 1.26 for all builds |
| 135 | + - build: actually use the version of llvm we are supposed to be testing by using brew link command |
| 136 | + - build: let scoop run updates to resolve binaryen install failures on Windows |
| 137 | + - ci: don't double zip release artifacts |
| 138 | + - test: increase default timeout from 1 to 2 minutes to prevent spurious CI fails |
| 139 | + - testdata: fix flaky timers test by draining ticker channel after Stop |
| 140 | + - testdata: more corpus entries (#5182) |
| 141 | + - add soypat/lneto to corpus |
| 142 | + - GNUmakefile: add context and expvar to stdlib tests |
| 143 | + - GNUmakefile: add encoding/xml to stdlib tests on Linux |
| 144 | + - main (test): skip mipsle test if the emulator is missing |
| 145 | + - make: remove machine without board from smoketest |
| 146 | + - stm32: add Arduino UNO Q to smoketests |
| 147 | + - flake: bump to nixpkgs 25.11 |
| 148 | + - chore: update all github actions to latest versions |
| 149 | + - fix: use external 7zip for scoop installs on Windows |
| 150 | + |
1 | 151 | 0.40.1 |
2 | 152 | --- |
3 | 153 | * **machine** |
|
0 commit comments