<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/py/binary.c, branch 5.0.0-beta.4</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=5.0.0-beta.4</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=5.0.0-beta.4'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2019-10-08T01:48:25+00:00</updated>
<entry>
<title>mp_binary_get_int: avoid undefined behavior</title>
<updated>2019-10-08T01:48:25+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2019-10-08T01:48:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=0d96f1906b66139beebc13c55078aaf610c76968'/>
<id>urn:sha1:0d96f1906b66139beebc13c55078aaf610c76968</id>
<content type='text'>
Left shift of negative numbers is undefined in the "C" standard.  Multiplying
by 256 has the intended effect (in the absence of integer overflow, anyway),
can be implemented using the same shift instruction, but does not invoke
undefined behavior.

This problem was found using clang 7's scan-build static analyzer.
</content>
</entry>
<entry>
<title>Handle truth values; speed up smallint checks</title>
<updated>2019-05-12T04:10:53+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2019-05-12T04:10:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d103ac1d6325a075be3fafe812858584435f3144'/>
<id>urn:sha1:d103ac1d6325a075be3fafe812858584435f3144</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add overflow checks for int to bytes conversions</title>
<updated>2019-05-09T07:22:25+00:00</updated>
<author>
<name>Matt Wozniski</name>
<email>godlygeek+git@gmail.com</email>
</author>
<published>2019-05-09T03:50:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=095c844004bcd8680a4bf68901adbd9cac6a4302'/>
<id>urn:sha1:095c844004bcd8680a4bf68901adbd9cac6a4302</id>
<content type='text'>
For both small and long integers, raise an exception if calling
struct.pack, adding an element to an array.array, or formatting an int
with int.to_bytes would overflow the requested size.
</content>
</entry>
<entry>
<title>Improve struct compatibility with CPython</title>
<updated>2019-01-20T20:12:34+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2019-01-20T20:10:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=7a09af73ec7f4a11a1404dff6276e09072d06983'/>
<id>urn:sha1:7a09af73ec7f4a11a1404dff6276e09072d06983</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Two fixes and translate more strings.</title>
<updated>2018-08-09T20:29:30+00:00</updated>
<author>
<name>Scott Shawcroft</name>
<email>scott@tannewt.org</email>
</author>
<published>2018-08-09T01:24:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=96ebf5bc3fb455162286b9bc31e763f3c4f1c457'/>
<id>urn:sha1:96ebf5bc3fb455162286b9bc31e763f3c4f1c457</id>
<content type='text'>
* Fix finding translations with escaped characters.
* Add back \r to translations since its needed by screen.
</content>
</entry>
<entry>
<title>merge finished</title>
<updated>2018-07-28T17:29:47+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2018-07-28T17:29:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=f48b70050e3e4122eaae3eee47d35fc30bda2a4c'/>
<id>urn:sha1:f48b70050e3e4122eaae3eee47d35fc30bda2a4c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Conditionally compile out nonstandard array/struct typecodes</title>
<updated>2018-03-26T23:13:49+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@unpythonic.net</email>
</author>
<published>2018-03-26T23:13:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=355bf8b5538b4fe2f9f07b0d8fb2f4500c2f96c6'/>
<id>urn:sha1:355bf8b5538b4fe2f9f07b0d8fb2f4500c2f96c6</id>
<content type='text'>
.. defaulting to off for circuitpython-supported boards, on for others.

.. fixing up the tests that fail when it is turned off, so that they skip
instead of failing
</content>
</entry>
<entry>
<title>Initial merge of micropython v1.9.2 into circuitpython 2.0.0 (in development) master.</title>
<updated>2017-08-26T02:17:07+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2017-08-26T02:17:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=ef61b5ecb59e9b4e37e3e3c023c62d583c23eb16'/>
<id>urn:sha1:ef61b5ecb59e9b4e37e3e3c023c62d583c23eb16</id>
<content type='text'>
cpx build compiles and loads and works in repl; test suite not run yet
esp8266 not tested yet
</content>
</entry>
<entry>
<title>py/binary.c: Fix bug when packing big-endian 'Q' values.</title>
<updated>2017-08-15T01:33:43+00:00</updated>
<author>
<name>Bas van Sisseren</name>
<email>bas@vansisseren.nl</email>
</author>
<published>2017-08-12T12:40:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a14ce77b28146526661c79c89b2e6ff6837c2bb0'/>
<id>urn:sha1:a14ce77b28146526661c79c89b2e6ff6837c2bb0</id>
<content type='text'>
Without bugfix:

    struct.pack('&gt;Q', 16)
    b'\x00\x00\x00\x10\x00\x00\x00\x00'

With bugfix:

    struct.pack('&gt;Q', 16)
    b'\x00\x00\x00\x00\x00\x00\x00\x10'
</content>
</entry>
<entry>
<title>all: Use the name MicroPython consistently in comments</title>
<updated>2017-07-31T08:35:40+00:00</updated>
<author>
<name>Alexander Steffen</name>
<email>devel.20.webmeister@spamgourmet.com</email>
</author>
<published>2017-06-30T07:22:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=55f33240f3d7051d4213629e92437a36f1fac50e'/>
<id>urn:sha1:55f33240f3d7051d4213629e92437a36f1fac50e</id>
<content type='text'>
There were several different spellings of MicroPython present in comments,
when there should be only one.
</content>
</entry>
</feed>
