Commit Graph

6660 Commits

Author SHA1 Message Date
Paul Sokolovsky 06b783cf58 lib/berkeley-db-1.xx: Add Berkeley DB 1.85 as a submodule.
From https://github.com/pfalcon/berkeley-db-1.xx, which so far contains
pristine 1.85, but will get patches and compile warning fixes going
forward.

Berkeley DB 1.xx is BSD-licensed, and will form the basis of "btree"
simple database module.
2016-06-14 22:20:18 +03:00
Paul Sokolovsky 8072162170 extmod/modbtree: Initial implementation of "btree" module based on BerkeleyDB.
This implements basic wrapping of native get/put/seq API, and then dictionary
access protocol. Native API is intended to be superceded going forward.
2016-06-14 21:51:59 +03:00
Paul Sokolovsky 51805e4a3a docs: Rebuild docs from scratch, as required for proper only:: handling.
Docs are now by default rebuilt from scratch, as required to build
conditionalized (i.e. using only:: directive) docs across different
output types. We have pretty small docset, so that's still rather fast.
However, if that's a concern, incremental rebuilds can be used by
passing "FORCE=" (nothing after =) as a make parameter. This will work
when using the same output type (e.g. only "html").
2016-06-14 00:23:33 +03:00
Paul Sokolovsky 236838a9fc esp8266/Makefile: Enable --verify option for esptool.py write_flash.
Based on my experience, there's rather non-zero chance to have an image be
flashed incorrectly. As --verify option is now works well in teh latest
esptool.py, enable it by default.
2016-06-12 18:50:24 +03:00
Paul Sokolovsky 9f8b788fe5 esp8266: Switch floating-point arith routines to BootROM. 2016-06-12 18:44:14 +03:00
Mark Anthony Palomer deaf0712aa tests: Add testcase for OrderedDict equality.
There's a need for .exp file because CPython renders OrderedDict's as:

OrderedDict([('b', 2)])

while MicroPython as:

OrderedDict({'b': 2})
2016-06-12 17:37:19 +03:00
Mark Anthony Palomer 3131053e1a py/objdict: Implemented OrderedDict equality check. 2016-06-12 17:33:48 +03:00
Paul Sokolovsky 91031b60dc docs/conf.py: Active sphinx_selective_exclude extensions.
For modindex_exclude extension, per-port module excludes are also added.
With these changes, it's possible to generate docs for a particular port
devoid of any superfluous and unrelated content, including in indexes and
full-text search - with small caveat: when generating PDF docs after HTML,
or vice-versa cached internal doctree representation (build/*/doctrees/)
must be removed first.
2016-06-12 01:18:13 +03:00
Paul Sokolovsky f6d01b8b67 docs: Add sphinx_selective_exclude extension suite.
Designed specifically to workaround issues we were facing with generating
multiple conditionalized output docsets from a single master doctree.
Extensions were factored out into a separate project, based on the fact
that many other Sphinx users experience similar or related problems:
https://github.com/pfalcon/sphinx_selective_exclude

Corresponds to the 182f4a8da57 upstream revision.
2016-06-12 01:13:39 +03:00
Paul Sokolovsky 9de5eb278d docs/sys: Detailed description of print_exception() diff from traceback module. 2016-06-10 23:06:56 +03:00
Paul Sokolovsky 343b5c1081 docs/uctypes: Improve documentation.
Seealso and Limitations sectiosn added, better formatting and grammar.
2016-06-09 05:02:55 +03:00
Paul Sokolovsky 79b40d1127 docs/machine*: Remove explicit targets and "machine." prefixes on classes.
With currentmodule:: set properly, none are needed. Extra "machine." prefix
produces wrong indexing data.
2016-06-09 03:03:53 +03:00
Paul Sokolovsky a0c296f6d5 docs/machine.Pin: Disambiguate object call method. 2016-06-09 02:58:15 +03:00
Paul Sokolovsky 1d3b903eb5 docs/library/index: Add builtins.rst. 2016-06-09 00:26:44 +03:00
Paul Sokolovsky 0cec4e9bb8 docs/builtins: Enumerate all builtin functions implemented.
Based on unix version. No descriptions so far.
2016-06-09 00:24:52 +03:00
Paul Sokolovsky f1eb672d88 docs/pyb.Pin: Sort .af() and .af_list() methods together. 2016-06-08 16:36:22 +03:00
Paul Sokolovsky a384a53130 docs/pyb.*: Use proper class case in method headers.
Class designator will be used as is in indexes, so must match actual class
name.
2016-06-08 16:21:28 +03:00
Paul Sokolovsky 585aafc27e docs/pyb.ExtInt,pyb.Pin: Mark up class methods as such. 2016-06-08 16:00:12 +03:00
Paul Sokolovsky 0d8c22b122 docs/pyb.Pin: af_list() is a normal method, not a class method. 2016-06-08 15:57:46 +03:00
Paul Sokolovsky 8171995ee9 docs/pyb.CAN: Mark CAN.initfilterbanks() as classmethod explicitly. 2016-06-08 15:49:30 +03:00
Paul Sokolovsky e918fc5e37 tests/bench: Add testcase to compare bytes(N) vs b"\0" * N.
Based on python-dev discussion regarding PEP467.
2016-06-08 14:28:18 +03:00
Paul Sokolovsky bba77a2d01 docs/machine.Pin: Add class designator to all constants.
This makes rendered docs to not provide incorrect information and
consistent with how it's down for other machine classes.
2016-06-08 01:37:03 +03:00
Paul Sokolovsky 7d7243f44c docs/machine.*: Use proper class case in method headers.
Class designator will be used as is in indexes, so must match actual class
name.
2016-06-08 01:33:49 +03:00
Paul Sokolovsky 93968bd6fb docs/machine.UART: Cleanup pyboard section. 2016-06-08 01:32:16 +03:00
Paul Sokolovsky 0a4361ca67 docs/machine.Pin: Remove explicit target.
With currentmodule:: support, all targets should be generated properly by
Sphinx.
2016-06-08 01:13:59 +03:00
Paul Sokolovsky 0a4cc24b2e docs/pyb.*: Add "currentmodule:: pyb" directive.
Makes sure that classes described in these separate files are properly
designated as belonging to "pyb" module in indexes.
2016-06-08 00:57:41 +03:00
Paul Sokolovsky c8b7628094 docs/machine.*: Add "currentmodule:: machine" directive.
Makes sure that classes described in these separate files are properly
designated as belonging to "machine" module in indexes.
2016-06-08 00:46:27 +03:00
Paul Sokolovsky 2c5fc681c8 docs/library/machine.Pin: Mention GPIO and cross-link .value() function. 2016-06-07 17:49:00 +03:00
Paul Sokolovsky 6e2fa5237d docs/usocket: There must be empty line after .only:: . 2016-06-07 17:41:21 +03:00
Paul Sokolovsky 9b18811951 docs/ure: Typo fix. 2016-06-07 08:53:54 +03:00
Paul Sokolovsky 753a965363 docs/esp.socket: Remove unused file. 2016-06-07 02:40:05 +03:00
Paul Sokolovsky 9487b80666 docs/library/network: wipy: Fix literal block indentation. 2016-06-07 02:07:08 +03:00
Damien George b1533c4366 py/parse: Treat constants that start with underscore as private.
Assignments of the form "_id = const(value)" are treated as private
(following a similar CPython convention) and code is no longer emitted
for the assignment to a global variable.

See issue #2111.
2016-06-06 17:28:32 +01:00
Damien George 2bf6eb9fe2 docs: Add link to PDF version of docs in sidebar.
Requires a link of the form: <BASEURL>/<lang>/<ver>/micropython-<port>.pdf
2016-06-06 11:37:40 +01:00
puuu ee12581a35 esp8266: Let RTC work correctly after deepsleep.
By design, at wake up from deepsleep, the RTC timer will be reset, but
the data stored in RTC memory will not [1]. Therefore, we have to adjust
delta in RTC memory before going into deepsleep to get almost correct
time after waking up.

[1] http://bbs.espressif.com/viewtopic.php?t=1184#p4082
2016-06-06 10:51:12 +01:00
Georgia Reh eb78a5c530 teensy: Update the README with OSX specific information and tips. 2016-06-06 10:26:50 +01:00
Stefan Hölzl c8332a5463 stmhal: Add board definition files for Olimex STM32-E407. 2016-06-06 10:21:02 +01:00
Ben Hagen 0b913bd09f docs/esp8266/tutorial/network_basics: Minor typo fix, ap becomes ap_if. 2016-06-06 10:08:30 +01:00
Mark 822e9ca8f3 esp8266/modnetwork: Use struct bss_info::ssid_len for ESSID length.
Instead of calling strlen(), which won't work if there're 32 chars in
returned ESSID. struct bss_info::ssid_len is not documented in SDK API
Guide, but is present in SDK headers since 1.4.0. Just in case, previous
code is left commented.
2016-06-04 22:02:01 +03:00
Paul Sokolovsky a1a261d8e8 tests/recursive_iternext: Clang/Linux is even more stack-frugal than MacOS. 2016-06-04 21:10:43 +03:00
Damien George 9b39263b11 docs: Bump version to 1.8.1. 2016-06-03 15:45:43 +01:00
Damien George 97ce5d1d77 tests/pyb/rtc: Make RTC test on pyboard more reliable by calling init(). 2016-06-03 15:13:39 +01:00
Damien George 7d60a97914 tests/misc/recursive_iternext: Provide more fine-grained selection of N.
To work on a variety of ports the selection of N is very specific.
2016-06-03 15:09:45 +01:00
puuu 3f6ca4b22c docs/esp8266/general: Add note about RTC overflow. 2016-06-03 14:37:49 +01:00
puuu cafdfb7af3 esp8266/modpybrtc: Handle RTC overflow.
ESP-SDK system_get_rtc_time() returns uint32 and therefore overflow
about every 7:45h.  Let's write the last state of system_get_rtc_time()
in RTC mem and use it to check for overflow. This commit require running
pyb_rtc_get_us_since_2000() at least once within 7 hours to avoid
overflow.
2016-06-03 14:37:49 +01:00
Tobias Badertscher 1191ec6a14 stmhal/uart.c: Fix wrong baudrate calculation for stm32l4 series. 2016-06-03 14:24:59 +01:00
Radomir Dopieralski 43c8f545d2 drivers/display/ssd1306: update SSD1306_SPI to work with new API
Makes it work on the ESP8266.
2016-06-03 11:13:17 +01:00
Damien George ddadbaed06 tests/misc/recursive_iternext.py: Increase depth N from 1000 to 2000.
This makes the test reliably overflow the recursion limit (which is the
correct behaviour) on Mac OS X.
2016-06-03 09:33:57 +01:00
Paul Sokolovsky 1bc8aa85a4 lib/timeutils/timeutils: Fix pedantic warning in coverage build. 2016-06-03 10:46:15 +03:00
Paul Sokolovsky 993cc3611a lib/timeutils/timeutils: timeutils_mktime may accept negative time values.
And will normalize them.
2016-06-02 22:52:42 +03:00