All of lore.kernel.org
 help / color / mirror / Atom feed
From: Heiko Thiery <heiko.thiery@gmail.com>
To: buildroot@buildroot.org
Cc: Asaf Kahlon <asafka7@gmail.com>,
	Xuanhao Shi <X15000177@gmail.com>,
	James Hilliard <james.hilliard1@gmail.com>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	Romain Naour <romain.naour@smile.fr>,
	Heiko Thiery <heiko.thiery@gmail.com>,
	Anand Gadiyar <gadiyar@ti.com>
Subject: [Buildroot] [PATCH v3 1/3] package/python-yamllint: new package
Date: Fri, 12 Apr 2024 07:53:57 +0200	[thread overview]
Message-ID: <20240412055358.1354293-1-heiko.thiery@gmail.com> (raw)

This host package is needed since u-boot 2024.04 for building ti defconfigs.

This is an requirement for using buildman/binman [1].

[1] https://source.denx.de/u-boot/u-boot/-/blob/v2024.04/tools/buildman/requirements.txt?ref_type=tags#L3

Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
---

v2: accidentally resend this series as v2
    (it's too early in the morning and no coffee yet)

v3:
 - add missing runtime depnedencies
  - a patch that enables the target build for python-pathspec is
    required https://patchwork.ozlabs.org/project/buildroot/patch/20240412054421.1346030-1-heiko.thiery@gmail.com/
 - add runtime test

 package/Config.in                                 |  1 +
 package/python-yamllint/Config.in                 |  8 ++++++++
 package/python-yamllint/python-yamllint.hash      |  3 +++
 package/python-yamllint/python-yamllint.mk        | 15 +++++++++++++++
 .../tests/package/sample_python_yamllint.py       | 13 +++++++++++++
 .../testing/tests/package/test_python_yamllint.py | 11 +++++++++++
 6 files changed, 51 insertions(+)
 create mode 100644 package/python-yamllint/Config.in
 create mode 100644 package/python-yamllint/python-yamllint.hash
 create mode 100644 package/python-yamllint/python-yamllint.mk
 create mode 100644 support/testing/tests/package/sample_python_yamllint.py
 create mode 100644 support/testing/tests/package/test_python_yamllint.py

diff --git a/package/Config.in b/package/Config.in
index d9bbf64c95..1935077f0f 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1437,6 +1437,7 @@ menu "External python modules"
 	source "package/python-xmljson/Config.in"
 	source "package/python-xmltodict/Config.in"
 	source "package/python-xmodem/Config.in"
+	source "package/python-yamllint/Config.in"
 	source "package/python-yarl/Config.in"
 	source "package/python-yatl/Config.in"
 	source "package/python-zc-lockfile/Config.in"
diff --git a/package/python-yamllint/Config.in b/package/python-yamllint/Config.in
new file mode 100644
index 0000000000..5c0962f09f
--- /dev/null
+++ b/package/python-yamllint/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_PYTHON_YAMLLINT
+	bool "python-yamllint"
+	select BR2_PACKAGE_PYTHON_PATHSPEC # runtime
+	select BR2_PACKAGE_PYTHON_PYYAML # runtime
+	help
+	  A linter for YAML files.
+
+	  https://github.com/adrienverge/yamllint
diff --git a/package/python-yamllint/python-yamllint.hash b/package/python-yamllint/python-yamllint.hash
new file mode 100644
index 0000000000..d80e0fdf42
--- /dev/null
+++ b/package/python-yamllint/python-yamllint.hash
@@ -0,0 +1,3 @@
+# Locally computed sha256 checksums
+sha256  7a003809f88324fd2c877734f2d575ee7881dd9043360657cc8049c809eba6cd  yamllint-1.35.1.tar.gz
+sha256  3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986  LICENSE
diff --git a/package/python-yamllint/python-yamllint.mk b/package/python-yamllint/python-yamllint.mk
new file mode 100644
index 0000000000..ceaca3b0b8
--- /dev/null
+++ b/package/python-yamllint/python-yamllint.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# python-yamllint
+#
+################################################################################
+
+PYTHON_YAMLLINT_VERSION = 1.35.1
+PYTHON_YAMLLINT_SOURCE = yamllint-$(PYTHON_YAMLLINT_VERSION).tar.gz
+PYTHON_YAMLLINT_SITE = https://files.pythonhosted.org/packages/da/06/d8cee5c3dfd550cc0a466ead8b321138198485d1034130ac1393cc49d63e
+PYTHON_YAMLLINT_SETUP_TYPE = pep517
+PYTHON_YAMLLINT_LICENSE = GPL-3.0
+PYTHON_YAMLLINT_LICENSE_FILES = LICENSE
+
+$(eval $(python-package))
+$(eval $(host-python-package))
diff --git a/support/testing/tests/package/sample_python_yamllint.py b/support/testing/tests/package/sample_python_yamllint.py
new file mode 100644
index 0000000000..369a3b8d7d
--- /dev/null
+++ b/support/testing/tests/package/sample_python_yamllint.py
@@ -0,0 +1,13 @@
+# example form https://yamllint.readthedocs.io/en/stable/development.html
+
+from yamllint import (config, linter)
+
+data = '''---
+- &anchor
+  foo: bar
+- *anchor
+'''
+
+yaml_config = config.YamlLintConfig("extends: default")
+for p in linter.run(data, yaml_config):
+    print(p.desc, p.line, p.rule)
diff --git a/support/testing/tests/package/test_python_yamllint.py b/support/testing/tests/package/test_python_yamllint.py
new file mode 100644
index 0000000000..226048ae87
--- /dev/null
+++ b/support/testing/tests/package/test_python_yamllint.py
@@ -0,0 +1,11 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonYamllint(TestPythonPackageBase):
+    __test__ = True
+    config = TestPythonPackageBase.config + \
+        """
+        BR2_PACKAGE_PYTHON3=y
+        BR2_PACKAGE_PYTHON_YAMLLINT=y
+        """
+    sample_scripts = ["tests/package/sample_python_yamllint.py"]
--
2.39.2

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

             reply	other threads:[~2024-04-12  5:54 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-12  5:53 Heiko Thiery [this message]
2024-04-12  5:53 ` [Buildroot] [PATCH v3 2/3] boot/ti-k3-r5-loader: add dependency to yamllint Heiko Thiery
2024-04-12 15:18   ` Bryan Brattlof via buildroot
2024-04-12  5:54 ` [Buildroot] [PATCH v3 3/3] uboot/uboot: add new " Heiko Thiery
2024-04-12 15:18   ` Bryan Brattlof via buildroot
2024-04-12 15:43 ` [Buildroot] [PATCH v3 1/3] package/python-yamllint: new package Yann E. MORIN
2024-04-12 15:51   ` Yann E. MORIN
2024-04-12 20:54     ` Romain Naour
2024-04-13  7:20       ` Heiko Thiery
2024-05-07 16:00         ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240412055358.1354293-1-heiko.thiery@gmail.com \
    --to=heiko.thiery@gmail.com \
    --cc=X15000177@gmail.com \
    --cc=asafka7@gmail.com \
    --cc=buildroot@buildroot.org \
    --cc=gadiyar@ti.com \
    --cc=james.hilliard1@gmail.com \
    --cc=romain.naour@smile.fr \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.