Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | py: Make mpz able to use 16 bits per digit; and 32 on 64-bit arch. | Damien George | 2014-09-06 |
| | | | | | | | | | | | | | | | | Previously, mpz was restricted to using at most 15 bits in each digit, where a digit was a uint16_t. With this patch, mpz can use all 16 bits in the uint16_t (improvement to mpn_div was required). This gives small inprovements in speed and RAM usage. It also yields savings in ROM code size because all of the digit masking operations become no-ops. Also, mpz can now use a uint32_t as the digit type, and hence use 32 bits per digit. This will give decent improvements in mpz speed on 64-bit machines. Test for big integer division added. | ||
* | py: Fix 2 bugs in native emitter: jump_or_pop and stack settling. | Damien George | 2014-08-29 |
| | | | | Addresses issue #838. | ||
* | Make int(b'123') work properly. | Dave Hylands | 2014-08-26 |
| | |||
* | py: Add dispatch for user defined ==, >, <=, >=. | Damien George | 2014-08-26 |
| | | | | Addresses issue #827. | ||
* | py: Consolidate min/max functions into one, and add key= argument. | Damien George | 2014-08-24 |
| | | | | Addresses issue #811. | ||
* | py: Fix mult by negative number of tuple, list, str, bytes. | Damien George | 2014-08-13 |
| | | | | | | | Multiplication of a tuple, list, str or bytes now yields an empty sequence (instead of crashing). Addresses issue #799 Also added ability to mult bytes on LHS by integer. | ||
* | py: Improve range: add len, subscr, proper print. | Damien George | 2014-08-12 |
| | | | | | | | | Can now index ranges with integers and slices, and reverse ranges (although reversing is not very efficient). Not sure how useful this stuff is, but gets us closer to having all of Python's builtins. | ||
* | py: Implement builtin reversed() function. | Damien George | 2014-08-12 |
| | | | | | | | | reversed function now implemented, and works for tuple, list, str, bytes and user objects with __len__ and __getitem__. Renamed mp_builtin_len to mp_obj_len to make it publically available (eg for reversed). | ||
* | objstr: Make sure that bytes are indexed as bytes, not as unicode. | Paul Sokolovsky | 2014-08-11 |
| | | | | Fixes #795. | ||
* | objarray: Implement equality testing between arrays and other buffers. | Paul Sokolovsky | 2014-08-10 |
| | |||
* | tests: Rename test scripts, changing - to _ for consistency. | Damien George | 2014-07-05 |
| | | | | | | From now on, all new tests must use underscore. Addresses issue #727. | ||
* | py: Automatically ake __new__ a staticmethod. | Damien George | 2014-07-05 |
| | | | | Addresses issue #622. | ||
* | modstruct: Fix alignment handling issues. | Paul Sokolovsky | 2014-06-25 |
| | | | | Also, factor out mp_binary_get_int() function. | ||
* | objstr: Be 8-bit clean even for repr(). | Paul Sokolovsky | 2014-06-14 |
| | | | | | | | | | This will allow roughly the same behavior as Python3 for non-ASCII strings, for example, print("<phrase in non-Latin script>".split()) will print list of words, not weird hex dump (like Python2 behaves). (Of course, that it will print list of words, if there're "words" in that phrase at all, separated by ASCII-compatible whitespace; that surely won't apply to every human language in existence). | ||
* | tests: Add testcases for "complicated" args to generator functions. | Paul Sokolovsky | 2014-06-11 |
| | |||
* | py: Implement __contains__ special method. | Damien George | 2014-06-10 |
| | |||
* | objtype: Fix passing of class param to inherited classmethods. | Paul Sokolovsky | 2014-06-08 |
| | | | | This is getting more and more tangled, but that's old news. | ||
* | tests: Add more tests for default keyword-only args. | Damien George | 2014-06-08 |
| | |||
* | tests: Fix default arg test. | Damien George | 2014-06-08 |
| | |||
* | py: Make sure getattr() works with non-interned strings (by interning them). | Paul Sokolovsky | 2014-06-08 |
| | |||
* | py: Implement default keyword only args. | Damien George | 2014-06-07 |
| | | | | Should finish addressing issue #524. | ||
* | Fix str.modulo when precision is specified. | Dave Hylands | 2014-06-05 |
| | |||
* | Change comments (mainly URLs) to no longer specifically say Python 3.3 | Chris Angelico | 2014-06-06 |
| | |||
* | objstr: Implement "%(key)s" % {} formatting for strings and dicts. | Paul Sokolovsky | 2014-06-05 |
| | | | | | Also, make sure that args to "*" format specifiers are bounds-checked properly and don't lead for segfaults in case of mismatch. | ||
* | py: Implement full behaviour of dict.update(), and dict(). | Damien George | 2014-06-03 |
| | | | | | | | | | | | | | Add keyword args to dict.update(), and ability to take a dictionary as argument. dict() class constructor can now use dict.update() directly. This patch loses fast path for dict(other_dict), but is that really needed? Any anyway, this idiom will now re-hash the dictionary, so is arguably more memory efficient. Addresses issue #647. | ||
* | py: Fix stack underflow with optimised for loop. | Damien George | 2014-05-31 |
| | |||
* | tests: Add another test for break-from-for-loop. | Damien George | 2014-05-31 |
| | |||
* | add methods isspace(), isalpha(), isdigit(), isupper() and islower() to str | Kim Bauters | 2014-05-31 |
| | |||
* | tests: Add test for break in for. | Paul Sokolovsky | 2014-05-31 |
| | | | | For #635 / 25c84643b6c4da169cdb11de54f027e3c477c301. | ||
* | objstr: *strip(): If nothing is stripped, don't create dup string. | Paul Sokolovsky | 2014-05-30 |
| | |||
* | objstr: *strip(): Fix handling of one-char subject strings. | Paul Sokolovsky | 2014-05-30 |
| | |||
* | py: Implement bignum '&' with negatives on lhs and rhs. | Damien George | 2014-05-29 |
| | | | | | Needs proper coverage testing. Doesn't implement -ve & -ve. Addresses issue #611. | ||
* | tests: Add small testcase for 3-arg slices. | Paul Sokolovsky | 2014-05-26 |
| | |||
* | objlist: Implement support for arbitrary (3-arg) slices. | Paul Sokolovsky | 2014-05-25 |
| | |||
* | objlist: Implement growing slice assignment. | Paul Sokolovsky | 2014-05-25 |
| | | | | | This means that complete slice operations are supported for lists (but not for bytearray's and array.array's). | ||
* | objstr: Implement .endswith(). | Paul Sokolovsky | 2014-05-24 |
| | |||
* | py: Initial attempts to actually allow implementing __new__ in Python. | Paul Sokolovsky | 2014-05-22 |
| | | | | | Caveat is that __new__ should recurse to base class __new__, and ultimately, object.__new__ is what handles instance allocation. | ||
* | objtype: super: Fall back to "object" lookup as last resort. | Paul Sokolovsky | 2014-05-21 |
| | | | | | Also, define object.__init__() (semantically empty, purely CPython compat measure). Addresses #520. | ||
* | Merge pull request #607 from Anton-2/osx-clang | Damien George | 2014-05-21 |
|\ | | | | | Allow compilation of unix port under clang on OS X | ||
| * | tests: create result file for test/basics/memoryerror.py . | Antonin ENFRUN | 2014-05-12 |
| | | | | | | | | On Mac OS "python3 test/basics/memoryerror.py" never runs out of memory, the process is frozen by the os before. | ||
* | | tests: Update subclass-native2.py for __new__/__init__ refactor. | Paul Sokolovsky | 2014-05-19 |
| | | | | | | | | Now case of subclassing tuple works, and list is broken, see comments. | ||
* | | objstr: startswith(): Accept optional "start" arg. | Paul Sokolovsky | 2014-05-15 |
| | | |||
* | | py: Implement more complete bytes comparison handling. | Paul Sokolovsky | 2014-05-15 |
| | | |||
* | | sequence: Fix yet another case of improper sequence comparison. | Paul Sokolovsky | 2014-05-15 |
| | | | | | | | | This time, in mp_seq_cmp_bytes(). How many more cases are still lurking? | ||
* | | objstr.c: Partial implementation of .rsplit(). | Paul Sokolovsky | 2014-05-14 |
| | | | | | | | | sep=None is TODO. | ||
* | | tests/int-long.py: Try to expose issue with recent "&" optimization. | Paul Sokolovsky | 2014-05-13 |
| | | |||
* | | py: Fix bug in mpz_and function. | Damien George | 2014-05-12 |
| | | | | | | | | Addresses issue #610. | ||
* | | modstruct: Implement count specifier for strings (e.g. "100s"). | Paul Sokolovsky | 2014-05-12 |
|/ | | | | Infra for counts of other types is there, need last mile to be implemented. | ||
* | objstr: Slice indexing: support bytes properly. | Paul Sokolovsky | 2014-05-11 |
| | |||
* | objstr: Make .split() support bytes. | Paul Sokolovsky | 2014-05-11 |
| |