I also find it easy to maintain dual compatibility with 3.3.6 and 4.4.7 through defines in the source files. Although I've noticed a significant improvement in stability with the 4.x series compared to the 3.x series.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Nice