* [Buildroot] [PATCH v4 1/3] package/python-cramjam: new package
@ 2026-07-30 7:59 Flaviu Nistor
2026-07-30 7:59 ` [Buildroot] [PATCH v4 2/3] package/python-snappy: bump version to 0.7.2 Flaviu Nistor
2026-07-30 7:59 ` [Buildroot] [PATCH v4 3/3] support/testing: add snappy test Flaviu Nistor
0 siblings, 2 replies; 3+ messages in thread
From: Flaviu Nistor @ 2026-07-30 7:59 UTC (permalink / raw)
To: buildroot; +Cc: Flaviu Nistor, James Hilliard, Julien Olivain
Add cramjam, a python bindings to de/compression algorithms.
It is needed by python-snappy package in order to bump the version.
Signed-off-by: Flaviu Nistor <flaviu.nistor@gmail.com>
---
Changes in v4:
- Update also DEVELOPERS file as suggested by Fiona Klute.
- Link to v3: https://lore.kernel.org/all/20260724065004.217411-1-flaviu.nistor@gmail.com/
DEVELOPERS | 3 +++
package/Config.in | 1 +
package/python-cramjam/Config.in | 9 +++++++++
package/python-cramjam/python-cramjam.hash | 4 ++++
package/python-cramjam/python-cramjam.mk | 14 ++++++++++++++
5 files changed, 31 insertions(+)
create mode 100644 package/python-cramjam/Config.in
create mode 100644 package/python-cramjam/python-cramjam.hash
create mode 100644 package/python-cramjam/python-cramjam.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index f2713c7239..93519574c9 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1134,6 +1134,9 @@ F: support/testing/tests/package/test_nftables.py
F: support/testing/tests/package/test_python_networkmanager_goi.py
F: support/testing/tests/package/test_python_pyroute2.py
+N: Flaviu Nistor <flaviu.nistor@gmail.com>
+F: package/python-cramjam/
+
N: Flávio Tapajós <flavio.tapajos@newtesc.com.br>
F: configs/asus_tinker-s_rk3288_defconfig
F: board/asus/tinker-s/
diff --git a/package/Config.in b/package/Config.in
index fc1e57d30d..d4e3c2fe58 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1061,6 +1061,7 @@ menu "External python modules"
source "package/python-construct/Config.in"
source "package/python-contourpy/Config.in"
source "package/python-couchdb/Config.in"
+ source "package/python-cramjam/Config.in"
source "package/python-crayons/Config.in"
source "package/python-crc/Config.in"
source "package/python-crc16/Config.in"
diff --git a/package/python-cramjam/Config.in b/package/python-cramjam/Config.in
new file mode 100644
index 0000000000..84119ca968
--- /dev/null
+++ b/package/python-cramjam/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_PYTHON_CRAMJAM
+ bool "python-cramjam"
+ depends on !BR2_ARM_CPU_ARMV5
+ help
+ Python bindings to de/compression algorithms in Rust.
+ Allows for using algorithms such as Snappy, without any
+ system or other python dependencies.
+
+ https://pypi.org/project/cramjam
diff --git a/package/python-cramjam/python-cramjam.hash b/package/python-cramjam/python-cramjam.hash
new file mode 100644
index 0000000000..2042bb6281
--- /dev/null
+++ b/package/python-cramjam/python-cramjam.hash
@@ -0,0 +1,4 @@
+# Locally computed sha256 checksums
+sha256 542ea349a7528d88935856d3eb562cd17bff713d7a41eab8d6812d78a3cb00ba cramjam-2.11.0.tar.gz
+sha256 10892f279948fe9a2dd5f2c559ef78aae1ebf4b5d5825e1eaf68b03787fde402 python-cramjam-2.11.0-cargo6.tar.gz
+sha256 b4f882bfc80d27a3732789bd883a8c1d342e8ffea7f622a71b3dfded834205ff LICENSE
diff --git a/package/python-cramjam/python-cramjam.mk b/package/python-cramjam/python-cramjam.mk
new file mode 100644
index 0000000000..e1e060bfba
--- /dev/null
+++ b/package/python-cramjam/python-cramjam.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-cramjam
+#
+################################################################################
+
+PYTHON_CRAMJAM_VERSION = 2.11.0
+PYTHON_CRAMJAM_SITE = $(call github,milesgranger,cramjam,v$(PYTHON_CRAMJAM_VERSION))
+PYTHON_CRAMJAM_SETUP_TYPE = maturin
+PYTHON_CRAMJAM_LICENSE = MIT
+PYTHON_CRAMJAM_LICENSE_FILES = LICENSE
+
+$(eval $(python-package))
+$(eval $(host-python-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v4 2/3] package/python-snappy: bump version to 0.7.2
2026-07-30 7:59 [Buildroot] [PATCH v4 1/3] package/python-cramjam: new package Flaviu Nistor
@ 2026-07-30 7:59 ` Flaviu Nistor
2026-07-30 7:59 ` [Buildroot] [PATCH v4 3/3] support/testing: add snappy test Flaviu Nistor
1 sibling, 0 replies; 3+ messages in thread
From: Flaviu Nistor @ 2026-07-30 7:59 UTC (permalink / raw)
To: buildroot; +Cc: Flaviu Nistor, James Hilliard, Julien Olivain
Even if there is a 0.7.3 on Pypi, there is no 0.7.3 release
on the project homepage, hence the bump to 0.7.2.
Since 0.7.0 is switched from snappy library to cramjam so
update the PYTHON_SNAPPY_DEPENDENCIES.
Add also PYTHON_SNAPPY_SOURCE for correct package on Pypi.
Signed-off-by: Flaviu Nistor <flaviu.nistor@gmail.com>
---
Changes in v4:
- Add also tests for python-snappy as indicated by Julien Olivain.
- More clean package Config.in
- Link to v3: https://lore.kernel.org/all/20260724065004.217411-1-flaviu.nistor@gmail.com/
Changes in v3:
- Add new package cramjam and to fix error indicated by Julien Olivain.
- Link to v2: https://lore.kernel.org/all/20260717061943.4491-1-flaviu.nistor@gmail.com/
Changes in v2:
- Fix error indicated by Julien Olivain when running make python-snappy-legal-info.
- Link to v1: https://lore.kernel.org/all/20260409152520.5894-1-flaviu.nistor@gmail.com/
DEVELOPERS | 4 ++++
package/python-snappy/Config.in | 7 ++-----
package/python-snappy/python-snappy.hash | 4 ++--
package/python-snappy/python-snappy.mk | 7 ++++---
4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/DEVELOPERS b/DEVELOPERS
index 93519574c9..dbe05b7806 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1135,7 +1135,11 @@ F: support/testing/tests/package/test_python_networkmanager_goi.py
F: support/testing/tests/package/test_python_pyroute2.py
N: Flaviu Nistor <flaviu.nistor@gmail.com>
+F: package/python-click/
F: package/python-cramjam/
+F: package/python-rich/
+F: package/python-smmap2/
+F: package/python-snappy/
N: Flávio Tapajós <flavio.tapajos@newtesc.com.br>
F: configs/asus_tinker-s_rk3288_defconfig
diff --git a/package/python-snappy/Config.in b/package/python-snappy/Config.in
index fd7f84050f..e13c6abadb 100644
--- a/package/python-snappy/Config.in
+++ b/package/python-snappy/Config.in
@@ -1,12 +1,9 @@
config BR2_PACKAGE_PYTHON_SNAPPY
bool "python-snappy"
- depends on BR2_INSTALL_LIBSTDCPP # snappy
- select BR2_PACKAGE_SNAPPY
+ depends on !BR2_ARM_CPU_ARMV5 #cramjam
+ select BR2_PACKAGE_PYTHON_CRAMJAM
help
Python library for the snappy compression library from
Google.
http://github.com/andrix/python-snappy
-
-comment "python-snappy needs a toolchain w/ C++"
- depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/python-snappy/python-snappy.hash b/package/python-snappy/python-snappy.hash
index c4dbc72077..2f40b6c531 100644
--- a/package/python-snappy/python-snappy.hash
+++ b/package/python-snappy/python-snappy.hash
@@ -1,5 +1,5 @@
# md5, sha256 from https://pypi.org/pypi/python-snappy/json
-md5 fc84cfa3526fba06d66f0d0b2e764300 python-snappy-0.6.1.tar.gz
-sha256 b6a107ab06206acc5359d4c5632bd9b22d448702a79b3169b0c62e0fb808bb2a python-snappy-0.6.1.tar.gz
+md5 04a4e58b0a932403bb285900e67c778d python_snappy-0.7.2.tar.gz
+sha256 04bf182f9d9f67b7a846dae2f1df36180ceeee8d3380e4b6799deff5272c4978 python_snappy-0.7.2.tar.gz
# Locally computed sha256 checksums
sha256 d007cb05f143d99d16d5cd0d1bf291daf037adb36800344e440ec26edb938f9a LICENSE
diff --git a/package/python-snappy/python-snappy.mk b/package/python-snappy/python-snappy.mk
index e80aa861df..5d34b6d493 100644
--- a/package/python-snappy/python-snappy.mk
+++ b/package/python-snappy/python-snappy.mk
@@ -4,11 +4,12 @@
#
################################################################################
-PYTHON_SNAPPY_VERSION = 0.6.1
-PYTHON_SNAPPY_SITE = https://files.pythonhosted.org/packages/98/7a/44a24bad98335b2c72e4cadcdecf79f50197d1bab9f22f863a274f104b96
+PYTHON_SNAPPY_VERSION = 0.7.2
+PYTHON_SNAPPY_SOURCE = python_snappy-$(PYTHON_SNAPPY_VERSION).tar.gz
+PYTHON_SNAPPY_SITE = https://files.pythonhosted.org/packages/cb/52/acd87583175fa930e4385f8a6164eb5909acd683c0e62ee01d41de8195a2
PYTHON_SNAPPY_SETUP_TYPE = setuptools
PYTHON_SNAPPY_LICENSE = BSD-3-Clause
PYTHON_SNAPPY_LICENSE_FILES = LICENSE
-PYTHON_SNAPPY_DEPENDENCIES = snappy
+PYTHON_SNAPPY_DEPENDENCIES = host-python-cramjam python-cramjam
$(eval $(python-package))
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v4 3/3] support/testing: add snappy test
2026-07-30 7:59 [Buildroot] [PATCH v4 1/3] package/python-cramjam: new package Flaviu Nistor
2026-07-30 7:59 ` [Buildroot] [PATCH v4 2/3] package/python-snappy: bump version to 0.7.2 Flaviu Nistor
@ 2026-07-30 7:59 ` Flaviu Nistor
1 sibling, 0 replies; 3+ messages in thread
From: Flaviu Nistor @ 2026-07-30 7:59 UTC (permalink / raw)
To: buildroot; +Cc: Flaviu Nistor, James Hilliard, Julien Olivain
Add a simple test case that imports the module and does a simple compress
decompress routine.
Signed-off-by: Flaviu Nistor <flaviu.nistor@gmail.com>
---
DEVELOPERS | 2 ++
.../tests/package/sample_python_snappy.py | 7 ++++
.../tests/package/test_python_snappy.py | 34 +++++++++++++++++++
3 files changed, 43 insertions(+)
create mode 100644 support/testing/tests/package/sample_python_snappy.py
create mode 100644 support/testing/tests/package/test_python_snappy.py
diff --git a/DEVELOPERS b/DEVELOPERS
index dbe05b7806..153b2f4af5 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1140,6 +1140,8 @@ F: package/python-cramjam/
F: package/python-rich/
F: package/python-smmap2/
F: package/python-snappy/
+F: support/testing/tests/package/sample_python_snappy.py
+F: support/testing/tests/package/test_python_snappy.py
N: Flávio Tapajós <flavio.tapajos@newtesc.com.br>
F: configs/asus_tinker-s_rk3288_defconfig
diff --git a/support/testing/tests/package/sample_python_snappy.py b/support/testing/tests/package/sample_python_snappy.py
new file mode 100644
index 0000000000..ff2c07c05a
--- /dev/null
+++ b/support/testing/tests/package/sample_python_snappy.py
@@ -0,0 +1,7 @@
+import snappy
+
+payload = b"Buildroot python-snappy runtime test\n"
+compressed = snappy.compress(payload)
+decompressed = snappy.uncompress(compressed)
+
+assert decompressed == payload
diff --git a/support/testing/tests/package/test_python_snappy.py b/support/testing/tests/package/test_python_snappy.py
new file mode 100644
index 0000000000..8c0092bd23
--- /dev/null
+++ b/support/testing/tests/package/test_python_snappy.py
@@ -0,0 +1,34 @@
+import os
+
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy3Snappy(TestPythonPackageBase):
+ __test__ = True
+ config = """
+ BR2_aarch64=y
+ BR2_TOOLCHAIN_EXTERNAL=y
+ BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
+ BR2_LINUX_KERNEL=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+ BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.135"
+ BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
+ BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config"
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_SNAPPY=y
+ BR2_TARGET_ROOTFS_CPIO=y
+ # BR2_TARGET_ROOTFS_TAR is not set
+ """
+ interpreter = "python3"
+ sample_scripts = ["tests/package/sample_python_snappy.py"]
+ timeout = 20
+
+ def login(self):
+ cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
+ kern = os.path.join(self.builddir, "images", "Image")
+ self.emulator.boot(arch="aarch64",
+ kernel=kern,
+ kernel_cmdline=["console=ttyAMA0"],
+ options=["-M", "virt", "-cpu", "cortex-a57", "-m", "256M",
+ "-initrd", cpio_file])
+ self.emulator.login()
--
2.34.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-07-30 7:59 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-30 7:59 [Buildroot] [PATCH v4 1/3] package/python-cramjam: new package Flaviu Nistor
2026-07-30 7:59 ` [Buildroot] [PATCH v4 2/3] package/python-snappy: bump version to 0.7.2 Flaviu Nistor
2026-07-30 7:59 ` [Buildroot] [PATCH v4 3/3] support/testing: add snappy test Flaviu Nistor
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox