Skip to content

Releases: xodio/xod

0.35.0

08 Sep 14:47
Compare
Choose a tag to compare

Features and enhancements

  • [core] Introduce constant types and new C++ implementation syntax. (#2007)
  • [core] Make color-type outputs bindable (#2011)
  • [ide] Add ability to clone a patch from library to a local project (#1999, #2003)
  • [nodes] Make pulse-on-* nodes behave consistently and not trigger on start (#2002)
  • [core] Upgrade bundled arduino-cli to v0.12.0. Thanks, @quinkennedy! (#1986, #2012, #2029)
  • [core] Use upstream ESP8266 package index instead of being locked to v2.4.3 (#2026)
  • [core] Improved resolution of abstract nodes to allow specializations without the type suffix for types defined in the same library (#2004)
  • [nodes] Unify interfaces of nodes in xod-dev/esp8266, xod-dev/esp8266-mcu, xod-dev/w5500 and xod/debug to use abstract nodes from xod/net (#2004)

Bug fixes

  • [ide] Fix inconsistent behaviour of "Follow Log" feature in Debugger pane (#2027)
  • [nodes] Fix compiling of xod-dev/ws2812 on ESP8266 (#1994)
  • [core] Fix an uncaught exception when transpiling a patch with a “dangling” defer node (#1995)
  • [c++] Fix forward declaration of HardwareSerial for megaAVR architecture (#2006)
  • [core] Fix creating cast nodes for custom types (#2008, #2023, #2025)
  • [nodes] Add missing dependency for xod-dev/pn532-nfc (#2024)
  • [nodes] Fix renderScanlinePart behaviour in xod-dev/ssd1306-display (#2022)

New nodes

0.34.0

28 May 14:29
Compare
Choose a tag to compare

Features and enhancements

Bug fixes

  • [ide] Fix positioning of the ColorPicker widget when Inspector is docked to right (#1971)
  • [ide] Fix scrolling of Project Browser and Inspector when they are the only section in a sidebar (#1972)
  • [ide] Fix typos in the built-in tutorial. Thanks, @bartek-w! (#1990, #1991)

New nodes

0.33.0

18 Feb 14:12
Compare
Choose a tag to compare

Features and enhancements

  • [ide] Extended support for the color type: a value can be entered as hex literal (like #FACE8D) or selected using a color picker widget (#1926, #1953)
  • [c++] Move the XColor type definition from xod/color/color to the global xod scope (#1928)
  • [core] Optimize the size of generated C++ code (#1925, #1943)

Bug fixes

  • [ide] Properly stop the running simulation session when opening a new project (#1924)
  • [core] Fix a case when using bus nodes along with generic pins could break type casting (#1958)
  • [nodes] Fix xod/core/throttle node that was ignoring incoming values at program starup (#1963)

New nodes

0.32.1

06 Dec 17:55
Compare
Choose a tag to compare

Bug fixes

  • [ide] Fix crash on sending tweak pulses (#1914)
  • [core] Fix implementation of placement new operator for cores that do not provide their own (#1915)

New nodes

0.32.0

04 Dec 14:01
Compare
Choose a tag to compare

Features and enhancements

  • [ide] Add search for libraries within XOD IDE (#1909)
  • [ide] Derive project name from the saved filename in desktop IDE (#1904)
  • [core] Add =XOD_USERNAME literal to use a XOD username in various places and assist easy sharing of the project (#1888)
  • [core] Add =XOD_PROJECT literal to use the current project name. For example, as a part of the feed path (#1889)
  • [core] Add =XOD_TOKEN literal which is required to authorize with XOD Cloud services (#1900)

Bug fixes

  • [core] Buses with a generic type are resolving and transpiling properly now (#1905)
  • [core] Compilation no longer fails on Windows if PC username contains spaces (#1906)
  • [nodes] Make the program with tweak-string nodes compile for ESP8266 boards (#1902)
  • [nodes] Fix xod/i2c/read-byte node error raising on reading 0x00 value (#1910)

New nodes

0.31.1

08 Oct 11:13
Compare
Choose a tag to compare

Bug fixes

  • [core] Fix a bug that caused compilation error if a defer node was used in a feedback loop without an upstream error raiser (#1871)
  • [core] Fix updating of package indexes and bundle the latest one (#1869)
  • [nodes] Fix quickstart node for 20x4 I2C text LCD in xod-dev/text-lcd library (#1875)
  • [nodes] Fix wrong types in xod-dev/dht library (#1877)
  • [core] Fix errors not propagating through defer nodes in some edge cases (#1873)
  • [nodes] Fix debounce time in xod/common-hardware/button (#1880)

0.31.0

01 Oct 14:13
Compare
Choose a tag to compare

Features and enhancements

  • [core] Do not store node id for error raisers and save 2 bytes of RAM for each error raiser node. (#1841)
  • [core] Optimize transaction state keeping. Single bit flags now share common bytes which leads to overall RAM usage decrease. (#1850)
  • [core] Make port type castable to string type (#1857)
  • [core] Wrap tabtests code into sections. When they fail it is easier to find the line causing the error. (#1860)
  • [core] Change error clear conditions. Pulses no longer lose error state at the end of the transaction but stay in error until node re-evaluation. (#1858)
  • [nodes] BREAKING ❗ Replace UPD inputs pins on idempotent actuator nodes with the ACT input pin: xod-dev/pn532-nfc/nfc-scanner, xod-dev/servo/servo, xod/common-hardware/h-bridge-dc-motor, xod/common-hardware/led. (#1842)
  • [ide] Highlight a few more core functions in C++ editor (#1859)

New nodes

Bug fixes

  • [core] Fix tabtest runner exit code to avoid ignoring of the failed tests. (#1839)
  • [core] Fix package.json files of some xod packages to publish the latest versions to the NPM. (#1845)

Deprecations and removals

  • Deprecate xod/common-hardware/hc-sr04-* nodes in favour of the new xod-dev/hc-sr04 library (#1851)
  • Deprecate xod/common-hardware/dht11-* and xod/common-hardware/dht2x-* nodes in favour of the new xod-dev/dht library (#1853)
  • Deprecate xod/common-hardware/text-lcd-16x2 and xod/common-hardware/text-lcd-16x2-i2c nodes in favour of the new xod-dev/text-lcd library (#1835)
  • Deprecate nodes in the xod/common-hardware library which works with STM IMU sensors and barometer in favour of the new ones from xod-dev/st-mems library (#1855)

0.30.1

19 Jul 13:37
Compare
Choose a tag to compare

Bug fixes

  • [nodes] Ensure that error, if-error and has-error work correctly with pulse data type (#1825)
  • [ide] Fix library publishing process (#1827)

0.30.0

17 Jul 14:55
Compare
Choose a tag to compare

Features and enhancements

  • [core] The errors mechanism. (#1777, #1784, #1818)
  • [ide] Errors are visualized in XOD IDE during the simulation and debug. (#1797)
  • [ide] Cancel the restriction of deleting terminals in use. Now, this is allowed and will cause the patches which use the terminal to become broken which is quickly fixable by undoing the deletion or removing the offending links. (#1809)
  • [ide] Upgrade the underlying UI Electron platform from 1.8 to 4.2 which makes IDE a bit more responsive and brings Gtk3 on Linux. (#1811)
  • [ide] Link to amperka.com on the welcome banner. Should we have some profit after all! (#1820)
  • [nodes] The ERR pulses gone from the standard library in favor of using the errors. (#1808)
  • [nodes] xod/core/if-else is now truly generic and works with any types. (#1767)
  • [nodes] xod/core/pulse-on-change is now an abstract generic and have implementation for numbers and strings. (#1806)
  • [nodes] Make servo pulse limit defaults in xod-dev/servo match Arduino defaults. (#1815)

New nodes

Bug fixes

  • [ide] Show that patches are broken even if they are hidden by the deprecated/utility filter. (#1813)
  • [ide] Opening not-a-xod file no longer breaks workspace creation. (#1812)
  • [ide] Exclude the whole BuckleScript platform from bundling into the distro. Makes XOD IDE ⅓ smaller in size. (#1814)
  • [ide] Fix nested tweaks updates ignore/collide during debugging and simulation. (#1821)
  • [ide] Respect serial.disableRTS option from platform’s boards.txt when opening the serial port for debugging. Previously it broke debugging for Arduino Leonardo, Micro, ATmega32U4 on Windows. (#1816)

Deprecations and removals

  • Remove all nodes deprecated back in 0.19, 0.20, and 0.21. (#1799)

0.29.1

18 Apr 16:46
Compare
Choose a tag to compare

Bug fixes

  • [nodes] Fixed compatibility of xod-dev/servo/servo-device and xod/core/animation-unit with ESP8266 and some other platforms (#1759)
  • [nodes] Prevent race condition on initialisation of lis331dlh-accelerometer, lis331hh-accelerometer and lis3dh-accelerometer (#1761)
  • [nodes] Added missing descriptions to xod-dev/servo, xod/mutex, xod/net and xod/stream libraries (#1760)