mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-26 07:37:14 +00:00
python-jsonschema: add PACKAGECONFIG nongpl option
This is the backport of a patch upstream - 10f8a3e Add format validators as separate modules This will add a PACKAGECONFIG = "nongpl" option to include only dependencies not licensed under the GPL license. Signed-off-by: Nicola Lunghi <nick83ola@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
@@ -5,6 +5,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7a60a81c146ec25599a3e1dabb8610a8 \
|
|||||||
file://json/LICENSE;md5=9d4de43111d33570c8fe49b4cb0e01af"
|
file://json/LICENSE;md5=9d4de43111d33570c8fe49b4cb0e01af"
|
||||||
DEPENDS += "${PYTHON_PN}-vcversioner-native ${PYTHON_PN}-setuptools-scm-native"
|
DEPENDS += "${PYTHON_PN}-vcversioner-native ${PYTHON_PN}-setuptools-scm-native"
|
||||||
|
|
||||||
|
FILESEXTRAPATHS_prepend := "${THISDIR}/python-jsonschema:"
|
||||||
|
|
||||||
|
SRC_URI_append = " file://0001-setup.cfg-add-non-GPL-format-option.patch"
|
||||||
|
|
||||||
SRC_URI[md5sum] = "a802ab85600074a726ef6acc4e6a8148"
|
SRC_URI[md5sum] = "a802ab85600074a726ef6acc4e6a8148"
|
||||||
SRC_URI[sha256sum] = "2fa0684276b6333ff3c0b1b27081f4b2305f0a36cf702a23db50edb141893c3f"
|
SRC_URI[sha256sum] = "2fa0684276b6333ff3c0b1b27081f4b2305f0a36cf702a23db50edb141893c3f"
|
||||||
|
|
||||||
@@ -16,6 +20,13 @@ PACKAGECONFIG[format] = ",,,\
|
|||||||
${PYTHON_PN}-rfc3987 \
|
${PYTHON_PN}-rfc3987 \
|
||||||
${PYTHON_PN}-strict-rfc3339 \
|
${PYTHON_PN}-strict-rfc3339 \
|
||||||
"
|
"
|
||||||
|
PACKAGECONFIG[nongpl] = ",,,\
|
||||||
|
${PYTHON_PN}-idna \
|
||||||
|
${PYTHON_PN}-jsonpointer \
|
||||||
|
${PYTHON_PN}-webcolors \
|
||||||
|
${PYTHON_PN}-rfc3986-validator \
|
||||||
|
${PYTHON_PN}-rfc3339-validator \
|
||||||
|
"
|
||||||
|
|
||||||
RDEPENDS_${PN} += " \
|
RDEPENDS_${PN} += " \
|
||||||
${PYTHON_PN}-attrs \
|
${PYTHON_PN}-attrs \
|
||||||
|
|||||||
+96
@@ -0,0 +1,96 @@
|
|||||||
|
From 8df0332475991884b8e1801d31f9c3e06d06bf9f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nicola Lunghi <nick83ola@gmail.com>
|
||||||
|
Date: Thu, 14 Nov 2019 18:58:56 +0000
|
||||||
|
Subject: [PATCH] setup.cfg: add non GPL format option
|
||||||
|
|
||||||
|
This is a rewrite of the following upstream commits:
|
||||||
|
|
||||||
|
- 10f8a3e Add format validators as separate modules
|
||||||
|
- af37707 non GPL format option
|
||||||
|
|
||||||
|
removing all the non necessary bits (tox in particular)
|
||||||
|
|
||||||
|
Original author: Nicolas Aimetti <naimetti@yahoo.com.ar>
|
||||||
|
|
||||||
|
Upstream-status: Backported. [ to be removed for releases > 3.1.1 ]
|
||||||
|
---
|
||||||
|
jsonschema/_format.py | 33 ++++++++++++++++++++++++++++-----
|
||||||
|
setup.cfg | 6 ++++++
|
||||||
|
2 files changed, 34 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/jsonschema/_format.py b/jsonschema/_format.py
|
||||||
|
index aa04090..c967d98 100644
|
||||||
|
--- a/jsonschema/_format.py
|
||||||
|
+++ b/jsonschema/_format.py
|
||||||
|
@@ -248,7 +248,26 @@ else:
|
||||||
|
try:
|
||||||
|
import rfc3987
|
||||||
|
except ImportError:
|
||||||
|
- pass
|
||||||
|
+ try:
|
||||||
|
+ from rfc3986_validator import validate_rfc3986
|
||||||
|
+ except ImportError:
|
||||||
|
+ pass
|
||||||
|
+ else:
|
||||||
|
+ @_checks_drafts(name="uri",)
|
||||||
|
+ def is_uri(instance):
|
||||||
|
+ if not isinstance(instance, str_types):
|
||||||
|
+ return True
|
||||||
|
+ return validate_rfc3986(instance, rule="URI")
|
||||||
|
+
|
||||||
|
+ @_checks_drafts(
|
||||||
|
+ draft6="uri-reference",
|
||||||
|
+ draft7="uri-reference",
|
||||||
|
+ raises=ValueError,
|
||||||
|
+ )
|
||||||
|
+ def is_uri_reference(instance):
|
||||||
|
+ if not isinstance(instance, str_types):
|
||||||
|
+ return True
|
||||||
|
+ return validate_rfc3986(instance, rule="URI_reference")
|
||||||
|
else:
|
||||||
|
@_checks_drafts(draft7="iri", raises=ValueError)
|
||||||
|
def is_iri(instance):
|
||||||
|
@@ -280,15 +299,19 @@ else:
|
||||||
|
|
||||||
|
|
||||||
|
try:
|
||||||
|
- import strict_rfc3339
|
||||||
|
+ from strict_rfc3339 import validate_rfc3339
|
||||||
|
except ImportError:
|
||||||
|
- pass
|
||||||
|
-else:
|
||||||
|
+ try:
|
||||||
|
+ from rfc3339_validator import validate_rfc3339
|
||||||
|
+ except ImportError:
|
||||||
|
+ validate_rfc3339 = None
|
||||||
|
+
|
||||||
|
+if validate_rfc3339:
|
||||||
|
@_checks_drafts(name="date-time")
|
||||||
|
def is_datetime(instance):
|
||||||
|
if not isinstance(instance, str_types):
|
||||||
|
return True
|
||||||
|
- return strict_rfc3339.validate_rfc3339(instance)
|
||||||
|
+ return validate_rfc3339(instance)
|
||||||
|
|
||||||
|
@_checks_drafts(draft7="time")
|
||||||
|
def is_time(instance):
|
||||||
|
diff --git a/setup.cfg b/setup.cfg
|
||||||
|
index 74bc4a7..878221c 100644
|
||||||
|
--- a/setup.cfg
|
||||||
|
+++ b/setup.cfg
|
||||||
|
@@ -40,6 +40,12 @@ format =
|
||||||
|
rfc3987
|
||||||
|
strict-rfc3339
|
||||||
|
webcolors
|
||||||
|
+format_nongpl =
|
||||||
|
+ idna
|
||||||
|
+ jsonpointer>1.13
|
||||||
|
+ webcolors
|
||||||
|
+ rfc3986-validator>0.1.0
|
||||||
|
+ rfc3339-validator
|
||||||
|
|
||||||
|
[options.entry_points]
|
||||||
|
console_scripts =
|
||||||
|
--
|
||||||
|
2.20.1
|
||||||
|
|
||||||
Reference in New Issue
Block a user