You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Array instances over-allocate when growing in certain circumstances. This improves performance when an array is populated by repeatedly calling push or unshift. The over-allocation is reclaimed on the next run of the garbage collector.
pop and shift operations on Array instances do not resize the array allocation. The garbage collector shrinks the block as needed.
XS implements the Stage 3 atproposal for Array.prototype.at, String.prototype.at and TypedArray.prototype.at. This allows the use of negative index values to get values from the end of an array, for example array.at(-1) is equivalent to array[array.length - 1].
Map and Set instances dynamically grow and shrink their hash table based on the number of elements they contain. This provides consistent performance independent of the element count. XS uses better hash functions for better distribution and ease in resizing the table.
Map and Set iterators have been rewritten and now pass 4 additional test262 tests.
XS now properly handles Unicode white-space characters above the Latin-1 range #665 (reported by @gibson042)
Number.prototype.toLocaleString now conforms to the specification #674 (reported by @mathiasbynens)
Raspberry Pico
Our preview pico branch is fully up-to-date with this release of the Moddable SDK and is working well. Give it try.
ECMAScript® Embedded Systems API Specification
Conformance improvements and/or documentation updates for CCS881, LM75, URM09, MLX90614, and QWIC moisture sensor
New accelerometer sensors: LIS3DH, LSM303DLHC, MPU6050, MPU9250
New magnetometer sensor: AK8963
New capacitive moisture sensor: SEN0193
New touch driver: FT6206
Add required delay after soft reset of BMP280 sensor
Add default analog input to built-in providers for Moddable Three, ESP8266 NodeMCU, ESP32 Thing, and ESP32 Wrover Kit
Disallow providing undefined for a pin specifier. Now throws an exception rather than coercing to pin 0.
Modules
TextDecoder supports stream option and implementation of ignoreBOM fixed to match specification.
TextEncoder implements encodeInto
wificonnection module adds support for cycling through a list of access points to find on that is available
lwip socket - don't call tcp_output to flush pending write after socket is closed (fixes crash if write made immediately before closing socket)
Wi-Fi on ESP32 can now be set to mode zero to disable fully
Wi-Fi on ESP32 operating a soft access point delivers "station_connect" and "station_disconnect" messages
Net module on ESP32 can now return information about the Ethernet connection
Hardware
Option to play start-up vibration on M5stack core2 (contributed by @stc1988)
Fix hardware rotation in ILI9341 (broken when GRAM offsets added)
Added pinout diagram to Moddable Three documentation
Graphics
Added spiffy new Moddable Three window display demo app (coming soon to the front window at Moddable HQ)
Piu texture constructor now has option to accept separate paths for alpha and color images
Mods
ESP8266 and ESP32 hosts return the preferred block size for install mods. mcrun/serial2xsbug now use the preferred block size. This allows for faster installs when the MCU has more free memory and avoids install failures when memory is tight.
mcrun/serial2xsbug now report an error before trying to install a mod bigger than the available installation space
Eliminated spurious traces about fatal mod installs
Tools
mcbundle tool is now available on Windows
TypeScript
Add declaration for playback of tones in Piu (contributed by @stc1988)