circuitpython/py
Jeff Epler 3a68d2f621
Fix build error when frozen modules are updated
When a frozen module was added or updated, a build error would occur
during CI: `KeyError: 'FROZEN_MPY_DIRS'`.

In e40abda1bc I decided that it should be an error if all the expected
keys were not defined in the board settings dict. I made this change
and all seemed to be well; however, my testing did not exercise the
case that a frozen module was changed.

It turns out that FROZEN_MPY_DIRS was not being set in the board settings
dict because the output of print-FROZEN_MPY_DIRS was "FROZEN_MPY_DIRS ="
(which does not match the regular expression) instead of
"FROZEN_MPY_DIRS = " (with a trailing space).

This change fixes the problem by ensuring that an undefined or empty
variable still prints with a space character after the equal character.

Tested by running locally:
```
python3 -c 'import shared_bindings_matrix; print(shared_bindings_matrix.get_settings_from_makefile("ports/atmel-samd", "trinket_m0")["FROZEN_MPY_DIRS"])'
```
(prints a blank line, expected)

as well as simulating a change to the asyncio frozen submodule:
```
python3 -c 'import shared_bindings_matrix; print(shared_bindings_matrix.get_settings_from_makefile("ports/atmel-samd", "trinket_m0")["FROZEN_MPY_DIRS"])'
```
(which will build the elecfreaks_picoed board)
2023-11-18 09:43:36 -06:00
..
argcheck.c In py/ use MP_ERROR_TEXT instead of translate 2023-10-25 08:19:31 +02:00
asmarm.c py/asmarm: Add asm_arm_ldrh_reg_reg_offset() helper func. 2022-05-23 14:21:16 +10:00
asmarm.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmbase.c spelling 2023-09-20 11:23:39 -05:00
asmbase.h py/emit: Suppress unreachable bytecode/native code that follows jump. 2022-06-20 22:28:18 +10:00
asmthumb.c all: Fix spelling mistakes based on codespell check. 2023-04-27 18:03:06 +10:00
asmthumb.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmx64.c py/asmx64: Support full range of regs in asm_x64_lea_disp_to_r64. 2022-05-17 14:25:51 +10:00
asmx64.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
asmx86.c
asmx86.h Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
asmxtensa.c py/asmxtensa: Fix use of l32i/s32i when offset won't fit in encoding. 2022-03-30 16:32:17 +11:00
asmxtensa.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
bc.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
bc.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
bc0.h py: Change jump-if-x-or-pop opcodes to have unsigned offset argument. 2022-03-28 15:43:09 +11:00
binary.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
binary.h
builtin.h wip: continuing compilation fixes; mp_obj_alloc everywhere 2023-08-07 20:45:57 -04:00
builtinevex.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
builtinhelp.c In py/ use MP_ERROR_TEXT instead of translate 2023-10-25 08:19:31 +02:00
builtinimport.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
circuitpy_defns.mk Fix build error when frozen modules are updated 2023-11-18 09:43:36 -06:00
circuitpy_mkenv.mk fetch-port-submodules; fetch-all-submodules 2023-06-05 17:23:34 -04:00
circuitpy_mpconfig.h Merge pull request #8605 from tannewt/fix_esp_heap_alloc 2023-11-14 14:52:28 -08:00
circuitpy_mpconfig.mk Add `locale.getlocale()` 2023-11-14 21:20:03 -06:00
compile.c Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
compile.h py: Pass in address to compiled module instead of returning it. 2022-12-08 12:27:23 +11:00
dynruntime.h Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
dynruntime.mk py/dynruntime.mk: Allow building assembly source in natmods. 2022-08-11 14:00:13 +10:00
emit.h py/compile: Fix scope of assignment expression target in comprehensions. 2023-03-09 12:13:12 +11:00
emitbc.c spelling 2023-09-20 11:23:39 -05:00
emitcommon.c py/compile: Fix scope of assignment expression target in comprehensions. 2023-03-09 12:13:12 +11:00
emitglue.c Fix native emitter compile 2023-10-24 14:48:02 -07:00
emitglue.h py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitinlinethumb.c Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
emitinlinextensa.c Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
emitnarm.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnative.c Fix native emitter compile 2023-10-24 14:48:02 -07:00
emitnthumb.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnx64.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnx86.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnxtensa.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
emitnxtensawin.c py/emitnative: Access qstr values using indirection table qstr_table. 2022-05-23 15:43:06 +10:00
enum.c fix use of locals_dict 2023-09-22 14:25:23 -05:00
enum.h MAKE_ENUM_TYPE for new style type defs 2023-09-22 13:39:24 -05:00
formatfloat.c all: Fix various spelling mistakes found by codespell 2.2.6. 2023-10-03 11:24:50 +11:00
formatfloat.h
frozenmod.c py: Rework bytecode and .mpy file format to be mostly static data. 2022-02-24 18:08:43 +11:00
frozenmod.h py/builtin: Clean up and simplify import_stat and builtin_open config. 2022-05-25 13:04:45 +10:00
gc.c add CIRCUITPY-CHANGE annotations 2023-11-08 09:08:10 -05:00
gc.h add CIRCUITPY-CHANGE annotations 2023-11-08 09:08:10 -05:00
grammar.h
lexer.c py/lexer: Add missing initialisation for fstring_args_idx. 2023-09-29 13:58:26 +10:00
lexer.h py/builtin: Clean up and simplify import_stat and builtin_open config. 2022-05-25 13:04:45 +10:00
make_root_pointers.py py/make_root_pointers: Add MP_REGISTER_ROOT_POINTER parser/generator. 2022-07-18 13:48:23 +10:00
makecompresseddata.py all: Fix spelling mistakes based on codespell check. 2023-04-27 18:03:06 +10:00
makemoduledefs.py py/makemoduledefs.py: Automatically declare delegation attr functions. 2023-06-14 19:03:46 +10:00
makeqstrdata.py change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
makeqstrdefs.py fix another error seen only on clean builds 2023-10-30 16:25:25 +01:00
maketranslationdata.py Add `locale.getlocale()` 2023-11-14 21:20:03 -06:00
makeversionhdr.py change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
malloc.c py/malloc: Fix DEBUG_print() args in m_realloc_maybe. 2023-09-04 10:26:09 +10:00
map.c py/map: Clear value when re-using slot with ordered dictionaries. 2023-01-13 14:21:32 +11:00
misc.h WIP 2023-10-25 21:24:52 +02:00
mkenv.mk change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
mkrules.cmake all: Remove query-variants make target. 2023-08-15 17:37:44 +10:00
mkrules.mk change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
modarray.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
modbuiltins.c Add `warnings` and warn about displayio changes 2023-10-25 15:45:45 -07:00
modcmath.c all: Remove third argument to MP_REGISTER_MODULE. 2022-06-02 16:31:37 +10:00
modcollections.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
moderrno.c Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
modgc.c py/gc: Add "max new split" value in result of gc.mem_free(). 2023-09-15 12:19:13 +10:00
modio.c Merge remote-tracking branch 'adafruit/main' into v1.20-merge 2023-10-11 11:21:57 -07:00
modmath.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
modmicropython.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
modstruct.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
modsys.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
modthread.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
mpconfig.h MICROPY_NONSTANDARD_TYPECODES default; check MICROPY_PY_ERRNO in objexcept.c 2023-10-20 13:35:38 -04:00
mperrno.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
mphal.h
mpprint.c py/mpprint.c: fix formatting 2023-10-26 15:30:42 -04:00
mpprint.h restore cprintf/vcprintf prototypes 2023-10-26 19:39:26 +02:00
mpstate.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
mpstate.h Add `warnings` and warn about displayio changes 2023-10-25 15:45:45 -07:00
mpthread.h py/modthread: Return thread id from start_new_thread(). 2023-09-03 18:49:18 +10:00
mpz.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
mpz.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
nativeglue.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
nativeglue.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nlr.c Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
nlr.h Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
nlraarch64.c Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
nlrmips.c Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
nlrpowerpc.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
nlrsetjmp.c py/nlrsetjmp: Use MP_NLR_JUMP_HEAD macro to simplify code. 2023-06-02 21:47:34 +10:00
nlrthumb.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
nlrx64.c Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
nlrx86.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
nlrxtensa.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
obj.c remove some unneeded diffs 2023-10-26 19:39:43 +02:00
obj.h Merge pull request #8519 from jepler/compressed-message-type 2023-10-27 10:53:44 -04:00
objarray.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objarray.h py/objarray: Raise error on out-of-bound memoryview slice start. 2023-01-20 16:31:37 +11:00
objattrtuple.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objbool.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objboundmeth.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objcell.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
objclosure.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objcomplex.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objdeque.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objdict.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objenumerate.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objexcept.c Merge pull request #8519 from jepler/compressed-message-type 2023-10-27 10:53:44 -04:00
objexcept.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objfilter.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objfloat.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objfun.c Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
objfun.h wip; remove long-lived functionality; remove PR#2614 2023-08-08 20:41:17 -04:00
objgenerator.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objgenerator.h
objgetitemiter.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objint.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objint.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objint_longlong.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objint_mpz.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objlist.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objlist.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objmap.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objmodule.c Switch to using MP_ERROR_TEXT instead of translate, globally 2023-10-30 09:49:06 +01:00
objmodule.h py/makemoduledefs.py: Automatically declare delegation attr functions. 2023-06-14 19:03:46 +10:00
objnamedtuple.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objnamedtuple.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objnone.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objobject.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objpolyiter.c py/obj: Convert make_new into a mp_obj_type_t slot. 2022-09-19 19:06:15 +10:00
objproperty.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objproperty.h Fix native property setting from subclass 2023-10-24 16:20:51 -07:00
objrange.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objreversed.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objset.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
objsingleton.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
objslice.c Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
objstr.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objstr.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objstringio.c Re-add passing native methods the subclass instance 2023-10-24 16:20:51 -07:00
objstringio.h
objstrunicode.c pre-commit fixes 2023-10-23 20:14:40 -04:00
objtraceback.c convert to MP_DEFINED_CONST_OBJ_TYPE() 2023-09-19 21:09:29 -04:00
objtraceback.h
objtuple.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objtuple.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objtype.c Pass subobject into native subscr 2023-10-25 11:44:32 -07:00
objtype.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
objzip.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
opmethods.c py/obj: Add accessors for type slots and use everywhere. 2022-09-19 19:06:07 +10:00
pairheap.c
pairheap.h
parse.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
parse.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
parsenum.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
parsenum.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
parsenumbase.c
parsenumbase.h
persistentcode.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
persistentcode.h initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
profile.c py/profile: Remove the requirement to disable MICROPY_COMP_CONST. 2023-08-30 10:58:04 +10:00
profile.h py: Rework bytecode and .mpy file format to be mostly static data. 2022-02-24 18:08:43 +11:00
proto.c fixes for mp_type_get_protocol_slot 2023-09-22 13:51:57 -05:00
proto.h fixes for mp_type_get_protocol_slot 2023-09-22 13:51:57 -05:00
py.cmake Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
py.mk Merge pull request #8508 from dhalbert/v1.21-merge 2023-10-24 15:36:06 -07:00
pystack.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
pystack.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
qstr.c Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
qstr.h Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
qstrdefs.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
reader.c py: Include filename in errors from loading/saving files via "open". 2022-09-19 23:27:08 +10:00
reader.h
repl.c initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
repl.h py/modsys: Add optional mutable attributes sys.ps1/ps2 and use them. 2022-03-10 10:58:33 +11:00
ringbuf.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
ringbuf.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
runtime.c Switch to using MP_ERROR_TEXT instead of translate, globally 2023-10-30 09:49:06 +01:00
runtime.h Fix pointer-ness, const-ness of compressed messages 2023-10-25 21:40:11 +02:00
runtime0.h change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
runtime_utils.c
scheduler.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
scope.c py: Rework bytecode and .mpy file format to be mostly static data. 2022-02-24 18:08:43 +11:00
scope.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
sequence.c initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
showbc.c py: Change jump-if-x-or-pop opcodes to have unsigned offset argument. 2022-03-28 15:43:09 +11:00
smallint.c
smallint.h py/smallint: Introduce MP_SMALL_INT_BITS macro. 2022-03-25 12:23:43 +11:00
stackctrl.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
stackctrl.h
stream.c Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
stream.h pre-commit C formatting fix 2023-10-23 20:37:42 -04:00
unicode.c
unicode.h
usermod.cmake
vm.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
vmentrytable.h initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
vstr.c change CIRCUITPY change markers to CIRCUITPY-CHANGE 2023-10-19 16:42:36 -04:00
warning.c