tag name | v1.4 (7418c0e34797003fd6e0c24d0078eaf15cb5c104) |
tag date | 2015-03-29 18:03:29 +0100 |
tagged by | Damien George <damien.p.george@gmail.com> |
tagged object | commit 64e8b62291... |
More Python features, reduced code size, coverage testing at 91%.
py core:
- add builtin setattr function
- optimise exceptions for out-of-memory scenario
- add some special methods: __mul__, __floordiv__, __truediv__
- implement array slice assignment
- add support for start/stop/step attrs in range object
- make builtin abs work with bools and bignums
- add basic implementation of collections.OrderedDict
- add support for a function's __name__
- refactor compiler code to reduce code size by up to 2k
- support for descriptors __get__ and __set__
inline Thumb2 assembler:
- more robust syntax checking
- general bug fixes
- better error messages
- add "it" instructions
- add bl, bx instructions
- add bcc_n, bcc_w instructions
extmod:
- modure: bug fixes for groups
- modure: add named classes
lib:
- libm: add erf, erfc, lgamma, tgamma
drivers:
- add onewire driver in pure Python
- add ds18x20 temp sensor driver, using onewire
- cc3100 driver upgraded to v1.1.0
tests:
- lots of new tests, including many for SyntaxError
- automated covage testing using coveralls, at 91% coverage
unix port:
- support for readline history saving to file
stmhal port:
- usbdev code cleanup
- add Python-configurable USB HID mode
- add CDC only USB option
- improve USB descriptors (untested on Windows and Mac)
- add UART.sendbreak() method to send break condition
- add support for CAN rx callbacks
- raise error if UART can't do requested baudrate within 5%
- fix timing init when callback is passed as argument to init
- add support for quadrature encoder mode in TimerChannel
- fix ADC.read_timed so buffer store respects element size
- add RTC.wakeup method to set wakeup timer (preliminary)
- add compile-time config option for RTC to use LSE or LSI
- bug fix related to unhandled channel interrupts
- improved support for stop and standby mode
- expose all PYBv1.0 pins, including SD and USB pins
- optimise ADC.read_timed so it can sample at up to 750kHz
- make pybstdio code usable by other ports
cc3200 port:
- add I2C module
- add ADC module
- add SD module
- support for connecting to WEP secured networks
- add WDT support
- add low power support
- add SPi module
esp8266 port:
- add basic pyb.Pin class
miscellaneous:
- add list of Kickstarter backers in ACKNOWLEDGEMENTS file
size difference in bytes to previous version (a negative value means
binary is smaller in this version):
- bare-arm: -2448
- minimal: -3028
- unix: +574
- stmhal: +7996
- cc3200: -2984
- teensy: -10560
- esp8266: -936
- qemu-arm: -844