| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2015-03-20 | py: Allow retrieving a function's __name__. | stijn | |
| Disabled by default. Enabled on unix and stmhal ports. | |||
| 2015-03-20 | tests: Add basic test for OrderedDict. | Paul Sokolovsky | |
| Mostly to have coverage of newly added code in map.c. | |||
| 2015-03-14 | py: Fix builtin abs so it works for bools and bignum. | Damien George | |
| 2015-03-14 | tests: Add some more tests for bytes, bignum, string and ujson. | Damien George | |
| 2015-03-12 | tests: Add tests for things that are not already tested. | Damien George | |
| The aim here is to improve coverage of the code. | |||
| 2015-03-11 | py: Add support for start/stop/step attributes of builtin range object. | Peter D. Gray | |
| 2015-03-03 | tests: Add tests for boundmeth; and bignum cmp, unary, float, error. | Damien George | |
| 2015-03-02 | tests: Add basics test for gc module. | Damien George | |
| 2015-03-02 | tests: Use range as iterable instead of list comprehension. | Damien George | |
| So that navite emitter passes (comprehensions use yield which is not yet supported by native emitter). | |||
| 2015-03-02 | tests: Add tests for builtins: all, any, sum, abs. | Damien George | |
| 2015-03-02 | tests: Add tests for op special meths, ubinascii, complex. | Damien George | |
| 2015-02-27 | tests: Add test for array slice assignment. | Paul Sokolovsky | |
| 2015-02-15 | tests: Remove obsolete test; don't use fp in micropython/ tests. | Damien George | |
| 2015-02-15 | py: Simplify and remove redundant code for __iter__ method lookup. | Damien George | |
| 2015-02-14 | py: Add setattr builtin. | stijn | |
| 2015-02-09 | py: Allow subclass of native object to delegate to the native buffer_p. | Damien George | |
| Addresses issue #1109. | |||
| 2015-02-09 | objstr: Fix bytes creation from array of long ints. | Paul Sokolovsky | |
| 2015-02-08 | py: Parse big-int/float/imag constants directly in parser. | Damien George | |
| Previous to this patch, a big-int, float or imag constant was interned (made into a qstr) and then parsed at runtime to create an object each time it was needed. This is wasteful in RAM and not efficient. Now, these constants are parsed straight away in the parser and turned into objects. This allows constants with large numbers of digits (so addresses issue #1103) and takes us a step closer to #722. | |||
| 2015-02-02 | py: Make list.sort keep stack usage within O(log(N)) bound. | Damien George | |
| Also fix list.sort so it works with user-defined types, and parse the keyword arguments properly. Addresses issue #338. | |||
| 2015-01-30 | py: Convert CR to LF and CR LF to LF in lexer. | Damien George | |
| Only noticeable difference is how newlines are encoded in triple-quoted strings. The behaviour now matches CPython3. | |||
| 2015-01-29 | tests: Add some tests to improve coverage. | Damien George | |
| 2015-01-29 | tests: Add some tests to improve coverage. | Damien George | |
| Used gcov to find some parts of vm.c, runtime.c, obj.c that were not covered by any tests. Still need to use gcov more thoroughly. | |||
| 2015-01-28 | tests: Add testcase for bytes() on values in range 128-255. | Paul Sokolovsky | |
| 2015-01-27 | py: Fix comparison of minus-zero long int. | Damien George | |
| 2015-01-21 | py: Implement __reversed__ slot. | Damien George | |
| Addresses issue #1073. | |||
| 2015-01-14 | py: Reluctantly add an extra pass to bytecode compiler. | Damien George | |
| Bytecode also needs a pass to compute the stack size. This is because the state size of the bytecode function is encoded as a variable uint, so we must know the value of this uint before we encode it (otherwise the size of the generated code changes from one pass to the next). Having an entire pass for this seems wasteful (in time). Alternative is to allocate fixed space for the state size (would need 3-4 bytes to be general, when 1 byte is usually sufficient) which uses a bit of extra RAM per bytecode function, and makes the code less elegant in places where this uint is encoded/decoded. So, for now, opt for an extra pass. | |||
| 2015-01-13 | py: Never intern data of large string/bytes object; add relevant tests. | Damien George | |
| Previously to this patch all constant string/bytes objects were interned by the compiler, and this lead to crashes when the qstr was too long (noticeable now that qstr length storage defaults to 1 byte). With this patch, long string/bytes objects are never interned, and are referenced directly as constant objects within generated code using load_const_obj. | |||
| 2015-01-11 | py: Implement fallback for equality check for all types. | Damien George | |
| Return "not equal" for objects that don't implement equality check. This is as per Python specs. | |||
| 2015-01-08 | tests: Add test for when instance member overrides class member. | Damien George | |
| 2015-01-08 | tests: Separate out test cases that rely on float support to float/ dir. | Damien George | |
| 2015-01-04 | objarray: Make sure that longint works as bytearray size. | Paul Sokolovsky | |
| 2015-01-04 | objstr: Implement kwargs support for str.format(). | Paul Sokolovsky | |
| 2015-01-01 | py: Allow keyword arguments for namedtuple | stijn | |
| 2015-01-01 | py: Use sequence of strings for named tuple initialization | stijn | |
| - remove single string initialization style - take list of strings instead - store list in the type for fast lookup | |||
| 2014-12-31 | py: Fix rshift and not of zero/one edge cases in mpz. | Damien George | |
| Addresses issue #1027. | |||
| 2014-12-24 | py: Make bytes objs work with more str methods; add tests. | Damien George | |
| 2014-12-12 | py: Fix optimised for-loop compiler so it follows proper semantics. | Damien George | |
| You can now assign to the range end variable and the for-loop still works correctly. This fully addresses issue #565. Also fixed a bug with the stack not being fully popped when breaking out of an optimised for-loop (and it's actually impossible to write a test for this case!). | |||
| 2014-12-11 | tests: Add test for semantics of for-loop that optimisation can break. | Damien George | |
| 2014-12-09 | py: Allow builtins to be overridden. | Damien George | |
| This patch adds a configuration option (MICROPY_CAN_OVERRIDE_BUILTINS) which, when enabled, allows to override all names within the builtins module. A builtins override dict is created the first time the user assigns to a name in the builtins model, and then that dict is searched first on subsequent lookups. Note that this implementation doesn't allow deleting of names. This patch also does some refactoring of builtins code, creating the modbuiltins.c file. Addresses issue #959. | |||
| 2014-12-05 | py: Rename mp_obj_int_get to mp_obj_int_get_truncated; fix struct.pack. | Damien George | |
| mp_obj_int_get_truncated is used as a "fast path" int accessor that doesn't check for overflow and returns the int truncated to the machine word size, ie mp_int_t. Use mp_obj_int_get_truncated to fix struct.pack when packing maximum word sized values. Addresses issues #779 and #998. | |||
| 2014-12-04 | py: Allow bytes/bytearray/array to be init'd by buffer protocol objects. | Damien George | |
| Behaviour of array initialisation is subtly different for bytes, bytearray and array.array when argument has buffer protocol. This patch gets us CPython conformant (except we allow initialisation of array.array by buffer with length not a multiple of typecode). | |||
| 2014-11-30 | py: Implement +, += and .extend for bytearray and array objs. | Damien George | |
| Addresses issue #994. | |||
| 2014-11-29 | tests: Split out float test from builtin_round.py. | Damien George | |
| 2014-11-15 | tests: Add test for hash of user defined class. | Damien George | |
| 2014-11-05 | py: Allow +, in, and compare ops between bytes and bytearray/array. | Damien George | |
| Eg b"123" + bytearray(2) now works. This patch actually decreases code size while adding functionality: 32-bit unix down by 128 bytes, stmhal down by 84 bytes. | |||
| 2014-11-03 | py: Fix builtin callable so it checks user-defined instances correctly. | Damien George | |
| Addresses issue #953. | |||
| 2014-11-02 | py: Fix bug with right-shifting small ints by large amounts. | Paul Sokolovsky | |
| Undefined behavior in C, needs explicit check. | |||
| 2014-10-31 | py: Add builtin round function. | Damien George | |
| Addresses issue #934. | |||
| 2014-10-31 | objstr: Allow to convert any buffer proto object to str. | Paul Sokolovsky | |
| Original motivation is to support converting bytearrays, but easier to just support buffer protocol at all. | |||
| 2014-10-26 | tests: Get builtin_compile to skin properly on pyboard. | Damien George | |
