Paul Sokolovsky
f22be4ebd9
unix/modjni: jobject.__str__/__repr__: Return Java .toString() value.
2015-10-03 08:58:46 -07:00
Damien George
34f26ea862
tests: Allow tests to pass against CPython 3.5.
...
All breaking changes going from 3.4 to 3.5 are contained in
basics/python34.py.
2015-10-02 13:01:47 +01:00
Paul Sokolovsky
9e0a3d46b6
unix/modjni: Convert Java's IndexOutOfBoundsException to Python's IndexError.
2015-10-02 00:22:09 -07:00
Damien George
90b1cc5103
minimal: Tune parser chunk allocation policy for very small heap.
2015-10-02 00:33:26 +01:00
Damien George
58e0f4ac50
py: Allocate parse nodes in chunks to reduce fragmentation and RAM use.
...
With this patch parse nodes are allocated sequentially in chunks. This
reduces fragmentation of the heap and prevents waste at the end of
individually allocated parse nodes.
Saves roughly 20% of RAM during parse stage.
2015-10-02 00:11:11 +01:00
Damien George
e5635f4ab3
py: Catch all cases of integer (big and small) division by zero.
2015-10-01 22:48:48 +01:00
Damien George
2065373f67
py/mpz: Fix bignum anding of large negative with smaller positive int.
2015-10-01 22:35:06 +01:00
Damien George
a81539db25
tests: Add further tests for mpz code.
2015-10-01 18:49:37 +01:00
Damien George
2f4e8511cd
py/mpz: Force rhs of mpz_shl_inpl/mpz_shr_inpl to be unsigned.
...
Python semantics are that rhs of shift must be non-negative, so there's
no need to handle negative values in the underlying mpz implementation.
2015-10-01 18:01:37 +01:00
Damien George
4c02e54298
py/mpz: Raise NotImplError instead of failing assertion.
2015-10-01 17:57:36 +01:00
Damien George
5f3c3ec5e6
py/parsenum: Provide detailed error for int parsing with escaped bytes.
...
This patch adds more fine grained error message control for errors when
parsing integers (now has terse, normal and detailed). When detailed is
enabled, the error now escapes bytes when printing them so they can be
more easily seen.
2015-10-01 17:18:12 +01:00
Paul Sokolovsky
c4489a0543
unix/modjni: Propagate Java exceptions on list access.
2015-10-01 01:20:56 -07:00
Paul Sokolovsky
0eba162ab5
unix/modjni: Fix method argument matching.
2015-09-30 00:55:09 -07:00
Paul Sokolovsky
f3ca8623f7
unix/modjni: Implement len() for objects with java.util.List interface.
2015-09-29 10:06:07 -07:00
Paul Sokolovsky
77020281ae
unix/modjni: call_method: Delete done local references in loop.
...
To avoid local ref table overflow.
2015-09-28 08:37:34 -07:00
Tom Soulanille
f1a9923308
py/objrange: Bugfix for range_subscr() when index is a slice object.
2015-09-28 14:01:28 +00:00
Tom Soulanille
2a8a564fbd
tests: Test slicing a range that does not start at zero.
2015-09-28 14:01:20 +00:00
Paul Sokolovsky
0d28a3edb9
unix/modjni: call_method: Better resource release.
2015-09-27 22:32:54 -07:00
Daniel Campora
ff736d6f6f
cc3200: WiPy SW v1.0.0 release.
2015-09-28 00:14:25 +02:00
Daniel Campora
d88d3b0b3a
tests/wipy: Skip the rtc_irq test.
2015-09-27 21:36:38 +02:00
Daniel Campora
b6bdb0dbda
cc3200: Always reset WLAN after setting the mode.
2015-09-27 20:12:42 +02:00
Daniel Campora
ed6a5b78ad
cc3200: Make auth param positional in wlan.connect.
2015-09-27 19:10:09 +02:00
Daniel Campora
d5de1bf853
tests: Skip uheapq1 test if target is WiPy.
2015-09-27 18:47:35 +02:00
Daniel Campora
eb9a3ec654
cc3200: Disable uheapq and uhashlib.
...
Those two are rarely used features and better to have the extra heap.
2015-09-27 18:04:11 +02:00
Daniel Campora
6143f63560
tests/wipy: Fix error in wlan test.
2015-09-27 18:00:36 +02:00
Daniel Campora
37a2015cc5
tests/wipy: Add machine module tests.
2015-09-27 17:35:58 +02:00
Daniel Campora
958e273336
tests: Skip extmod machine tests when target is WiPy.
2015-09-27 17:35:45 +02:00
Daniel Campora
c92e6a45eb
cc3200: Rename pyb module to machine.
2015-09-27 16:50:27 +02:00
Daniel Campora
0a7e4fa5ce
tests/wipy: Improve robustness of rtc_irq test.
2015-09-27 14:20:38 +02:00
Daniel Campora
8192310dad
tests/wipy: Improve robustness of time test.
2015-09-27 12:32:02 +02:00
Daniel Campora
ef369249cb
cc3200: Implement support for os.dupterm().
2015-09-27 11:27:24 +02:00
Daniel Campora
a7261ae059
cc3200/mods: Use mp_obj_get_array_fixed_n() where applicable.
2015-09-27 09:28:27 +02:00
Daniel Campora
635ef16432
cc3200/tools: Improve update script robustness.
2015-09-27 02:00:46 +02:00
Daniel Campora
57fa14b5be
cc3200: New WLAN API including test.
2015-09-27 01:50:52 +02:00
Daniel Campora
dbdcb58d64
cc3200: New irq API, affects all classes that provide the irq method.
2015-09-27 01:48:20 +02:00
Paul Sokolovsky
81d64ab939
unix/modjni: call_method(): If name doesn't match, cleanup via goto next_method.
2015-09-26 08:51:22 -07:00
Paul Sokolovsky
c0a79cc919
unix/modjni: Need to really use per-rettype Call*Method functions.
2015-09-26 08:49:12 -07:00
Paul Sokolovsky
7e18d3b6ff
unix/modjni: new_jobject(): Handle null reference.
2015-09-24 15:29:57 -07:00
Damien George
9d5e5c08ab
py/compile: Put compiler state on the C stack.
...
It's relatively small (between 44 and 56 bytes) and helps to reduce heap
pressure and fragmentation during compilation.
2015-09-24 13:15:57 +01:00
Damien George
5572f735b6
docs: Bump version to 1.4.6.
2015-09-23 17:16:22 +01:00
Paul Sokolovsky
e632b1fda7
unix/modjni: Factor out is_object_type().
2015-09-23 07:11:56 -07:00
stijn
941040e9e8
windows: Make mpconfigport.h up-to-date with the unix port
2015-09-23 07:10:00 -07:00
stijn
dfa915a6af
tests: Omit process output parsing in case of CalledProcessError
...
Adding a line-end makes the determination of skip_native fail as it compares
the output against b'CRASH' while it is in fact b'CRASH\n'
2015-09-23 11:50:24 +01:00
Damien George
fbcaf0ea18
py: Slightly simplify compile and emit of star/double-star arguments.
...
Saves a few bytes of code space and eliminates need for rot_two
bytecode (hence saving RAM and execution time, by a tiny bit).
2015-09-23 11:47:01 +01:00
Delio Brignoli
e6978a4e26
py: Fix call args when a stararg is followed by keyword args.
2015-09-23 11:37:00 +01:00
Vicente Olivert Riera
587914169c
unix/modffi.c: cast first to intptr_t when casting from/to pointer
...
This fixes errors like these ones:
modffi.c: In function 'return_ffi_value':
modffi.c:143:29: error: cast to pointer from integer of different size
[-Werror=int-to-pointer-cast]
const char *s = (const char *)val;
^
modffi.c:162:20: error: cast to pointer from integer of different size
[-Werror=int-to-pointer-cast]
return (mp_obj_t)val;
^
modffi.c: In function 'ffifunc_call':
modffi.c:358:25: error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]
values[i] = (ffi_arg)a;
^
modffi.c:373:25: error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]
values[i] = (ffi_arg)s;
^
modffi.c:381:25: error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]
values[i] = (ffi_arg)bufinfo.buf;
^
modffi.c:384:25: error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]
values[i] = (ffi_arg)p->func;
^
These errors can be highlighted when building micropython from MIPS64
n32 because ffi_arg is 64-bit wide and the pointers on MIPS64 n32 are
32-bit wide, so it's trying to case an integer to a pointer (or
vice-versa) of a different size. We should cast first the pointer (or the
integer) to a pointer sized integer (intptr_t) to fix that problem.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
2015-09-22 18:54:31 -07:00
Paul Sokolovsky
ed22e9ba3e
unix/modjni: Move type analysis logic to new_jobject(), for reuse.
2015-09-22 17:02:17 -07:00
stijn
dcbe936c50
windows/msvc: Exclude modjni from build.
2015-09-22 11:07:03 +01:00
Daniel Campora
dffa9f6da6
cc3200: New SD and RTC API plus os and time modules' extensions.
2015-09-21 22:30:32 +02:00
Daniel Campora
660f8613fd
tests/wipy: Remove unneeded dependencies to pyb.Pin.
2015-09-21 22:30:11 +02:00