VOL-4874 - Fix local lint target use problems.
scripts/which_deployment_owns_device.sh
---------------------------------------
* Fix a few shellcheck complaints.
makefiles/lint/robot.mk
-----------------------
* Update target logic to use && -vs- ;
* semicolon use can mask errors.
makefiles/lint/python.mk
------------------------
* Update target logic to use && -vs- ;
* Removed pylint option --py3k, switch not suppored by newer interpreters.
makefiles/lint.mk
makefiles/lint/shell.mk
-----------------------
* Added a lint target to invoke shellcheck on sources.
Makefile
--------
* target:clean modified to remove generated sources.
* target:gendocs: unique $(LIBDIRS) and replace for loop with a simple mkdir -vp call.
* cosmetic indentation cleanup.
* modified vst_venv target to apply patches after virtualenv created.
* patches address failures caused by python 3.10+ requiring collections.abc
* Ignore exit status from 310_migration for now to avoid failing other jobs.
patches/lib/python3.10/site-packages/robot/utils/normalizing.py/patch
patches/lib/python3.10/site-packages/robot/utils/robottypes3.py/patch
---------------------------------------------------------------------
* Attempt to import the new collections.abc module for Mapping and
friends so python 3.10+ can be supported.
* Fall back to existing module import supported by python interpreters
v3.5 <=> v3.9.
patches/python_310_migration.sh
-------------------------------
* Self contained helper script used to generate and apply python 3.10+ patches.
Followup edits
--------------
* Added missing license blocks reported by jenkins.
* Updated lint checking to detect license errors so problems can be fixed prior to checkin.
* Add set -x debugging, not clear why pyenv patching failed.
Change-Id: I2b8515bb26874eb8b1564bec87353ea0c1485b61
diff --git a/makefiles/lint/python.mk b/makefiles/lint/python.mk
index 5aecd58..86503a7 100644
--- a/makefiles/lint/python.mk
+++ b/makefiles/lint/python.mk
@@ -21,12 +21,11 @@
lint : lint-python
-# check deps for format and python3 cleanliness
lint-python: vst_venv
- source ./$</bin/activate \
- ; set -u \
- ; pylint --py3k $(PYTHON_FILES) \
- ; flake8 --max-line-length=99 --count $(PYTHON_FILES)
+ -source ./$</bin/activate \
+ && set -u \
+ && pylint $(PYTHON_FILES) \
+ && flake8 --max-line-length=99 --count $(PYTHON_FILES)
help::
@echo " lint-python Syntax check using pylint and flake8"