aboutsummaryrefslogtreecommitdiff
path: root/extmod
AgeCommit message (Collapse)Author
2016-08-17extmod/uzlib/: Update uzlib to v2.0.1.Paul Sokolovsky
Fixes for pedantic compiler warnings.
2016-08-17extmod/moduzlib: Refactor to new stream-compatible uzlib 2.0 API.Paul Sokolovsky
2016-08-17extmod/uzlib/: Update uzlib to v2.0.Paul Sokolovsky
New API supporting stream decompression.
2016-08-16extmod/modwebrepl: set_password(): Raise exception for too long password.Paul Sokolovsky
2016-08-07extmod/modwebrepl: Add GET_VER operation to query MicroPython version.Paul Sokolovsky
2016-08-06extmod/modwebsocket: Use mp_rom_map_elem_t and friends.Paul Sokolovsky
2016-08-06extmod/modwebsocket: Make compatible with non-default object models.Paul Sokolovsky
2016-08-06extmod/modwebsocket: Add readline method.Paul Sokolovsky
This goes bit against websocket nature (message-based communication), as it ignores boundaries bertween messages, but may be very practical to do simple things with websockets.
2016-08-06extmod/modbtree: open(): Add option kwargs.Paul Sokolovsky
Namely: flags, cachesize, pagesize, minkeypage.
2016-08-05extmod/modwebrepl: Make GET_FILE operation non-blocking.Paul Sokolovsky
In the sense that while GET_FILE transfers its data, REPL still works. This is done by requiring client to send 1-byte block before WebREPL server transfers next block of data.
2016-08-05extmod/modwebrepl: Factor out "GET" iteration to write_file_chunk().Paul Sokolovsky
2016-08-02extmod/modbtree: Implement __contains__ operation.Paul Sokolovsky
2016-07-31extmod/modbtree: Switch to accepting stream object instead of filename.Paul Sokolovsky
Requires "embedded" BerkeleyDB BTree implementation.
2016-07-30py/stream: Add adapter methods with POSIX-compatible signatures.Paul Sokolovsky
Previoussly such read() and write() methods were used by modussl_axtls, move to py/stream for reuse.
2016-07-24extmod/modbtree: Check __bt_open() return value for error.Paul Sokolovsky
2016-07-23extmod/modwebrepl: Use mp_stream_close() method.Paul Sokolovsky
2016-07-23extmod/modussl_axtls: Use mp_stream_close() method.Paul Sokolovsky
2016-07-16extmod/vfs_fat: Implement rmdir() method.Paul Sokolovsky
Shares the code with remove() method due to the same underlying f_unlink() FatFs operation.
2016-07-15extmod/modussl_axtls: Add dummy setblocking() method.Paul Sokolovsky
Accepts only value of True.
2016-07-13extmod/modussl_axtls: Further changes to allow alternative SSL modules.Paul Sokolovsky
Make variable MICROPY_SSL_AXTLS=1 should be defined to activate modussl_axtls and link with -laxtls.
2016-07-13extmod/modussl: Rename to modussl_axtls.c, to allow impl using other SSL libs.Paul Sokolovsky
2016-07-07extmod/moduos_dupterm: Reuse dupterm_arr_obj for write operations.Paul Sokolovsky
Instead of allocating new array object header again and again, causing memory fragmentation.
2016-07-04extmod/moduos_dupterm: Reserve buffer bytearray object for dupterm.Paul Sokolovsky
Allocating it for each read/write operation is a memory fragmentation hazard.
2016-07-02extmod/modbtree: Fixes for nanbox build.Paul Sokolovsky
2016-07-02extmod/modbtree: Fix unused argument warning.Paul Sokolovsky
2016-07-02extmod/modwebrepl: Add readinto() method.Paul Sokolovsky
2016-07-02extmod/modwebsocket: Add readinto() method.Paul Sokolovsky
2016-06-23extmod/modbtree: Cleverly implement "for key in btree:" syntax.Paul Sokolovsky
I.e. make it work like btree.keys(), while still not using a separate iterator type.
2016-06-20extmod/modbtree: Implement keys(), values(), items() iterators.Paul Sokolovsky
Each takes optional args of starting key, ending key, and flags (ending key inclusive, reverse order).
2016-06-19extmod/modlwip: Store a chain of incoming pbufs, instead of only one.Paul Sokolovsky
Storing a chain of pbuf was an original design of @pfalcon's lwIP socket module. The problem with storing just one, like modlwip does is that "peer closed connection" notification is completely asynchronous and out of band. So, there may be following sequence of actions: 1. pbuf #1 arrives, and stored in a socket. 2. pbuf #2 arrives, and rejected, which causes lwIP to put it into a queue to re-deliver later. 3. "Peer closed connection" is signaled, and socket is set at such status. 4. pbuf #1 is processed. 5. There's no stored pbufs in teh socket, and socket status is "peer closed connection", so EOF is returned to a client. 6. pbuf #2 gets redelivered. Apparently, there's no easy workaround for this, except to queue all incoming pbufs in a socket. This may lead to increased memory pressure, as number of pending packets would be regulated only by TCP/IP flow control, whereas with previous setup lwIP had a global overlook of number packets waiting for redelivery and could regulate them centrally.
2016-06-19extmod/machine_pinbase: Fix nanbox build.Paul Sokolovsky
MP_ROM_PTR() is only for data structures initialization, code should use MP_OBJ_FROM_PTR().
2016-06-18extmod/machine_pinbase: Implementation of PinBase class.Paul Sokolovsky
Allows to translate C-level pin API to Python-level pin API. In other words, allows to implement a pin class and Python which will be usable for efficient C-coded algorithms, like bitbanging SPI/I2C, time_pulse, etc.
2016-06-18all: Rename mp_obj_type_t::stream_p to protocol.Paul Sokolovsky
It's now used for more than just stream protocol (e.g. pin protocol), so don't use false names.
2016-06-18extmod/modbtree: open(): Support "in-memory" database with filename=None.Paul Sokolovsky
It's not really in-memory though, just uses anonymous temporary file on disk.
2016-06-18extmod/modbtree: __getitem__() should raise KeyError for non-existing key.Paul Sokolovsky
2016-06-18extmod/modbtree: items(): Implement DESC flag.Paul Sokolovsky
2016-06-17extmod/modbtree: items(): Implement "end key inclusive" flag.Paul Sokolovsky
2016-06-16esp8266: Use RTC to set date & time stamps for files.Robert HH
The time stamp is taken from the RTC for all newly generated or changed files. RTC must be maintained separately. The dummy time stamp of Jan 1, 2000 is set in vfs.stat() for the root directory, avoiding invalid time values.
2016-06-16extmod/modbtree: Actually implement end key support for .items().Paul Sokolovsky
2016-06-16extmod/modbtree: Implement .items() iterator.Paul Sokolovsky
2016-06-15extmod/modbtree: Handle default value and error check.Paul Sokolovsky
2016-06-14extmod/modbtree: Initial implementation of "btree" module based on BerkeleyDB.Paul Sokolovsky
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-05-31extmod/machine: Add MICROPY_PY_MACHINE_PULSE config for time_pulse_us.Damien George
Since not all ports that enable the machine module have the pin HAL functions.
2016-05-31extmod: Add machine time_pulse_us function (at C and Python level).Damien George
The C implementation is taken from the DHT driver.
2016-05-31extmod/vfs_fat: Mark anused "self" arg for fat_vfs_stat().Paul Sokolovsky
2016-05-31extmod/vfs_fat.c: Add vfs.stat().Robert HH
The call to stat() returns a 10 element tuple consistent to the os.stat() call. At the moment, the only relevant information returned are file type and file size.
2016-05-29extmod/vfs_fat: getcwd(): Use mp_obj_new_exception_arg1().Paul Sokolovsky
Copy-paste issue, with the original mistake in stmhal.
2016-05-29extmod/vfs_fat: chdir(), getcwd() methods should accept VFS object (self).Paul Sokolovsky
2016-05-29extmod/vfs_fat: Add getcwd() method.Paul Sokolovsky
Ported from stmhal.
2016-05-29extmod/vfs_fat: Add chdir() method.Paul Sokolovsky
Ported from stmhal.