| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
- Changed: ValueError, TypeError, NotImplementedError
- OSError invocations unchanged, because the corresponding utility
function takes ints, not strings like the long form invocation.
- OverflowError, IndexError and RuntimeError etc. not changed for now
until we decide whether to add new utility functions.
|
|
|
|
|
| |
There were several different spellings of MicroPython present in comments,
when there should be only one.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code conventions suggest using header guards, but do not define how
those should look like and instead point to existing files. However, not
all existing files follow the same scheme, sometimes omitting header guards
altogether, sometimes using non-standard names, making it easy to
accidentally pick a "wrong" example.
This commit ensures that all header files of the MicroPython project (that
were not simply copied from somewhere else) follow the same pattern, that
was already present in the majority of files, especially in the py folder.
The rules are as follows.
Naming convention:
* start with the words MICROPY_INCLUDED
* contain the full path to the file
* replace special characters with _
In addition, there are no empty lines before #ifndef, between #ifndef and
one empty line before #endif. #endif is followed by a comment containing
the name of the guard macro.
py/grammar.h cannot use header guards by design, since it has to be
included multiple times in a single C file. Several other files also do not
need header guards as they are only used internally and guaranteed to be
included only once:
* MICROPY_MPHALPORT_H
* mpconfigboard.h
* mpconfigport.h
* mpthreadport.h
* pin_defs_*.h
* qstrdefs*.h
|
| |
|
| |
|
|
|
|
|
| |
It provides sys.stdin, sys.stdout, sys.stderr for bare-metal targets based
on mp_hal functions.
|
|
|
|
|
|
|
|
|
| |
These implementations are incorrect (eg f2d and d2f don't handle special
values like 0.0) and proper versions can be provided by libgcc (or
equivalent depending on the toolchain).
libgcc is now linked with the stmhal port so that library will provide
these functions from now on.
|
|
|
|
|
| |
axTLS 2.1.3 brings support for TLS 1.2 and SNI. With MicroPython patchset
on top of it, the code size growth (x86) is ~2K.
|
|
|
|
|
| |
If a port is using interrupt_char.c then it must enable
MICROPY_KBD_EXCEPTION. This is the case for all official ports.
|
| |
|
| |
|
|
|
|
|
| |
Don't print dupe ">>> " prompt when starting event-driven REPL. Clear
incomplete line in transition from raw to friendly REPL.
|
|
|
|
|
|
|
| |
This follows the pattern of how all other headers are now included, and
makes it explicit where the header file comes from. This patch also
removes -I options from Makefile's that specify the mp-readline/timeutils/
netutils directories, which are no longer needed.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The lexer can now raise an exception on construction so it must go within
an nlr handler block.
|
| |
|
| |
|
|
|
|
|
| |
Using MICROPY_FATFS_EXFAT. Enabling this has licensing implications;
see https://www.microsoft.com/en-us/legal/intellectualproperty/mtl/exfat-licensing.aspx
|
| |
|
|
|
|
|
| |
From https://github.com/micropython/oofatfs, branch work-R0.12b,
commit 46fb53331e7a583c29a41d37ce4b53f2718597e5.
|
|
|
|
|
| |
From https://github.com/micropython/oofatfs, branch work-R0.12b,
commit 1e295b40550664bbaac18d95a4b6a58154464d31.
|
|
|
|
|
| |
From https://github.com/micropython/oofatfs, branch work-R0.12b,
commit a346ccec123c2e4d887e2751d64156208d03bff4.
|
| |
|
|
|
|
|
|
| |
Ports should no longer use pyhelp_print_obj but instead should define
MICROPY_PY_BUILTINS_HELP to 1 and then specify their help text using
MICROPY_PY_BUILTINS_HELP_TEXT.
|
|
|
|
|
| |
Ultimately all ports that use lib/utils/interrupt_char would enable
MICROPY_KBD_EXCEPTION, so this is an interim solution.
|
|
|
|
|
| |
This allows it to be used only when the hardware supports VFP
instructions, preventing compile errors.
|
|
|
|
|
| |
With other ports. Other ports declare it in mphalport.h, it can be
inline or macro.
|
|
|
|
|
|
|
| |
This happens with some compilers on some architectures, which don't define
size_t as unsigned int. MicroPython's printf() dooesn't support obscure
format specifiers for size_t, so the obvious choice is to explicitly cast
to unsigned, to match %u used in printf().
|
|
|
|
|
|
| |
This patch removes a compilation warning in pyexec.
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@linaro.org>
|
|
|
|
| |
This patch introduces MP_PYTHON_PRINTER for general use.
|
|
|
|
|
|
|
| |
In order to have more fine-grained control over how builtin functions are
constructed, the MP_DECLARE_CONST_FUN_OBJ macros are made more specific,
with suffix of _0, _1, _2, _3, _VAR, _VAR_BETEEN or _KW. These names now
match the MP_DEFINE_CONST_FUN_OBJ macros.
|
|
|
|
|
| |
Setting the pyexec_system_exit variable to PYEXEC_FORCED_EXT allows
SystemExit exceptions to terminate the pyexec functions.
|
|
|
|
|
|
|
| |
Now there is just one function to allocate a new vstr, namely vstr_new
(in addition to vstr_init etc). The caller of this function should know
what initial size to allocate for the buffer, or at least have some policy
or config option, instead of leaving it to a default (as it was before).
|
|
|
|
|
|
| |
"Forced exit" is treated as soft-reboot (Ctrl+D). But expected effect of
calling sys.exit() is termination of the current script, not any further
and more serious actions like mentioned soft reboot.
|
| |
|
| |
|
|
|
|
|
| |
Files in lib/cmsis are generic for all Cortex-M MCU's
files left in stmhal/cmsis are all STM32 specific.
|
|
|
|
|
| |
Utility functions for keyboard interrupt handling, to be reused across
(baremetal) ports.
|
|
|
|
|
|
|
|
| |
This new config option allows to control whether MicroPython uses its own
internal printf or not (if not, an external one should be linked in).
Accompanying this new option is the inclusion of lib/utils/printf.c in the
core list of source files, so that ports no longer need to include it
themselves.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This both good default for 4096 and makes less chance to see overflow page
issues.
|
|
|
|
|
| |
It allows to access files via a virtual method tables and thus can integrate
with MicroPython's stream objects.
|
| |
|
|
|
|
|
|
|
| |
Helpful when porting existing C libraries to MicroPython. abort()ing in
embedded environment isn't a good idea, so when compiling such library,
-Dabort=abort_ option can be given to redirect standard abort() to this
"safe" version.
|