| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
| |
To use frozen bytecode make a subdirectory under the unix/ directory
(eg frozen/), put .py files there, then run:
make FROZEN_MPY_DIR=frozen
Be sure to build from scratch. The .py files will then be available for
importing.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The current install command uses the flag -D which is specific to the
install command from GNU coreutils, but isn't available for the BSD
version. This solution uses the -d flag which should be commonly
available to create the target directory. Afterwards the target files
are installed to this directory seperately.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- add template rule that converts a specified source file into a qstring file
- add special rule for generating a central header that contains all
extracted/autogenerated strings - defined by QSTR_DEFS_COLLECTED
variable. Each platform appends a list of sources that may contain
qstrings into a new build variable: SRC_QSTR. Any autogenerated
prerequisities are should be appened to SRC_QSTR_AUTO_DEPS variable.
- remove most qstrings from py/qstrdefs, keep only qstrings that
contain special characters - these cannot be easily detected in the
sources without additional annotations
- remove most manual qstrdefs, use qstrdef autogen for: py, cc3200,
stmhal, teensy, unix, windows, pic16bit:
- remove all micropython generic qstrdefs except for the special strings that contain special characters (e.g. /,+,<,> etc.)
- remove all port specific qstrdefs except for special strings
- append sources for qstr generation in platform makefiles (SRC_QSTR)
|
|
|
|
| |
These are *defined* per-port, but why redeclare them again and again.
|
|
|
|
|
|
|
| |
The config variable MICROPY_MODULE_FROZEN is now made of two separate
parts: MICROPY_MODULE_FROZEN_STR and MICROPY_MODULE_FROZEN_MPY. This
allows to have none, either or both of frozen strings and frozen mpy
files (aka frozen bytecode).
|
|
|
|
|
| |
By default it uses mp_plat_print, but a port may override it to another
value with MICROPY_DEBUG_PRINTER_DEST.
|
| |
|
|
|
|
| |
After this you need only one path for build (path/to/djgpp/bin). Original patch made by @dhylands
|
| |
|
| |
|
|
|
|
|
| |
And with "buffering" arg introduced, it's non possible to make it
non-kwonly.
|
|
|
|
|
| |
It's ignored (unbuffered, raw I/O is used), but least makes it compatible
with CPython.
|
| |
|
|
|
|
|
|
|
| |
See https://github.com/micropython/micropython/issues/1736 for the
list of complications. This workaround instead of duplicating REPL
to another stream, switches to it, because read(STDIN) we use otherwise
is blocking call, so it and custom REPL stream can't be used together.
|
| |
|
| |
|
|
|
|
| |
TODO: Probably merge into vfs_fat_diskio.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
That's not true e.g. on Linux.
|
| |
|
|
|
|
|
|
|
|
|
| |
Calling it from mp_init() is too late for some ports (like Unix), and leads
to incomplete stack frame being captured, with following GC issues. So, now
each port should call mp_stack_ctrl_init() on its own, ASAP after startup,
and taking special precautions so it really was called before stack variables
get allocated (because if such variable with a pointer is missed, it may lead
to over-collecting (typical symptom is segfaulting)).
|
| |
|
|
|
|
|
|
|
| |
When using newer glibc's the compiler automatically sets
_FORTIFY_SOURCE when building with -O1 and this causes
a special inlined version of printf to be declared which
then bypasses our version of printf.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Functions added are:
- randint
- randrange
- choice
- random
- uniform
They are enabled with configuration variable
MICROPY_PY_URANDOM_EXTRA_FUNCS, which is disabled by default. It is
enabled for unix coverage build and stmhal.
|
|
|
|
| |
By reserving enough space for peer address.
|
|
|
|
|
|
|
|
| |
Seedable and reproducible pseudo-random number generator. Implemented
functions are getrandbits(n) (n <= 32) and seed().
The algorithm used is Yasmarang by Ilya Levin:
http://www.literatecode.com/yasmarang
|
| |
|
| |
|
|
|
|
| |
Build using: make nanbox
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The first argument to the type.make_new method is naturally a uPy type,
and all uses of this argument cast it directly to a pointer to a type
structure. So it makes sense to just have it a pointer to a type from
the very beginning (and a const pointer at that). This patch makes
such a change, and removes all unnecessary casting to/from mp_obj_t.
|
|
|
|
|
| |
With this patch the n_args parameter is changed type from mp_uint_t to
size_t.
|
|
|
|
|
|
|
| |
This patch changes the type signature of .make_new and .call object method
slots to use size_t for n_args and n_kw (was mp_uint_t. Makes code more
efficient when mp_uint_t is larger than a machine word. Doesn't affect
ports when size_t and mp_uint_t have the same size.
|
|
|
|
| |
Instead of struct tm like structure, as required by CPython.
|
| |
|
|
|
|
|
| |
So that if MICROPY_FORCE_32BIT is set mpconfigport.mk it influences
mkenv.mk.
|
| |
|
| |
|
| |
|
|
|
|
| |
Function to actually spool output terminal data to dupterm object.
|
|
|
|
| |
To comply with already established scheme for extmod's.
|
| |
|