poky/bitbake/lib/bb
Nikolai Merinov b65452bda3 bitbake: parse: Forbid ambiguous assignments to ${.}, ${+}, and ${:} variables
Old code that parse variable names in assignment commands behave differently for
variables that ends with special symbol for single-character variable names and
multi-character variable names. For example:

  A+="1"   # Change variable ${A}, '+' glued to '='
  A+ = "1" # Change variable ${A+}

  +="1"    # Change variable ${+}, the '+' symbol not part of assignment operator
  + = "1"  # Change variable ${+}

New code would always assume that '.=', '+=', and ':=' is assignment operator.
As result code like the following would raise parsing error

  +="value"

While code with extra spaces would work as before

  + = "value" # Change variable ${+}

This change allow to catch issues in code that generate bitbake configuration
files in a manner like "echo ${VARNAME}+=${VALUE} >> conf/local.conf"

(Bitbake rev: 93059aad13a12cd69d86368795c88e5349197d5d)

Signed-off-by: Nikolai Merinov <n.merinov@inango-systems.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-05 12:11:01 +00:00
..
asyncrpc bitbake: asyncrpc: Handle websockets exceptions 2025-01-11 18:35:01 +00:00
compress bitbake: bb/compress: use lz4 instead of lz4c 2024-11-05 11:17:17 +00:00
fetch2 bitbake: bb/fetch2/__init__.py: remove a DeprecationWarning in uri_replace() 2025-01-14 09:51:45 +00:00
parse bitbake: parse: Forbid ambiguous assignments to ${.}, ${+}, and ${:} variables 2025-02-05 12:11:01 +00:00
pysh bitbake: pyshyacc: allow double COMMA statements 2020-07-12 11:53:00 +01:00
server bitbake: cooker: use enum for cooker state to improve readability 2024-12-06 23:33:54 +00:00
tests bitbake: parse: Forbid ambiguous assignments to ${.}, ${+}, and ${:} variables 2025-02-05 12:11:01 +00:00
ui bitbake: cooker/cache: Drop mc 'default' string value 2025-01-25 11:30:51 +00:00
__init__.py bitbake: bitbake: Drop older python version compatibility code 2024-05-31 16:56:25 +01:00
acl.py bitbake: lib/bb: Add xattr and acl libraries 2023-08-24 16:49:38 +01:00
build.py bitbake: bb/build: add a function to list the tasks in a datastore 2024-11-28 00:06:24 +00:00
cache_extra.py bitbake: bitbake: Strip old editor directives from file headers 2019-05-04 10:44:10 +01:00
cache.py bitbake: cooker/cache: Drop mc 'default' string value 2025-01-25 11:30:51 +00:00
checksum.py bitbake: checksum/fetch2: Switch from persist_data to a standard cache file 2024-10-09 13:04:30 +01:00
codeparser.py bitbake: codeparser: Allow code visitor expressions to be declared in metadata 2024-08-29 21:58:19 +01:00
command.py bitbake: cooker: Make cooker 'skiplist' per-multiconfig/mc 2024-12-17 11:48:25 +00:00
cooker.py bitbake: cooker: Make cooker 'skiplist' per-multiconfig/mc 2024-12-17 11:48:25 +00:00
cookerdata.py bitbake: cooker/cache: Drop mc 'default' string value 2025-01-25 11:30:51 +00:00
COW.py bitbake: COW: Fix hardcoded magic numbers and work with python 3.13 2024-10-09 13:04:30 +01:00
daemonize.py bitbake: bitbake: Add copyright headers where missing 2022-08-12 11:49:29 +01:00
data_smart.py bitbake: data_smart: fix ??= operator for variable flags 2025-01-14 09:51:45 +00:00
data.py bitbake: codeparser/data: Ensure module function contents changing is accounted for 2024-07-01 13:53:23 +01:00
event.py bitbake: Remove custom exception backtrace formatting 2024-11-28 00:06:24 +00:00
main.py bitbake: bitbake: improve descriptions of '-S printdiff' 2024-03-22 16:26:45 +00:00
methodpool.py bitbake: bitbake: Strip old editor directives from file headers 2019-05-04 10:44:10 +01:00
monitordisk.py bitbake: Fix disk space monitoring on cephfs 2023-08-25 07:55:34 +01:00
msg.py bitbake: Remove custom exception backtrace formatting 2024-11-28 00:06:24 +00:00
namedtuple_with_abc.py bitbake: lib: fix most undefined code picked up by pylint 2020-08-25 18:14:53 +01:00
process.py bitbake: bitbake: Add copyright headers where missing 2022-08-12 11:49:29 +01:00
progress.py bitbake: progress: Fix typo "wherever" 2022-02-20 16:45:25 +00:00
providers.py bitbake: providers: use local variable for packages_dynamic pattern 2022-04-19 14:15:09 +01:00
remotedata.py bitbake: tinfoil: Simplify remote datastore connections 2020-03-24 22:01:03 +00:00
runqueue.py bitbake: runqueue: Fix scenetask processing performance issue 2024-11-29 22:13:25 +00:00
siggen.py bitbake: siggen: Fix rare file-checksum hash issue 2024-09-05 21:49:17 +01:00
taskdata.py bitbake: lib/bb: Replace "abort" usage in task handling 2022-02-21 23:37:26 +00:00
tinfoil.py bitbake: cooker: Make cooker 'skiplist' per-multiconfig/mc 2024-12-17 11:48:25 +00:00
utils.py bitbake: utils: add Go mod h1 checksum support 2025-01-11 18:35:01 +00:00
xattr.py bitbake: lib/bb: Add xattr and acl libraries 2023-08-24 16:49:38 +01:00