<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/py/objexcept.c, branch v1.4.1</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.4.1</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.4.1'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2015-02-27T09:34:51+00:00</updated>
<entry>
<title>py: Use m_{new,renew,del} consistently.</title>
<updated>2015-02-27T09:34:51+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-02-27T09:34:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4d77e1a0344aa22964b4db5a71181183431e9a53'/>
<id>urn:sha1:4d77e1a0344aa22964b4db5a71181183431e9a53</id>
<content type='text'>
This is so all memory requests go through the same interface.
</content>
</entry>
<entry>
<title>py: Fix adding of traceback so that it appends to existing info.</title>
<updated>2015-02-27T00:36:39+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-02-27T00:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4852e09c7914a4d4f2938dddbe155a2075bb2eb3'/>
<id>urn:sha1:4852e09c7914a4d4f2938dddbe155a2075bb2eb3</id>
<content type='text'>
This makes exception traceback info self contained (ie doesn't rely on
list object, which was a bit of a hack), reduces code size, and reduces
RAM footprint of exception by eliminating the list object.

Addresses part of issue #1126.
</content>
</entry>
<entry>
<title>py: Implement UnicodeError.</title>
<updated>2015-02-23T21:20:16+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-02-23T21:18:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=71ebd4b7f0b88fc0ceb36d8c2464a5114470f5a0'/>
<id>urn:sha1:71ebd4b7f0b88fc0ceb36d8c2464a5114470f5a0</id>
<content type='text'>
Still too shy to implement UnicodeEncodeError which was really needed for
micropython-lib case.
</content>
</entry>
<entry>
<title>objexcept: Optimize traceback allocation for exception.</title>
<updated>2015-02-15T19:41:14+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-02-15T19:24:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=fa3b8951452ca13a807c0b6a090e0385507113db'/>
<id>urn:sha1:fa3b8951452ca13a807c0b6a090e0385507113db</id>
<content type='text'>
Traceback allocation for exception will now never lead to recursive
MemoryError exception - if there's no memory for traceback, it simply
won't be created.
</content>
</entry>
<entry>
<title>objexcept: Optimize using messages without formatting substitutions.</title>
<updated>2015-02-15T19:41:14+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2015-02-15T19:19:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=29c4f92e13f27a6fabf7556184325c2483ace358'/>
<id>urn:sha1:29c4f92e13f27a6fabf7556184325c2483ace358</id>
<content type='text'>
They are directly cast to str object, skipping allocation of formatting
buffer.
</content>
</entry>
<entry>
<title>py: Add mp_obj_new_str_from_vstr, and use it where relevant.</title>
<updated>2015-01-21T23:17:27+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-21T19:14:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0b9ee86133a2a0524691c6cdac209dbfcb3bf116'/>
<id>urn:sha1:0b9ee86133a2a0524691c6cdac209dbfcb3bf116</id>
<content type='text'>
This patch allows to reuse vstr memory when creating str/bytes object.
This improves memory usage.

Also saves code ROM: 128 bytes on stmhal, 92 bytes on bare-arm, and 88
bytes on unix x64.
</content>
</entry>
<entry>
<title>py: Use mp_arg_check_num in some _make_new functions.</title>
<updated>2015-01-20T14:11:27+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-20T14:11:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=50149a573063dc4a1a6541686e61c310d5fc8353'/>
<id>urn:sha1:50149a573063dc4a1a6541686e61c310d5fc8353</id>
<content type='text'>
Reduces stmhal code size by about 250 bytes.
</content>
</entry>
<entry>
<title>py: Put all global state together in state structures.</title>
<updated>2015-01-07T20:33:00+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-01T23:30:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=b4b10fd350852e321624d74983cca286091b55a1'/>
<id>urn:sha1:b4b10fd350852e321624d74983cca286091b55a1</id>
<content type='text'>
This patch consolidates all global variables in py/ core into one place,
in a global structure.  Root pointers are all located together to make
GC tracing easier and more efficient.
</content>
</entry>
<entry>
<title>py: Move to guarded includes, everywhere in py/ core.</title>
<updated>2015-01-01T20:32:09+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2015-01-01T20:27:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=51dfcb4bb7613ed164952712d9a5235a7b833cde'/>
<id>urn:sha1:51dfcb4bb7613ed164952712d9a5235a7b833cde</id>
<content type='text'>
Addresses issue #1022.
</content>
</entry>
<entry>
<title>py: Make gc.enable/disable just control auto-GC; alloc is still allowed.</title>
<updated>2014-10-31T21:30:46+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2014-10-31T21:30:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=109c1de015eeee385020233e2f8cc6f921149103'/>
<id>urn:sha1:109c1de015eeee385020233e2f8cc6f921149103</id>
<content type='text'>
gc.enable/disable are now the same as CPython: they just control whether
automatic garbage collection is enabled or not.  If disabled, you can
still allocate heap memory, and initiate a manual collection.
</content>
</entry>
</feed>
