Yocto 2.4

Move OpenBMC to Yocto 2.4(rocko)

Tested: Built and verified Witherspoon and Palmetto images
Change-Id: I12057b18610d6fb0e6903c60213690301e9b0c67
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-appdirs.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-appdirs.inc
new file mode 100644
index 0000000..c482672
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-appdirs.inc
@@ -0,0 +1,8 @@
+SUMMARY = "A small Python module for determining appropriate + platform-specific dirs, e.g. a user data dir."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=31625363c45eb0c67c630a2f73e438e4"
+
+SRC_URI[md5sum] = "44c679904082a2133f5566c8a0d3ab42"
+SRC_URI[sha256sum] = "9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-appdirs_1.4.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-appdirs_1.4.3.bb
new file mode 100644
index 0000000..e9ff9b3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-appdirs_1.4.3.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-appdirs.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-asn1crypto.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-asn1crypto.inc
new file mode 100644
index 0000000..41b7342
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-asn1crypto.inc
@@ -0,0 +1,13 @@
+DESCRIPTION = "Python binding to the Networking and Cryptography (NaCl) library"
+HOMEPAGE = "https://github.com/pyca/pynacl"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=52010cd3c7d7bd965b55721ef4d93ec2"
+
+PYPI_PACKAGE = "asn1crypto"
+
+SRC_URI[md5sum] = "97d54665c397b72b165768398dfdd876"
+SRC_URI[sha256sum] = "0874981329cfebb366d6584c3d16e913f2a0eb026c9463efcc4aaf42a9d94d70"
+
+inherit pypi
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-asn1crypto_0.23.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-asn1crypto_0.23.0.bb
new file mode 100644
index 0000000..6af60c2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-asn1crypto_0.23.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-asn1crypto.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid.inc
new file mode 100644
index 0000000..4cb1a3c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid.inc
@@ -0,0 +1,20 @@
+SUMMARY = "An abstract syntax tree for Python with inference support."
+HOMEPAGE = "https://pypi.python.org/pypi/astroid"
+SECTION = "devel/python"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+SRC_URI[md5sum] = "6f65e4ea8290ec032320460905afb828"
+SRC_URI[sha256sum] = "492c2a2044adbf6a84a671b7522e9295ad2f6a7c781b899014308db25312dd35"
+
+inherit pypi
+
+RDEPENDS_${PN}_class-target += "\
+    ${PYTHON_PN}-distutils \
+    ${PYTHON_PN}-lazy-object-proxy \
+    ${PYTHON_PN}-six \
+    ${PYTHON_PN}-subprocess \
+    ${PYTHON_PN}-wrapt \
+    ${PYTHON_PN}-re \
+    ${PYTHON_PN}-setuptools \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid_1.4.9.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid_1.4.9.bb
deleted file mode 100644
index cee1291..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid_1.4.9.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "An abstract syntax tree for Python with inference support."
-HOMEPAGE = "https://pypi.python.org/pypi/astroid"
-SECTION = "devel/python"
-LICENSE = "LGPL"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-
-SRC_URI[md5sum] = "a57438971de05eb801b82eae59c05217"
-SRC_URI[sha256sum] = "a483e7891ce3a06dadfc6cb9095b0938aca58940d43576d72e4502b480c085d7"
-
-inherit setuptools pypi
-
-RDEPENDS_${PN}_class-target += "\
-    ${PYTHON_PN}-distutils \
-    ${PYTHON_PN}-lazy-object-proxy \
-    ${PYTHON_PN}-six \
-    ${PYTHON_PN}-wrapt \
-"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid_1.5.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid_1.5.3.bb
new file mode 100644
index 0000000..f7a0a5e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-astroid_1.5.3.bb
@@ -0,0 +1,7 @@
+inherit setuptools
+require python-astroid.inc
+
+RDEPENDS_${PN}_class-target += "${PYTHON_PN}-enum34 \
+                                ${PYTHON_PN}-importlib \
+                                ${PYTHON_PN}-singledispatch \
+                               "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-aws-iot-device-sdk-python.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-aws-iot-device-sdk-python.inc
new file mode 100644
index 0000000..eaeb020
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-aws-iot-device-sdk-python.inc
@@ -0,0 +1,18 @@
+DESCRIPTION = "SDK for connecting to AWS IoT using Python."
+HOMEPAGE = "https://github.com/aws/aws-iot-device-sdk-python"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9ac49901b833e769c7d6f21e8dbd7b30"
+
+SRC_URI[md5sum] = "e6781f6c42bbc547d508d6fa6720ac8f"
+SRC_URI[sha256sum] = "6b2865d4f518794b96a834fc81b568428daa0ef92037da2e9288b4af5d8dd736"
+
+inherit pypi
+
+PYPI_PACKAGE = "AWSIoTPythonSDK"
+
+RDEPENDS_${PN} += " \
+    ${PYTHON_PN}-pyopenssl \
+    ${PYTHON_PN}-json \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-aws-iot-device-sdk-python_1.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-aws-iot-device-sdk-python_1.2.0.bb
new file mode 100644
index 0000000..12ae978
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-aws-iot-device-sdk-python_1.2.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-aws-iot-device-sdk-python.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel.inc
index 866ce78..5e6ca3d 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel.inc
@@ -3,8 +3,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=e6eeaabc92cfc2d03f53e789324d7292"
 
-SRC_URI[md5sum] = "afa20bc55b0e991833030129ad498f35"
-SRC_URI[sha256sum] = "c535c4403802f6eb38173cd4863e419e2274921a01a8aad8a5b497c131c62875"
+SRC_URI[md5sum] = "60228b3ce93a203357158b909afe8ae1"
+SRC_URI[sha256sum] = "6007daf714d0cd5524bbe436e2d42b3c20e68da66289559341e48d2cd6d25811"
 
 PYPI_PACKAGE = "Babel"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel_2.3.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel_2.5.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel_2.3.4.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-babel_2.5.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-backports-functools-lru-cache_1.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-backports-functools-lru-cache_1.3.bb
deleted file mode 100644
index 211cfde..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-backports-functools-lru-cache_1.3.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "Backport of functools.lru_cache from Python 3.3"
-HOMEPAGE = "https://github.com/jaraco/backports.functools_lru_cache"
-SECTION = "devel/python"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://setup.py;beginline=42;endline=42;md5=98fc3658e5970d26f6b2109808c766be"
-
-PYPI_PACKAGE = "backports.functools_lru_cache"
-
-SRC_URI[md5sum] = "b26a223250bd24ea2e0ad6ce47b19084"
-SRC_URI[sha256sum] = "444a21bcec4ae177da554321f81a78dc879eaa8f6ea9920cb904830585d31e95"
-
-DEPENDS = "python-setuptools-scm-native"
-
-inherit setuptools pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-backports-functools-lru-cache_1.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-backports-functools-lru-cache_1.4.bb
new file mode 100644
index 0000000..961436f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-backports-functools-lru-cache_1.4.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Backport of functools.lru_cache from Python 3.3"
+HOMEPAGE = "https://github.com/jaraco/backports.functools_lru_cache"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=47;endline=47;md5=98fc3658e5970d26f6b2109808c766be"
+
+PYPI_PACKAGE = "backports.functools_lru_cache"
+
+SRC_URI[md5sum] = "b954e7d5e2ca0f0f66ad2ed12ba800e5"
+SRC_URI[sha256sum] = "31f235852f88edc1558d428d890663c49eb4514ffec9f3650e7f3c9e4a12e36f"
+
+DEPENDS += "python-setuptools-scm-native"
+
+inherit setuptools pypi
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-pickle \
+    ${PYTHON_PN}-threading \
+    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt.inc
new file mode 100644
index 0000000..667a3fb
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt.inc
@@ -0,0 +1,15 @@
+DESCRIPTION = "Modern password hashing for your software and your servers."
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8f7bb094c7232b058c7e9f2e431f389c"
+
+DEPENDS += "${PYTHON_PN}-cffi-native"
+
+SRC_URI[md5sum] = "20da8b40790caad99c4086dba533154b"
+SRC_URI[sha256sum] = "6645c8d0ad845308de3eb9be98b6fd22a46ec5412bfc664a423e411cdd8f5488"
+
+inherit pypi
+
+RDEPENDS_${PN}_class-target += "\
+    ${PYTHON_PN}-cffi \
+    ${PYTHON_PN}-six \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt_3.1.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt_3.1.3.bb
index c690f0d..2433354 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt_3.1.3.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bcrypt_3.1.3.bb
@@ -1,15 +1,2 @@
-DESCRIPTION = "Modern password hashing for your software and your servers."
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8f7bb094c7232b058c7e9f2e431f389c"
-
-DEPENDS = "python-cffi-native"
-
-SRC_URI[md5sum] = "20da8b40790caad99c4086dba533154b"
-SRC_URI[sha256sum] = "6645c8d0ad845308de3eb9be98b6fd22a46ec5412bfc664a423e411cdd8f5488"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN}_class-target += "\
-    ${PYTHON_PN}-cffi \
-    ${PYTHON_PN}-six \
-"
+inherit setuptools
+require python-bcrypt.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
new file mode 100644
index 0000000..d60d987
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
@@ -0,0 +1,17 @@
+SUMMARY = "Screen-scraping library"
+HOMEPAGE = " https://www.crummy.com/software/BeautifulSoup/bs4"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING.txt;md5=f2d38d8a40bf73fd4b3d16ca2e5882d1"
+
+SRC_URI[md5sum] = "c17714d0f91a23b708a592cb3c697728"
+SRC_URI[sha256sum] = "808b6ac932dccb0a4126558f7dfdcf41710dd44a4ef497a0bb59a77f9f078e89"
+
+inherit pypi
+
+RDEPENDS_${PN}_class-target = "\
+    ${PYTHON_PN}-core \
+    ${PYTHON_PN}-html5lib \
+    ${PYTHON_PN}-lxml \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.6.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.6.0.bb
new file mode 100644
index 0000000..907285a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.6.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-beautifulsoup4.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray.inc
new file mode 100644
index 0000000..7b6e0d1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray.inc
@@ -0,0 +1,11 @@
+SUMMARY = "A high-level Python efficient arrays of booleans -- C extension"
+HOMEPAGE = "https://github.com/ilanschnell/bitarray"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3ba469353f9f2a244b2075902351e37d"
+
+SRC_URI[md5sum] = "3825184f54f4d93508a28031b4c65d3b"
+SRC_URI[sha256sum] = "7da501356e48a83c61f479393681c1bc4b94e5a34ace7e08cb29e7dd9290ab18"
+
+inherit pypi
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray_0.8.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray_0.8.1.bb
index 145f1fb..f78c7ab 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray_0.8.1.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-bitarray_0.8.1.bb
@@ -1,11 +1,2 @@
-SUMMARY = "A high-level Python efficient arrays of booleans -- C extension"
-HOMEPAGE = "https://github.com/ilanschnell/bitarray"
-LICENSE = "PSF"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=3ba469353f9f2a244b2075902351e37d"
-
-SRC_URI[md5sum] = "3825184f54f4d93508a28031b4c65d3b"
-SRC_URI[sha256sum] = "7da501356e48a83c61f479393681c1bc4b94e5a34ace7e08cb29e7dd9290ab18"
-
-inherit pypi setuptools
-
-BBCLASSEXTEND = "nativesdk"
+inherit setuptools
+require python-bitarray.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can.inc
index 1878f31..1dbc809 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can.inc
@@ -3,7 +3,7 @@
 LICENSE = "LGPLv3"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=38138baa100d7259934590850bc0406e"
 
-SRC_URI[md5sum] = "f653aecf8b9034bbba32cc04ca6a7b6d"
-SRC_URI[sha256sum] = "edabb426e6cd11c2dc7a98980340135aa0eb02143b0d51bf14e3e6178c131cc3"
+SRC_URI[md5sum] = "b2a164887c1c6a2a2490b5afb36e36db"
+SRC_URI[sha256sum] = "b961b6ce75a7f08b586f4d2cae8cdc409881731b851fc405fa21cb16bad00d87"
 
 PYPI_PACKAGE="python-can"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can_1.5.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can_2.0.0b1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can_1.5.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-can_2.0.0b1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cassandra-driver.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cassandra-driver.inc
index 3146bc7..a522e67 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cassandra-driver.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cassandra-driver.inc
@@ -8,8 +8,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
 SRCNAME = "cassandra-driver"
 
-SRC_URI[md5sum] = "7561a89cd8a432a22cf33abef76b64ee"
-SRC_URI[sha256sum] = "10b0c88854f3bddcfd994cb208d780507de62524ef8dcb4f068c084d335b7054"
+SRC_URI[md5sum] = "1659b074e10c613e5ba1cdf92974a57a"
+SRC_URI[sha256sum] = "643bed0fac08ee91630f0f35556bb62c3b4b007c20d4e6e8d349f769ea648150"
 
 DISTUTILS_BUILD_ARGS += " \
     --no-libev \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc
index 1df23cf..e550f7e 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc
@@ -7,7 +7,7 @@
 LICENSE = "ISC"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=f77f61d14ee6feac4228d3ebd26cc1f1"
 
-SRC_URI[md5sum] = "b72521a8badff5e89a8eabea586d79ab"
-SRC_URI[sha256sum] = "81877fb7ac126e9215dfb15bfef7115fdc30e798e0013065158eed0707fd99ce"
+SRC_URI[md5sum] = "48e8370da8b370a16e223ee9c7b6b063"
+SRC_URI[sha256sum] = "40523d2efb60523e113b44602298f0960e900388cf3bb6043f645cf57ea9e3f5"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2017.1.23.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2017.7.27.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2017.1.23.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2017.7.27.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
index 21e41c1..8dcdb63 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
@@ -1,10 +1,11 @@
 SUMMARY = "Foreign Function Interface for Python calling C code"
+HOMEPAGE = "http://cffi.readthedocs.org/"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=5677e2fdbf7cdda61d6dd2b57df547bf"
 DEPENDS += "libffi ${PYTHON_PN}-pycparser"
 
-SRC_URI[md5sum] = "b8fa7ccb87790531db3316ab17aa8244"
-SRC_URI[sha256sum] = "563e0bd53fda03c151573217b3a49b3abad8813de9dd0632e10090f6190fdaf8"
+SRC_URI[md5sum] = "a731487324b501c8295221b629d3f5f3"
+SRC_URI[sha256sum] = "ab87dd91c0c4073758d07334c1e5f712ce8fe48f007b86f8238773963ee700a6"
 
 RDEPENDS_${PN}_class-target = " \
     ${PYTHON_PN}-io \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.9.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.11.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.9.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.11.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet.inc
index 42b64a2..6035488 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet.inc
@@ -4,5 +4,10 @@
 
 inherit pypi
 
-SRC_URI[md5sum] = "96e364abdbde20b5f6dbbe2ad9d54d04"
-SRC_URI[sha256sum] = "4f7832e7c583348a9eddd927ee8514b3bf717c061f57b21dbe7697211454d9bb"
+# setup.py of chardet needs this.
+DEPENDS += "${PYTHON_PN}-pytest-runner-native"
+
+SRC_URI[md5sum] = "7dd1ba7f9c77e32351b0a0cfacf4055c"
+SRC_URI[sha256sum] = "84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet_3.0.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet_3.0.4.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet_3.0.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-chardet_3.0.4.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cmd2_0.7.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cmd2_0.7.7.bb
similarity index 67%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cmd2_0.7.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cmd2_0.7.7.bb
index 5c092a7..fa1ef5f 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cmd2_0.7.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cmd2_0.7.7.bb
@@ -1,10 +1,10 @@
 SUMMARY = "Extra features for standard library's cmd module"
 HOMEPAGE = "http://packages.python.org/cmd2/"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://setup.py;beginline=43;endline=43;md5=0f13c9cfc75288223cf7edd2f3b985a2"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=49;endline=49;md5=0f13c9cfc75288223cf7edd2f3b985a2"
 
-SRC_URI[md5sum] = "ee92ff1b73765d64bf230e94512d0b7a"
-SRC_URI[sha256sum] = "5ab76a1f07dd5fd1cc3c15ba4080265f33b80c7fd748d71bd69a51d60b30f51a"
+SRC_URI[md5sum] = "576b78add6d652b48dcf9362cece88ef"
+SRC_URI[sha256sum] = "b4e2fb9fc656adccc4d01dfd55ab5a9b05890e961950543f692e7885725c2d72"
 
 inherit pypi setuptools
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors.inc
index 122528b..e9e4019 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors.inc
@@ -1,4 +1,5 @@
 SUMMARY = "Test vectors for the cryptography package."
+HOMEPAGE = "https://cryptography.io/"
 SECTION = "devel/python"
 LICENSE = "Apache-2.0 | BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=8c3617db4fb6fae01f1d253ab91511e4"
@@ -7,8 +8,8 @@
     ${PYTHON_PN}-cryptography \
 "
 
-SRC_URI[md5sum] = "c3f2a66d71a0413879d4dd001c56de95"
-SRC_URI[sha256sum] = "4be4eee8a11deee5c2f00e389b49de8ce2642130282d1cd0adffb2f7dbe0acdc"
+SRC_URI[md5sum] = "1db4c09062a3a8e1e2d1f5e3e4d752d7"
+SRC_URI[sha256sum] = "beb831aa73663a224f4d7520483ed02da544533bb03b26ec07a5f9a0dd0941e1"
 
 PYPI_PACKAGE = "cryptography_vectors"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors_1.7.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors_2.0.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors_1.7.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography-vectors_2.0.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc
index 601b12b..87ff16c 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc
@@ -1,4 +1,5 @@
 SUMMARY = "Provides cryptographic recipes and primitives to python developers"
+HOMEPAGE = "https://cryptography.io/"
 LICENSE = "Apache-2.0 | BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=d5ede125ed08d4fd14ec44d334bdb388"
 
@@ -9,8 +10,8 @@
     ${PYTHON_PN}-six \
 "
 
-SRC_URI[md5sum] = "fade66de437392ed1ba6980768626204"
-SRC_URI[sha256sum] = "878cb68b3da3d493ffd68f36db11c29deee623671d3287c3f8d685117ffda9a9"
+SRC_URI[md5sum] = "24cbdab3fda22be31dd3aef2808f5d2f"
+SRC_URI[sha256sum] = "d04bb2425086c3fe86f7bc48915290b13e798497839fbb18ab7f6dffcf98cc3a"
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-cffi \
@@ -54,4 +55,6 @@
     ${libdir}/${PYTHON_PN}2.7/site-packages/${SRCNAME}/hazmat/bindings/.debug \
 "
 
+LDFLAGS_append = " -pthread"
+
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography_1.7.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography_2.0.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography_1.7.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography_2.0.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
index 1ecdcc9..572cb96 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
@@ -7,8 +7,8 @@
 PYPI_PACKAGE = "Cython"
 BBCLASSEXTEND = "native"
 
-SRC_URI[md5sum] = "642c81285e1bb833b14ab3f439964086"
-SRC_URI[sha256sum] = "f141d1f9c27a07b5a93f7dc5339472067e2d7140d1c5a9e20112a5665ca60306"
+SRC_URI[md5sum] = "b93750b34382b025d678bea819b7491b"
+SRC_URI[sha256sum] = "e6840a2ba2704f4ffb40e454c36f73aeb440a4005453ee8d7ff6a00d812ba176"
 
 inherit pypi
 
@@ -17,3 +17,10 @@
     ${PYTHON_PN}-subprocess \
     ${PYTHON_PN}-shell \
 "
+
+do_install_append() {
+	# Make sure we use /usr/bin/env python
+	for PYTHSCRIPT in `grep -rIl '^#!.*python' ${D}`; do
+		sed -i -e '1s|^#!.*|#!/usr/bin/env ${PYTHON_PN}|' $PYTHSCRIPT
+	done
+}
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.25.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.27.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.25.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.27.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-daemon/0001-Workaround-for-issue-2-1.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-daemon/0001-Workaround-for-issue-2-1.patch
new file mode 100644
index 0000000..dbb8407
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-daemon/0001-Workaround-for-issue-2-1.patch
@@ -0,0 +1,31 @@
+From 0981eee9f0198c2045dc0eaa78a005d06fc7bfe4 Mon Sep 17 00:00:00 2001
+From: Carlos Eduardo Moreira dos Santos <cems@cemshost.com.br>
+Date: Tue, 28 Mar 2017 18:23:44 -0300
+Subject: [PATCH] Workaround for issue 2 [1]
+
+[1] https://pagure.io/python-daemon/issue/2
+---
+ version.py | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/version.py b/version.py
+index d58422a377ee..293e2d64c2b7 100644
+--- a/version.py
++++ b/version.py
+@@ -648,9 +648,10 @@ class ChangelogAwareDistribution(distutils.dist.Distribution, object):
+ 
+     @lru_cache(maxsize=128)
+     def get_version_info(self):
+-        changelog_path = get_changelog_path(self)
+-        version_info = generate_version_info_from_changelog(changelog_path)
+-        return version_info
++        return {
++            'version': '2.1.2',
++            'maintainer': 'Ben Finney'
++        }
+ 
+     def get_version(self):
+         version_info = self.get_version_info()
+-- 
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-daemon_2.1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-daemon_2.1.2.bb
new file mode 100644
index 0000000..4c18e2b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-daemon_2.1.2.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "Library to implement a well-behaved Unix daemon process"
+HOMEPAGE = "https://pagure.io/python-daemon/"
+SECTION = "devel/python"
+
+DEPENDS = "python-docutils"
+RDEPENDS_${PN} = "python-docutils \
+                  python-lockfile (>= 0.10) \
+                  python-resource \
+"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit pypi setuptools
+
+SRC_URI[md5sum] = "9c57343d81f2a96c51cffeab982b04d2"
+SRC_URI[sha256sum] = "261c859be5c12ae7d4286dc6951e87e9e1a70a882a8b41fd926efc1ec4214f73"
+
+# Fix for build error in Yocto:
+#     i = p.rfind('/') + 1
+# AttributeError: 'NoneType' object has no attribute 'rfind'
+#S = "${WORKDIR}/python-daemon"
+SRC_URI_append = " \
+                  file://0001-Workaround-for-issue-2-1.patch \
+"
+
+PYPI_PACKAGE = "python-daemon"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
index d0ebc70..ca51059 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
@@ -2,10 +2,10 @@
 DESCRIPTION = "The dateutil module provides powerful extensions to the datetime module available in the Python standard library."
 HOMEPAGE = "https://dateutil.readthedocs.org"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=51430b33c900f45f999c459ee29ca493"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=31f72d4cad3675fb091537b9b2f32de0"
 
-SRC_URI[md5sum] = "6e38f91e8c94c15a79ce22768dfeca87"
-SRC_URI[sha256sum] = "62a2f8df3d66f878373fd0072eacf4ee52194ba302e00082828e0d263b0418d2"
+SRC_URI[md5sum] = "db38f6b4511cefd76014745bb0cc45a4"
+SRC_URI[sha256sum] = "891c38b2a02f5bb1be3e4793866c8df49c7d19baabf9c1bad62547e0b4866aca"
 
 PYPI_PACKAGE = "python-dateutil"
 inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.6.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.6.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.6.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.6.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc
index aeae231..859f972 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc
@@ -9,8 +9,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=893f896413826096ce5270c700a498fd"
 
-SRC_URI[md5sum] = "73644c8f0bd4983d1b6a34b49adec0ae"
-SRC_URI[sha256sum] = "953d6bf082b100f43229cf547f4f97f97e970f5ad645ee7601d55ff87afdfe76"
+SRC_URI[md5sum] = "a0f7f4fe00ae2dde93494d90c192cf8c"
+SRC_URI[sha256sum] = "7cb64d38cb8002971710c8899fbdfb859a23a364b7c99dab19d1f719c2ba16b5"
 
 inherit pypi
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.0.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.1.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.0.11.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.1.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south.inc
new file mode 100644
index 0000000..ce904b6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south.inc
@@ -0,0 +1,17 @@
+SUMMARY = "Migrations for Django"
+DESCRIPTION = "South is an intelligent database migrations library for the Django web framework. It is database-independent and DVCS-friendly, as well as a whole host of other features."
+HOMEPAGE = "http://south.aeracode.org/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=17;endline=18;md5=2155d8ae21e7c23101d5febac696b27e"
+
+SRC_URI[md5sum] = "c76a9758b2011bc3b6c39f881bba2f66"
+SRC_URI[sha256sum] = "d360bd31898f9df59f6faa786551065bba45b35e7ee3c39b381b4fbfef7392f4"
+
+PYPI_PACKAGE = "South"
+inherit pypi
+
+BBCLASSEXTEND = "nativesdk"
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-django \
+    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south_1.0.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south_1.0.2.bb
index 3a27758..357b766 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south_1.0.2.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django-south_1.0.2.bb
@@ -1,17 +1,2 @@
-SUMMARY = "Migrations for Django"
-DESCRIPTION = "South is an intelligent database migrations library for the Django web framework. It is database-independent and DVCS-friendly, as well as a whole host of other features."
-HOMEPAGE = "http://south.aeracode.org/"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=17;endline=18;md5=2155d8ae21e7c23101d5febac696b27e"
-
-SRC_URI[md5sum] = "c76a9758b2011bc3b6c39f881bba2f66"
-SRC_URI[sha256sum] = "d360bd31898f9df59f6faa786551065bba45b35e7ee3c39b381b4fbfef7392f4"
-
-PYPI_PACKAGE = "South"
-inherit pypi setuptools
-
-BBCLASSEXTEND = "nativesdk"
-
-RDEPENDS_${PN} += "\
-    ${PYTHON_PN}-django \
-    "
+require python-django-south.inc
+inherit setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django_1.10.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django.inc
similarity index 74%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django_1.10.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django.inc
index 11242df..58fd70a 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django_1.10.5.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django.inc
@@ -3,11 +3,11 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=f09eb47206614a4954c51db8a94840fa"
 
-SRC_URI[md5sum] = "3fce02f1e6461fec21f1f15ea7489924"
-SRC_URI[sha256sum] = "0db89374b691b9c8b057632a6cd64b18d08db2f4d63b4d4af6024267ab965f8b"
+SRC_URI[md5sum] = "8cef0d42aabacbc414ec4fbbb6056f3c"
+SRC_URI[sha256sum] = "1836878162dfdf865492bacfdff0321e4ee8f1e7d51d93192546000b54982b29"
 
 PYPI_PACKAGE = "Django"
-inherit pypi setuptools
+inherit pypi
 
 FILES_${PN} += "${datadir}/django"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django_1.11.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django_1.11.5.bb
new file mode 100644
index 0000000..ccd7714
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-django_1.11.5.bb
@@ -0,0 +1,2 @@
+require python-django.inc
+inherit setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-docutils_0.14rc2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-docutils_0.14rc2.bb
new file mode 100644
index 0000000..68436a1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-docutils_0.14rc2.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Text processing system for documentation"
+HOMEPAGE = "http://docutils.sourceforge.net"
+SECTION = "devel/python"
+LICENSE = "PSF & BSD-2-Clause & GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING.txt;md5=35a23d42b615470583563132872c97d6"
+
+DEPENDS = "python"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/docutils/docutils-${PV}.tar.gz"
+SRC_URI[md5sum] = "2f4bee6451958252f7bec71f18b05be3"
+SRC_URI[sha256sum] = "3caee0bcb2a49fdf24fcfa70849a60abb7a181aa68b030f7cb7494096181830c"
+
+S = "${WORKDIR}/docutils-${PV}"
+
+inherit distutils
+
+BBCLASSEXTEND = "native"
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-enum34_1.1.6.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-enum34_1.1.6.bb
index 31d2147..d50b5c7 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-enum34_1.1.6.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-enum34_1.1.6.bb
@@ -1,4 +1,5 @@
 SUMMARY = "backport of Python 3.4's enum package"
+HOMEPAGE = "https://bitbucket.org/stoneleaf/enum34"
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://enum/LICENSE;md5=0a97a53a514564c20efd7b2e8976c87e"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-evdev_0.6.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-evdev_0.7.0.bb
similarity index 71%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-evdev_0.6.4.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-evdev_0.7.0.bb
index 1948263..0875da4 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-evdev_0.6.4.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-evdev_0.7.0.bb
@@ -3,8 +3,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=18debddbb3f52c661a129724a883a8e2"
 
-SRC_URI[md5sum] = "40c8c01b337874c64638948a4d7cb404"
-SRC_URI[sha256sum] = "5268744d8493c273614036cf6423fa175952c64fc1d8d265210e48a4437a6af2"
+SRC_URI[md5sum] = "c7e855ae9f97f869a59e75b29f05ce74"
+SRC_URI[sha256sum] = "57edafc469a414f58b51af1bfb9ee2babb9f626dd2df530d71c1176871850aa1"
 
 inherit pypi setuptools
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo.inc
index 6d54837..e11283e 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo.inc
@@ -3,10 +3,10 @@
 HOMEPAGE = "https://github.com/mitsuhiko/flask/"
 SECTION = "devel/python"
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://flask_pymongo/wrappers.py;startline=1;endline=24;md5=dff998d5a8469503612ee7757f3a2052"
+LIC_FILES_CHKSUM = "file://flask_pymongo/wrappers.py;startline=1;endline=24;md5=424c4e1047d28e01b4e4634a069c019d"
 
-SRC_URI[md5sum] = "cbf5fbcd22719d8393e481bcac36be05"
-SRC_URI[sha256sum] = "75862daece1c979a9eab5f9d1e32eb781775842273b629ae5d1cb28e6953df78"
+SRC_URI[md5sum] = "d7a1b717f27154e1f3a355f8ec2467d6"
+SRC_URI[sha256sum] = "2baaa2ba5107d72b3a8bd4b5c0c8881316e35340ad1ae979cc13f1f3c8843b3d"
 
 PYPI_PACKAGE = "Flask-PyMongo"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo_0.4.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo_0.5.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo_0.4.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-pymongo_0.5.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-sqlalchemy_2.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-sqlalchemy_2.3.0.bb
similarity index 66%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-sqlalchemy_2.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-sqlalchemy_2.3.0.bb
index 1190f34..8799767 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-sqlalchemy_2.2.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask-sqlalchemy_2.3.0.bb
@@ -2,8 +2,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=5ed1b8cc741515a835a7f6bf2f62ef4a"
 
-SRC_URI[md5sum] = "a93e6af389afac6666733e369c06c798"
-SRC_URI[sha256sum] = "f0d8241efba723d7b878f73550f5d3c0fbb042416123b52b36640b7491fa208b"
+SRC_URI[md5sum] = "c86449f44e90e996142872ac4b97f7ee"
+SRC_URI[sha256sum] = "da19ff62e31f82825b5467811c76e2a1c60bba927e175fe091a6f739063dd829"
 
 PYPI_PACKAGE = "Flask-SQLAlchemy"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask.inc
index 04935a6..76b5fba 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask.inc
@@ -6,8 +6,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=19866b76b054ab30c270c0eb9d7e43d7"
 
-SRC_URI[md5sum] = "c1d30f51cff4a38f9454b23328a15c5a"
-SRC_URI[sha256sum] = "93e803cdbe326a61ebd5c5d353959397c85f829bec610d59cb635c9f97d7ca8b"
+SRC_URI[md5sum] = "97278dfdafda98ba7902e890b0289177"
+SRC_URI[sha256sum] = "49f44461237b69ecd901cc7ce66feea0319b9158743dd27a2899962ab214dac1"
 
 CLEANBROKEN = "1"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask_0.12.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask_0.12.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask_0.12.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-flask_0.12.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent_1.2.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent.inc
similarity index 64%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent_1.2.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent.inc
index 953f48f..8889cfb 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent_1.2.1.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent.inc
@@ -3,18 +3,25 @@
 a high-level synchronous API on top of the libevent event loop."
 HOMEPAGE = "http://www.gevent.org"
 LICENSE = "MIT & Python-2.0 & BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=2dbb33d00e1fd31c7041460a81ac0bd2 \
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4de99aac27b470c29c6c309e0c279b65 \
                     file://NOTICE;md5=5966cd2c6582656d28ab3c33da3860f8 \
                     file://deps/libev/LICENSE;md5=d6ad416afd040c90698edcdf1cbee347"
-DEPENDS += "python-greenlet libevent"
-RDEPENDS_${PN} += "python-greenlet python-mime python-pprint python-re"
+DEPENDS += "libevent"
+DEPENDS += "${PYTHON_PN}-greenlet"
+RDEPENDS_${PN} = "${PYTHON_PN}-greenlet \
+		  ${PYTHON_PN}-mime \
+		  ${PYTHON_PN}-pprint \
+		  ${PYTHON_PN}-re \
+		 "
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/python-gevent:"
 
 SRC_URI_append = " \
     file://libev-conf.patch;patch=1;pnum=1 \
 "
 
-SRC_URI[md5sum] = "6700a2433c8e0635425e6798760efc81"
-SRC_URI[sha256sum] = "3de300d0e32c31311e426e4d5d73b36777ed99c2bac3f8fbad939eeb2c29fa7c"
+SRC_URI[md5sum] = "7f0baf355384fe5ff2ecf66853422554"
+SRC_URI[sha256sum] = "4791c8ae9c57d6f153354736e1ccab1e2baf6c8d9ae5a77a9ac90f41e2966b2d"
 
 # The python-gevent has no autoreconf ability
 # and the logic for detecting a cross compile is flawed
@@ -24,5 +31,4 @@
 	sed -i -e 's/^cross_compiling=no/cross_compiling=yes/' ${S}/deps/c-ares/configure
 }
 
-inherit pypi setuptools
-
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent_1.2.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent_1.2.2.bb
new file mode 100644
index 0000000..f357c95
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-gevent_1.2.2.bb
@@ -0,0 +1,3 @@
+require python-gevent.inc
+inherit setuptools
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet.inc
new file mode 100644
index 0000000..35820db
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet.inc
@@ -0,0 +1,9 @@
+SUMMARY = "Python lightweight in-process concurrent programming"
+LICENSE = "MIT & PSF"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=03143d7a1a9f5d8a0fee825f24ca9c36 \
+                    file://LICENSE.PSF;md5=c106931d9429eda0492617f037b8f69a"
+
+SRC_URI[md5sum] = "e8637647d58a26c4a1f51ca393e53c00"
+SRC_URI[sha256sum] = "e4c99c6010a5d153d481fdaf63b8a0782825c0721506d880403a3b9b82ae347e"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet_0.4.12.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet_0.4.12.bb
index 4fc2c1d..c14976e 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet_0.4.12.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-greenlet_0.4.12.bb
@@ -1,10 +1,2 @@
-SUMMARY = "Python lightweight in-process concurrent programming"
-LICENSE = "MIT & PSF"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=03143d7a1a9f5d8a0fee825f24ca9c36 \
-                    file://LICENSE.PSF;md5=c106931d9429eda0492617f037b8f69a"
-
-SRC_URI[md5sum] = "e8637647d58a26c4a1f51ca393e53c00"
-SRC_URI[sha256sum] = "e4c99c6010a5d153d481fdaf63b8a0782825c0721506d880403a3b9b82ae347e"
-
-inherit pypi distutils
-
+inherit distutils
+require python-greenlet.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio-tools_1.6.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio-tools_1.6.3.bb
new file mode 100644
index 0000000..0fb136b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio-tools_1.6.3.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Google gRPC tools"
+HOMEPAGE = "http://www.grpc.io/"
+SECTION = "devel/python"
+
+DEPENDS = "python-grpcio"
+RDEPENDS_${PN} = "python-grpcio"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
+
+inherit pypi setuptools
+
+SRC_URI[md5sum] = "835f19142e26cb7ad68cec3a083ecda2"
+SRC_URI[sha256sum] = "57b3110ced50a18f1b2bf7da58ed011f57278b48084ed8013c67a34d42a5ca37"
+
+# For usage in other recipies when compiling protobuf files (e.g. by grpcio-tools)
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch
new file mode 100644
index 0000000..3abbc6d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch
@@ -0,0 +1,36 @@
+From b02be74a2eff8abc612ef84f30e0fbce6a7f65f5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 4 Aug 2017 09:04:07 -0700
+Subject: [PATCH] setup.py: Do not mix C and C++ compiler options
+
+EXTRA_ENV_COMPILE_ARGS is used both with CC and CXX
+so using -std=c++11 or -std=gnu99 together will cause
+build time errors espcially with clang
+
+error: invalid argument '-std=gnu99' not allowed with 'C++'
+
+gcc7 ( defaults are -std=gnu11 and -std=gnu++14 )
+ as well clang default to these standards mode or newer
+anyway
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index cb85273..f79878d 100644
+--- a/setup.py
++++ b/setup.py
+@@ -116,7 +116,7 @@ if EXTRA_ENV_COMPILE_ARGS is None:
+   elif 'win32' in sys.platform:
+     EXTRA_ENV_COMPILE_ARGS += ' -D_PYTHON_MSVC'
+   elif "linux" in sys.platform:
+-    EXTRA_ENV_COMPILE_ARGS += ' -std=c++11 -std=gnu99 -fvisibility=hidden -fno-wrapv -fno-exceptions'
++    EXTRA_ENV_COMPILE_ARGS += ' -fvisibility=hidden -fno-wrapv -fno-exceptions'
+   elif "darwin" in sys.platform:
+     EXTRA_ENV_COMPILE_ARGS += ' -fvisibility=hidden -fno-wrapv'
+ 
+-- 
+2.13.4
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio_1.6.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio_1.6.0.bb
new file mode 100644
index 0000000..7155f42
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio_1.6.0.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "Google gRPC"
+HOMEPAGE = "http://www.grpc.io/"
+SECTION = "devel/python"
+
+DEPENDS = "python-protobuf"
+
+SRC_URI += "file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch \
+           "
+RDEPENDS_${PN} = "python-enum34 \
+                  python-futures \
+                  python-protobuf \
+                  python-setuptools \
+                  python-six \
+"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
+
+inherit pypi setuptools
+
+SRC_URI[md5sum] = "c91b8c105ff4163b41790f3b63db92e1"
+SRC_URI[sha256sum] = "6cd793d515ec53587a8968f2a53647f1449763ad06be0d287e3c1e47418e1e50"
+
+# For usage in other recipes when compiling protobuf files (e.g. by grpcio-tools)
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib.inc
new file mode 100644
index 0000000..9c59e0d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib.inc
@@ -0,0 +1,14 @@
+SUMMARY = "HTML parser based on the WHATWG HTML specifcation"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1ba5ada9e6fead1fdc32f43c9f10ba7c"
+
+SRC_URI[md5sum] = "8578e4e3a341436cb9743a9e4a299239"
+SRC_URI[sha256sum] = "ee747c0ffd3028d2722061936b5c65ee4fe13c8e4613519b4447123fc4546298"
+
+inherit pypi
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-six \
+    ${PYTHON_PN}-webencodings \
+    ${PYTHON_PN}-xml \
+    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib_0.999999999.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib_0.999999999.bb
index d0f7b56..f5941a2 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib_0.999999999.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-html5lib_0.999999999.bb
@@ -1,14 +1,2 @@
-SUMMARY = "HTML parser based on the WHATWG HTML specifcation"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=1ba5ada9e6fead1fdc32f43c9f10ba7c"
-
-SRC_URI[md5sum] = "8578e4e3a341436cb9743a9e4a299239"
-SRC_URI[sha256sum] = "ee747c0ffd3028d2722061936b5c65ee4fe13c8e4613519b4447123fc4546298"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += "\
-    ${PYTHON_PN}-six \
-    ${PYTHON_PN}-webencodings \
-    ${PYTHON_PN}-xml \
-    "
+inherit setuptools
+require python-html5lib.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna.inc
index d099c0f..b1d0d18 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna.inc
@@ -3,8 +3,8 @@
 LICENSE = "BSD-3-Clause & Python-2.0 & Unicode"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=c9ba5acd829579492fd5eb306c7a0565"
 
-SRC_URI[md5sum] = "fc1d992bef73e8824db411bb5d21f012"
-SRC_URI[sha256sum] = "3cb5ce08046c4e3a560fc02f138d0ac63e00f8ce5901a56b32ec8b7994082aab"
+SRC_URI[md5sum] = "c706e2790b016bd0ed4edd2d4ba4d147"
+SRC_URI[sha256sum] = "2c6a5de3089009e3da7c5dde64a141dbc8551d5b7f6cf4ed7c2568d0cc520a8f"
 
 RDEPENDS_${PN}_class-target = "\
     ${PYTHON_PN}-codecs \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna_2.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna_2.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna_2.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-idna_2.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601.inc
index dd4b83c..45da75f 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601.inc
@@ -1,8 +1,9 @@
 SUMMARY = "Simple module to parse ISO 8601 dates"
+HOMEPAGE = "http://pyiso8601.readthedocs.org/"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b05625f2336fa024e8d57e65c6595844"
 
-SRC_URI[md5sum] = "b06d11cd14a64096f907086044f0fe38"
-SRC_URI[sha256sum] = "e8fb52f78880ae063336c94eb5b87b181e6a0cc33a6c008511bac9a6e980ef30"
+SRC_URI[md5sum] = "4de940f691c5ea759fb254384c8ddcf6"
+SRC_URI[sha256sum] = "49c4b20e1f38aa5cf109ddcd39647ac419f928512c869dc01d5c7098eddede82"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601_0.1.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601_0.1.12.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601_0.1.11.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-iso8601_0.1.12.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort.inc
new file mode 100644
index 0000000..9884c44
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort.inc
@@ -0,0 +1,10 @@
+SUMMARY = "A Python utility / library to sort Python imports."
+HOMEPAGE = "https://pypi.python.org/pypi/isort"
+LICENSE = "MIT"
+SECTION = "devel/python"
+LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148f94f483f3e1489"
+
+SRC_URI[md5sum] = "34915a2ce60e6fe3dbcbf5982deef9b4"
+SRC_URI[sha256sum] = "79f46172d3a4e2e53e7016e663cc7a8b538bec525c36675fcfd2767df30b3983"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort_4.2.15.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort_4.2.15.bb
new file mode 100644
index 0000000..fa46d89
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort_4.2.15.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-isort.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort_4.2.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort_4.2.5.bb
deleted file mode 100644
index e365dc6..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-isort_4.2.5.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-SUMMARY = "A Python utility / library to sort Python imports."
-HOMEPAGE = "https://pypi.python.org/pypi/isort"
-LICENSE = "MIT"
-SECTION = "devel/python"
-LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148f94f483f3e1489"
-
-SRC_URI[md5sum] = "71489ebd936429d5bda2af7ae662ed78"
-SRC_URI[sha256sum] = "56b20044f43cf6e6783fe95d054e754acca52dd43fbe9277c1bdff835537ea5c"
-
-inherit setuptools pypi
-
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc
index cf8010e..35cbb0b 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc
@@ -4,8 +4,8 @@
 
 PYPI_PACKAGE = "Jinja2"
 
-SRC_URI[md5sum] = "9e55f0db6620dd99a1b366183a94270d"
-SRC_URI[sha256sum] = "702a24d992f856fa8d5a7a36db6128198d0c21e1da34448ca236c42e92384825"
+SRC_URI[md5sum] = "6411537324b4dba0956aaa8109f3c77b"
+SRC_URI[sha256sum] = "ddaa01a212cd6d641401cb01b605f4a4d9f37bfc93043d7f760ec70fb99ff9ff"
 
 RDEPENDS_${PN} += "${PYTHON_PN}-io ${PYTHON_PN}-pickle ${PYTHON_PN}-crypt \
     ${PYTHON_PN}-math ${PYTHON_PN}-netclient ${PYTHON_PN}-re ${PYTHON_PN}-textutils \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.9.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.9.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.9.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.9.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.15.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.16.bb
similarity index 71%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.15.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.16.bb
index f214bf2..bbc61a4 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.15.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.16.bb
@@ -5,8 +5,8 @@
 
 inherit pypi setuptools
 
-SRC_URI[md5sum] = "818d36e05d68ba90ca2b26597bd82975"
-SRC_URI[sha256sum] = "ae23cd08b2f7246f8f2475363501e740c4ef93f08f2a3b7b9bcfac0cc37fceb1"
+SRC_URI[md5sum] = "8ef1ceb00dcf992c9e43611f698f9279"
+SRC_URI[sha256sum] = "f025c28a08ce747429ee746bb21796c3b6417ec82288f8fe6514db7398f2af8a"
 
 RDEPENDS_${PN} += "${PYTHON_PN}-json ${PYTHON_PN}-jsonpointer ${PYTHON_PN}-netclient ${PYTHON_PN}-re ${PYTHON_PN}-stringold"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpointer_1.10.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpointer_1.12.bb
similarity index 65%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpointer_1.10.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpointer_1.12.bb
index 8ec8772..f5c1aa8 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpointer_1.10.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpointer_1.12.bb
@@ -5,7 +5,7 @@
 
 inherit pypi setuptools
 
-SRC_URI[md5sum] = "d68c0c6ad6889e9c94ec0feba719e45e"
-SRC_URI[sha256sum] = "9fa5dcac35eefd53e25d6cd4c310d963c9f0b897641772cd6e5e7b89df7ee0b1"
+SRC_URI[md5sum] = "eaaad79e983d58ecbee5b4a326723777"
+SRC_URI[sha256sum] = "819b6dd4fd0a18ac219e02a0117f24b2d31296b0c475c33862cfa9a1616d62c3"
 
 RDEPENDS_${PN} += "python-re python-json"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc
index 74933f5..db57c69 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-jsonschema.inc
@@ -5,6 +5,8 @@
 SRC_URI[md5sum] = "50c6b69a373a8b55ff1e0ec6e78f13f4"
 SRC_URI[sha256sum] = "6ff5f3180870836cae40f06fa10419f557208175f13ad7bc26caa77beb1f6e02"
 
+DEPENDS += "${PYTHON_PN}-vcversioner-native"
+
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-core \
     ${PYTHON_PN}-io \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy.inc
new file mode 100644
index 0000000..83d2ea3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy.inc
@@ -0,0 +1,10 @@
+SUMMARY = "A fast and thorough lazy object proxy"
+HOMEPAGE = "https://python-lazy-object-proxy.readthedocs.io/"
+LICENSE = "BSD"
+SECTION = "devel/python"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ec680df42d8ad56427a83308817658cc"
+
+SRC_URI[md5sum] = "e128152b76eb5b9ba759504936139fd0"
+SRC_URI[sha256sum] = "eb91be369f945f10d3a49f5f9be8b3d0b93a4c2be8f8a5b83b0571b8123e0a7a"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy_1.2.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy_1.2.2.bb
deleted file mode 100644
index ded9cfa..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy_1.2.2.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-SUMMARY = "A fast and thorough lazy object proxy"
-HOMEPAGE = "https://python-lazy-object-proxy.readthedocs.io/"
-LICENSE = "BSD"
-SECTION = "devel/python"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=96b1673d10167cb31b78e64f561c3286"
-
-SRC_URI[md5sum] = "841b5592bc12c6ef7e48ed1d7a5f9066"
-SRC_URI[sha256sum] = "ddd4cf1c74279c349cb7b9c54a2efa5105854f57de5f2d35829ee93631564268"
-
-inherit setuptools pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy_1.3.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy_1.3.1.bb
new file mode 100644
index 0000000..df4d60b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lazy-object-proxy_1.3.1.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-lazy-object-proxy.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ldap_2.4.32.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ldap_2.4.32.bb
deleted file mode 100644
index f25ad1e..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ldap_2.4.32.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# Copyright (C) 2012 Wind River Systems, Inc.
-#
-SUMMARY = "Provides a wrapper in Python to LDAP"
-DESCRIPTION = "This module provides access to the LDAP \
-(Lightweight Directory Access Protocol) through Python operations \
-instead of C API. The module mainly acts as a wrapper for the \
-OpenLDAP 2.x libraries. Errors will appear as exceptions."
-
-LICENSE = "PSF"
-HOMEPAGE = "http://www.python-ldap.org/"
-DEPENDS = "python openldap cyrus-sasl"
-
-PYPI_PACKAGE = "python-ldap"
-inherit pypi setuptools
-
-LIC_FILES_CHKSUM = "file://LICENCE;md5=a41c82edffa04912007cae1d20cac555"
-SRC_URI[md5sum] = "7c46c8a04acc227a778c7900c87cdfc7"
-SRC_URI[sha256sum] = "5810f1b5a9ae9255df99fb9c2dcab7352fed325687efda56c0faae1a82c5e3cb"
-
-do_configure_prepend() {
-    sed -i -e 's:^library_dirs =.*::' setup.cfg
-    sed -i -e 's:^include_dirs =.*:include_dirs = =/usr/include/sasl/:' setup.cfg
-}
-
-RDEPENDS_${PN} = " \
-    ${PYTHON_PN}-pprint \
-    ${PYTHON_PN}-threading \
-"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lockfile_0.12.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lockfile_0.12.2.bb
new file mode 100644
index 0000000..cd15760
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lockfile_0.12.2.bb
@@ -0,0 +1,13 @@
+DESCRIPTION = "Platform-independent file locking module"
+HOMEPAGE = "http://launchpad.net/pylockfile"
+SECTION = "devel/python"
+
+RDEPENDS_${PN} = "python-threading"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+inherit pypi setuptools
+
+SRC_URI[md5sum] = "a6a1a82957a23afdf44cfdd039b65ff9"
+SRC_URI[sha256sum] = "6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
index d5e6ae4..7c0a7d7 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
@@ -7,7 +7,7 @@
 HOMEPAGE = "http://codespeak.net/lxml"
 SECTION = "devel/python"
 LICENSE = "BSD & GPLv2 & MIT & PSF"
-LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=f9f1dc24f720c143c2240df41fe5073b \
+LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=e4c045ebad958ead4b48008f70838403 \
                     file://doc/licenses/elementtree.txt;md5=eb34d036a6e3d56314ee49a6852ac891 \
                     file://doc/licenses/BSD.txt;md5=700a1fc17f4797d4f2d34970c8ee694b \
                     file://doc/licenses/GPL.txt;md5=94d55d512a9ba36caa9b7df079bae19f \
@@ -18,8 +18,8 @@
 
 DEPENDS += "libxml2 libxslt"
 
-SRC_URI[md5sum] = "075692ce442e69bbd604d44e21c02753"
-SRC_URI[sha256sum] = "aa502d78a51ee7d127b4824ff96500f0181d3c7826e6ee7b800d068be79361c7"
+SRC_URI[md5sum] = "247580bd5d942872bd972ad0086e5cbf"
+SRC_URI[sha256sum] = "be3aaeb5f468a49f523f16736ccff7d82af2b4b303292ba3d052b5b28f3fbe47"
 
 DISTUTILS_BUILD_ARGS += " \
                      --with-xslt-config='pkg-config libxslt' \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml/0001-lxml.etree-Add-empty-variadic-argument.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml/0001-lxml.etree-Add-empty-variadic-argument.patch
deleted file mode 100644
index efaecd6..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml/0001-lxml.etree-Add-empty-variadic-argument.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From f8d2c3394767025b3b27b71248b3ecb50480cde7 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Apr 2017 17:10:45 -0700
-Subject: [PATCH] lxml.etree: Add empty variadic argument
-
-format checker says that argument 4 is a printf formatted argument
-but there is no more arguments to follow
-
-Fixes libxslt format warnings
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/lxml/lxml.etree.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/lxml/lxml.etree.c b/src/lxml/lxml.etree.c
-index d482091..faab06c 100644
---- a/src/lxml/lxml.etree.c
-+++ b/src/lxml/lxml.etree.c
-@@ -186086,7 +186086,7 @@ static void __pyx_f_4lxml_5etree__callExtensionElement(xsltTransformContext *__p
-  *         except:
-  */
-             __pyx_t_26 = __Pyx_PyObject_AsString(__pyx_v_message); if (unlikely((!__pyx_t_26) && PyErr_Occurred())) __PYX_ERR(19, 228, __pyx_L18_except_error)
--            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26);
-+            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26, "");
- 
-             /* "src/lxml/xsltext.pxi":229
-  *                 c_inst_node.name, _cstr(e))
-@@ -186136,7 +186136,7 @@ static void __pyx_f_4lxml_5etree__callExtensionElement(xsltTransformContext *__p
-  *     except:
-  */
-             __pyx_t_26 = __Pyx_PyObject_AsString(__pyx_v_message); if (unlikely((!__pyx_t_26) && PyErr_Occurred())) __PYX_ERR(19, 234, __pyx_L18_except_error)
--            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26);
-+            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26, "");
- 
-             /* "src/lxml/xsltext.pxi":235
-  *                 "Error executing extension element '%s'", c_inst_node.name)
--- 
-2.12.2
-
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_3.7.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_3.7.3.bb
deleted file mode 100644
index 5c93a3f..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_3.7.3.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-inherit setuptools
-require python-lxml.inc
-
-SRC_URI = "${PYPI_SRC_URI} \
-           file://0001-lxml.etree-Add-empty-variadic-argument.patch \
-           "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.1.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.1.0.bb
new file mode 100644
index 0000000..81ccb12
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.1.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-lxml.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto/cross-compile-platform.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto/cross-compile-platform.patch
new file mode 100644
index 0000000..c6654e5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto/cross-compile-platform.patch
@@ -0,0 +1,30 @@
+Do not compute platform, this does not work in cross compile environment
+since it pokes at the system for getting architecture values
+
+Upstream-Status: Inappropriate
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: M2Crypto-0.26.0/setup.py
+===================================================================
+--- M2Crypto-0.26.0.orig/setup.py
++++ M2Crypto-0.26.0/setup.py
+@@ -141,19 +141,6 @@ class _M2CryptoBuildExt(build_ext.build_
+                 self.include_dirs.append(
+                     os.path.join(self.openssl, 'include', 'openssl'))
+ 
+-            # For RedHat-based distros, the '-D__{arch}__' option for
+-            # Swig needs to be normalized, particularly on i386.
+-            mach = platform.machine().lower()
+-            if mach in ('i386', 'i486', 'i586', 'i686'):
+-                arch = '__i386__'
+-            elif mach in ('ppc64', 'powerpc64'):
+-                arch = '__powerpc64__'
+-            elif mach in ('ppc', 'powerpc'):
+-                arch = '__powerpc__'
+-            else:
+-                arch = '__%s__' % mach
+-            self.swig_opts.append('-D%s' % arch)
+-
+         self.swig_opts.extend(['-I%s' % i for i in self.include_dirs])
+         self.swig_opts.append('-includeall')
+         self.swig_opts.append('-modern')
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto/m2crypto-0.26.4-gcc_macros.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto/m2crypto-0.26.4-gcc_macros.patch
new file mode 100644
index 0000000..2d738cc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto/m2crypto-0.26.4-gcc_macros.patch
@@ -0,0 +1,24 @@
+Imported from Fedora
+
+--- M2Crypto/SWIG/_m2crypto.i	2017-09-26 11:26:33.000000000 +0200
++++ M2Crypto-0.26.4/SWIG/_m2crypto.i	2017-09-26 21:04:14.080330741 +0200
+@@ -7,6 +7,7 @@
+  * Copyright (c) 2009-2010 Heikki Toivonen. All rights reserved.
+  *
+  */
++%import "gcc_macros.h"
+ 
+ %module(threads=1) m2crypto
+ /* We really don't need threadblock (PyGILState_Ensure() etc.) anywhere.
+@@ -15,11 +16,6 @@
+ %nothreadblock;
+ %nothreadallow;
+ 
+-#if SWIG_VERSION >= 0x030000
+-#define __WCHAR_MAX__ __WCHAR_MAX
+-#define __WCHAR_MIN__ __WCHAR_MIN
+-#endif
+-
+ %{
+ #if __GNUC__ < 5
+ #pragma GCC diagnostic ignored "-Wunused-label"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto_0.25.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto_0.26.4.bb
similarity index 62%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto_0.25.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto_0.26.4.bb
index 72523bd..272c76c 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto_0.25.1.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-m2crypto_0.26.4.bb
@@ -1,13 +1,15 @@
 SUMMARY = "A Python crypto and SSL toolkit"
-HOMEPAGE = "http://chandlerproject.org/bin/view/Projects/MeTooCrypto"
+HOMEPAGE = "https://gitlab.com/m2crypto/m2crypto"
 
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=95295693f047bb8f76928251a6154a60"
+LIC_FILES_CHKSUM = "file://LICENCE;md5=b0e1f0b7d0ce8a62c18b1287b991800e"
 
-SRC_URI[md5sum] = "040234289fbef5bed4029f0f7d1dae35"
-SRC_URI[sha256sum] = "ac303a1881307a51c85ee8b1d87844d9866ee823b4fdbc52f7e79187c2d9acef"
-
-SRC_URI += "file://0001-setup.py-link-in-sysroot-not-in-host-directories.patch "
+SRC_URI += "file://0001-setup.py-link-in-sysroot-not-in-host-directories.patch \
+            file://cross-compile-platform.patch \
+            file://m2crypto-0.26.4-gcc_macros.patch \
+           "
+SRC_URI[md5sum] = "5c74c25ba8b45122318a165a3a2059ad"
+SRC_URI[sha256sum] = "5cae7acc0b34821f8c0ddf6665e482893fe1f198ad6379e61ffa9d8e65f5c199"
 
 PYPI_PACKAGE = "M2Crypto"
 inherit pypi setuptools siteinfo
@@ -18,16 +20,16 @@
 DISTUTILS_BUILD_ARGS += "build_ext --openssl=${STAGING_DIR_HOST} -I${STAGING_INCDIR}"
 DISTUTILS_INSTALL_ARGS += "build_ext --openssl=${STAGING_DIR_HOST}"
 
-inherit setuptools
-
-SWIG_FEATURES_x86-64 = "-D__x86_64__"
-SWIG_FEATURES ?= ""
+SWIG_FEATURES_x86 = "-D__i386__"
+SWIG_FEATURES ?= "-D__${HOST_ARCH}__"
 export SWIG_FEATURES
 
 # Get around a problem with swig, but only if the
 # multilib header file exists.
 #
 do_compile_prepend() {
+    ${CPP} -dM - < /dev/null | grep -v __STDC__ | grep -v __REGISTER_PREFIX__ | grep -v __GNUC__ \
+	| sed 's/^\(#define \([^ ]*\) .*\)$/#undef \2\n\1/' > SWIG/gcc_macros.h
     if [ "${SITEINFO_BITS}" = "64" ];then
         bit="64"
     else
@@ -45,5 +47,4 @@
     fi
 }
 
-
 BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc
index de61944..e50f8ce 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc
@@ -3,10 +3,10 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=c6d1adcf45d69359f256c1cea3254127"
 
-SRC_URI[md5sum] = "f5ab3deee4c37cd6a922fb81e730da6e"
-SRC_URI[sha256sum] = "a4ec1aff59b95a14b45eb2e23761a0179e98319da5a7eb76b56ea8cdc7b871c3"
+SRC_URI[md5sum] = "2fcedc9284d50e577b5192e8e3578355"
+SRC_URI[sha256sum] = "a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"
 
 PYPI_PACKAGE = "MarkupSafe"
 inherit pypi
 
-RDEPENDS_${PN} += "${PYTHON_PN}-re"
+RDEPENDS_${PN} += "${PYTHON_PN}-re ${PYTHON_PN}-stringold"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_0.23.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb
similarity index 65%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_0.23.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb
index 396eff1..5c9884b 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_0.23.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb
@@ -1,2 +1,4 @@
 inherit setuptools
 require python-markupsafe.inc
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setup.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setup.patch
deleted file mode 100644
index 9381583..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setup.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-This fixes the dependency checks inside of setup.py since things like
-'import numpy' won't work with bitbake.
-
-diff --git a/setup.py b/setup.py
-index 2f13821..e6d6ed0 100644
---- a/setup.py
-+++ b/setup.py
-@@ -113,12 +113,6 @@ if 1:
-     baseline_images = [chop_package(f) for f in baseline_images]
-     package_data['matplotlib'].extend(baseline_images)
- 
--if not check_for_numpy():
--    sys.exit(1)
--
--if not check_for_freetype():
--    sys.exit(1)
--
- build_ft2font(ext_modules, packages)
- build_ttconv(ext_modules, packages)
- build_contour(ext_modules, packages)
-@@ -129,7 +123,7 @@ build_tri(ext_modules, packages)
- 
- print_raw("")
- print_raw("OPTIONAL BACKEND DEPENDENCIES")
--has_libpng = check_for_libpng()
-+has_libpng = True
- 
- if has_libpng and options['build_agg']:
-     build_agg(ext_modules, packages)
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setupext.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setupext.patch
index 9a13a18..21b9094 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setupext.patch
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib/fix_setupext.patch
@@ -1,40 +1,110 @@
 This fixes the numpy import problem in setupext.py using a hard-coded path.
 
-Index: matplotlib-1.1.0/setupext.py
+Index: matplotlib-2.0.2/setupext.py
 ===================================================================
---- matplotlib-1.1.0.orig/setupext.py
-+++ matplotlib-1.1.0/setupext.py
-@@ -122,8 +122,8 @@ numpy_inc_dirs = []
- # matplotlib build options, which can be altered using setup.cfg
- options = {'display_status': True,
-            'verbose': False,
--           'provide_pytz': 'auto',
--           'provide_dateutil': 'auto',
-+           'provide_pytz': False,
-+           'provide_dateutil': False,
-            'build_agg': True,
-            'build_gtk': 'auto',
-            'build_gtkagg': 'auto',
-@@ -176,10 +176,7 @@ if os.path.exists(setup_cfg):
-     except: pass
+--- matplotlib-2.0.2.orig/setupext.py
++++ matplotlib-2.0.2/setupext.py
+@@ -148,6 +148,7 @@ def has_include_file(include_dirs, filen
+     Returns `True` if `filename` can be found in one of the
+     directories in `include_dirs`.
+     """
++    return True
+     if sys.platform == 'win32':
+         include_dirs += os.environ.get('INCLUDE', '.').split(';')
+     for dir in include_dirs:
+@@ -172,7 +173,7 @@ def get_base_dirs():
+     Returns a list of standard base directories on this platform.
+     """
+     if options['basedirlist']:
+-        return options['basedirlist']
++        return [os.environ['STAGING_LIBDIR']]
  
- # For get_base_flags:
--if options['basedirlist']:
--    basedirlist = options['basedirlist'].split()
--else:
--    basedirlist = basedir[sys.platform]
-+basedirlist = [os.environ['STAGING_LIBDIR']]
- print("basedirlist is: %s" % basedirlist)
+     basedir_map = {
+         'win32': ['win32_static', ],
+@@ -260,14 +261,6 @@ def make_extension(name, files, *args, *
+     `distutils.core.Extension` constructor.
+     """
+     ext = DelayedExtension(name, files, *args, **kwargs)
+-    for dir in get_base_dirs():
+-        include_dir = os.path.join(dir, 'include')
+-        if os.path.exists(include_dir):
+-            ext.include_dirs.append(include_dir)
+-        for lib in ('lib', 'lib64'):
+-            lib_dir = os.path.join(dir, lib)
+-            if os.path.exists(lib_dir):
+-                ext.library_dirs.append(lib_dir)
+     ext.include_dirs.append('.')
  
- if options['display_status']:
-@@ -555,8 +552,8 @@ def check_for_numpy():
+     return ext
+@@ -314,6 +307,7 @@ class PkgConfig(object):
+                     "    matplotlib may not be able to find some of its dependencies")
  
- def add_numpy_flags(module):
-     "Add the modules flags to build extensions which use numpy"
--    import numpy
--    module.include_dirs.append(numpy.get_include())
-+    # Hard-coded path for OE since I know this is where numpy's include dir will be
-+    module.include_dirs.append(os.path.join(os.environ['STAGING_LIBDIR'], 'python2.7/site-packages/numpy/core/include/'))
+     def set_pkgconfig_path(self):
++        return
+         pkgconfig_path = sysconfig.get_config_var('LIBDIR')
+         if pkgconfig_path is None:
+             return
+@@ -875,14 +869,14 @@ class Numpy(SetupPackage):
+             reload(numpy)
  
- def add_png_flags(module):
-     try_pkgconfig(module, 'libpng', 'png')
+         ext = Extension('test', [])
+-        ext.include_dirs.append(numpy.get_include())
++        ext.include_dirs.append(os.path.join(os.environ['STAGING_LIBDIR'], 'python2.7/site-packages/numpy/core/include/'))
+         if not has_include_file(
+                 ext.include_dirs, os.path.join("numpy", "arrayobject.h")):
+             warnings.warn(
+                 "The C headers for numpy could not be found. "
+                 "You may need to install the development package")
+ 
+-        return [numpy.get_include()]
++        return [os.path.join(os.environ['STAGING_LIBDIR'], 'python2.7/site-packages/numpy/core/include/')]
+ 
+     def check(self):
+         min_version = extract_versions()['__version__numpy__']
+Index: matplotlib-2.0.2/setup.py
+===================================================================
+--- matplotlib-2.0.2.orig/setup.py
++++ matplotlib-2.0.2/setup.py
+@@ -66,28 +66,6 @@ mpl_packages = [
+     setupext.Python(),
+     setupext.Platform(),
+     'Required dependencies and extensions',
+-    setupext.Numpy(),
+-    setupext.Six(),
+-    setupext.Dateutil(),
+-    setupext.FuncTools32(),
+-    setupext.Subprocess32(),
+-    setupext.Pytz(),
+-    setupext.Cycler(),
+-    setupext.Tornado(),
+-    setupext.Pyparsing(),
+-    setupext.LibAgg(),
+-    setupext.FreeType(),
+-    setupext.FT2Font(),
+-    setupext.Png(),
+-    setupext.Qhull(),
+-    setupext.Image(),
+-    setupext.TTConv(),
+-    setupext.Path(),
+-    setupext.ContourLegacy(),
+-    setupext.Contour(),
+-    setupext.Delaunay(),
+-    setupext.QhullWrap(),
+-    setupext.Tri(),
+     'Optional subpackages',
+     setupext.SampleData(),
+     setupext.Toolkits(),
+@@ -100,13 +78,8 @@ mpl_packages = [
+     setupext.BackendMacOSX(),
+     setupext.BackendQt5(),
+     setupext.BackendQt4(),
+-    setupext.BackendGtk3Agg(),
+     setupext.BackendGtk3Cairo(),
+-    setupext.BackendGtkAgg(),
+-    setupext.BackendTkAgg(),
+-    setupext.BackendWxAgg(),
+     setupext.BackendGtk(),
+-    setupext.BackendAgg(),
+     setupext.BackendCairo(),
+     setupext.Windowing(),
+     'Optional LaTeX dependencies',
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_1.1.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_1.1.0.bb
deleted file mode 100644
index 133e66d..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_1.1.0.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-DESCRIPTION = "matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats"
-SECTION = "devel/python"
-LICENSE = "PSF"
-LIC_FILES_CHKSUM = "file://README.txt;md5=83c5bf8b16a5f99507f2f47a21ae3b81"
-PR = "r1"
-
-DEPENDS += "python-numpy freetype libpng python-dateutil python-pytz"
-RDEPENDS_${PN} = "python-core python-distutils python-numpy freetype libpng python-dateutil python-pytz"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/matplotlib/matplotlib-${PV}.tar.gz \
-           file://fix_setup.patch \
-           file://fix_setupext.patch \
-"
-
-S = "${WORKDIR}/matplotlib-${PV}"
-
-EXTRA_OECONF = "--disable-docs --with-python-includes=${STAGING_INCDIR}/../"
-
-inherit distutils
-
-do_compile_prepend() {
-    ${STAGING_BINDIR_NATIVE}/python setup.py build ${DISTUTILS_BUILD_ARGS} || \
-    true
-}
-
-# need to export these variables for python-config to work
-export PYTHONPATH
-export STAGING_INCDIR
-export STAGING_LIBDIR
-
-
-SRC_URI[md5sum] = "57a627f30b3b27821f808659889514c2"
-SRC_URI[sha256sum] = "be37e1d86c65ecacae6683f8805e051e9904e5f2e02bf2b7a34262c46a6d06a7"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_2.0.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_2.0.2.bb
new file mode 100644
index 0000000..5b1c3f0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_2.0.2.bb
@@ -0,0 +1,18 @@
+DESCRIPTION = "matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats"
+SECTION = "devel/python"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE/LICENSE;md5=afec61498aa5f0c45936687da9a53d74"
+
+DEPENDS += "python-numpy freetype libpng python-dateutil python-pytz"
+RDEPENDS_${PN} = "python-core python-distutils python-numpy freetype libpng python-dateutil python-pytz"
+
+SRC_URI = "https://github.com/matplotlib/matplotlib/archive/v${PV}.tar.gz \
+           file://fix_setupext.patch \
+"
+SRC_URI[md5sum] = "89717c1ef3c6fdcd6fb1f3b597a4858c"
+SRC_URI[sha256sum] = "aebed23921562792b68b8ca355de5abc176af4424f1987e2fa95f65e5c5e7e89"
+S = "${WORKDIR}/matplotlib-${PV}"
+EXTRA_OECONF = "--disable-docs"
+
+inherit setuptools pkgconfig
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-monotonic_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-monotonic_1.3.bb
similarity index 67%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-monotonic_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-monotonic_1.3.bb
index e5c88b1..ee91d18 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-monotonic_1.2.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-monotonic_1.3.bb
@@ -2,8 +2,8 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=d2794c0df5b907fdace235a619d80314"
 
-SRC_URI[md5sum] = "d14c93aabc3d6af25ef086b032b123cf"
-SRC_URI[sha256sum] = "c0e1ceca563ca6bb30b0fb047ee1002503ae6ad3585fc9c6af37a8f77ec274ba"
+SRC_URI[md5sum] = "34351251d1a67667a25cd7673d2e44bf"
+SRC_URI[sha256sum] = "2b469e2d7dd403f7f7f79227fe5ad551ee1e76f8bb300ae935209884b93c7c1b"
 
 inherit pypi setuptools
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc
new file mode 100644
index 0000000..228ce59
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc
@@ -0,0 +1,9 @@
+SUMMARY = "MessagePack (de)serializer"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=cd9523181d9d4fbf7ffca52eaa2a5751"
+
+SRC_URI[md5sum] = "dcd854fb41ee7584ebbf35e049e6be98"
+SRC_URI[sha256sum] = "1a2b19df0f03519ec7f19f826afb935b202d8979b0856c6fb3dc28955799f886"
+
+PYPI_PACKAGE = "msgpack-python"
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.4.8.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.4.8.bb
index 8a0ad8f..2c2c8f2 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.4.8.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.4.8.bb
@@ -1,9 +1,2 @@
-SUMMARY = "MessagePack (de)serializer"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=cd9523181d9d4fbf7ffca52eaa2a5751"
-
-SRC_URI[md5sum] = "dcd854fb41ee7584ebbf35e049e6be98"
-SRC_URI[sha256sum] = "1a2b19df0f03519ec7f19f826afb935b202d8979b0856c6fb3dc28955799f886"
-
-PYPI_PACKAGE = "msgpack-python"
-inherit pypi setuptools
+require python-msgpack.inc
+inherit setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient.inc
index 3c6253f..133cab1 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient.inc
@@ -3,8 +3,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://MANIFEST.in;md5=ce22c0cd986d2de3f7073cd6b5523ae0"
 
-SRC_URI[md5sum] = "b3a958c0e9aaf4d3f8dd933f46f8c1a9"
-SRC_URI[sha256sum] = "580987ef194334c50389e0d7de885fccf15605c13c6eecaabd8d6c43768eb8ac"
+SRC_URI[md5sum] = "59a2f0a5b3b60e6c520a9cc7be9aff87"
+SRC_URI[sha256sum] = "7bfd8c5cfcbc241a93ca6a4e45f952650f5c7ecf7c49b1dbcf5f4d390240be0b"
 
 PYPI_PACKAGE = "ndg_httpsclient"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient_0.4.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient_0.4.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient_0.4.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ndg-httpsclient_0.4.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr.inc
new file mode 100644
index 0000000..26b0f1e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr.inc
@@ -0,0 +1,8 @@
+SUMMARY = "A network address manipulation library for Python."
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e6345d695ffe3776f68a56fe7962db44"
+
+SRC_URI[md5sum] = "51019ef59c93f3979bcb37d3b8527e07"
+SRC_URI[sha256sum] = "38aeec7cdd035081d3a4c306394b19d677623bf76fa0913f6695127c7753aefd"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr_0.7.19.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr_0.7.19.bb
index 5b03735..5e089a9 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr_0.7.19.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-netaddr_0.7.19.bb
@@ -1,8 +1,2 @@
-SUMMARY = "A network address manipulation library for Python."
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=e6345d695ffe3776f68a56fe7962db44"
-
-SRC_URI[md5sum] = "51019ef59c93f3979bcb37d3b8527e07"
-SRC_URI[sha256sum] = "38aeec7cdd035081d3a4c306394b19d677623bf76fa0913f6695127c7753aefd"
-
-inherit pypi setuptools
+require python-netaddr.inc
+inherit setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-networkx_1.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-networkx_1.11.bb
index 28a7baa..bda8ae3 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-networkx_1.11.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-networkx_1.11.bb
@@ -6,3 +6,5 @@
 SRC_URI[sha256sum] = "0d0e70e10dfb47601cbb3425a00e03e2a2e97477be6f80638fef91d54dd1e4b8"
 
 inherit pypi setuptools
+
+RDEPENDS_${PN} += "python-2to3"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt.inc
index 7ff3fb2..ad1ce6a 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt.inc
@@ -1,11 +1,16 @@
 SUMMARY = "MQTT version 3.1/3.1.1 client library"
-LICENSE = "EPL-1.0"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=eb48c6ee2cb9f5b8b9fe75e6f817bdfc"
+LICENSE = "EPL-1.0 | EDL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=eb48c6ee2cb9f5b8b9fe75e6f817bdfc \
+                    file://epl-v10;md5=8d383c379e91d20ba18a52c3e7d3a979 \
+                    file://edl-v10;md5=c09f121939f063aeb5235972be8c722c \
+"
 SRCNAME = "paho-mqtt"
 
 inherit pypi
-SRC_URI[md5sum] = "241150b3fcb920ddca4d33181f3238b1"
-SRC_URI[sha256sum] = "9100a6aa706ab699d414ec02705a21eb66f436184691d0bf1f2a85a6213c6c1f"
+SRC_URI[md5sum] = "b9338236e2836e8579ef140956189cc4"
+SRC_URI[sha256sum] = "2c9ef5494cfc1e41a9fff6544c5a2cd59ea5d401d9119a06ecf7fad6a2ffeb93"
+
+DEPENDS += "${PYTHON_PN}-pytest-runner-native"
 
 RDEPENDS_${PN} = "\
                ${PYTHON_PN}-math \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt_1.3.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-paho-mqtt_1.3.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pandas.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pandas.inc
new file mode 100644
index 0000000..d1f3707
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pandas.inc
@@ -0,0 +1,23 @@
+SUMMARY  = "pandas library for high-performance data analysis tools"
+DESCRIPTION = "pandas is an open source, BSD-licensed library providing \
+high-performance, easy-to-use data structures and data analysis tools for \
+the Python programming language."
+HOMEPAGE = "http://pandas.pydata.org/"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=66017d3134349017409386be85176145"
+
+SRC_URI[md5sum] = "4df858f28b4bf4fa07d9fbb7f2568173"
+SRC_URI[sha256sum] = "a777e07633d83d546c55706420179551c8e01075b53c497dcf8ae4036766bc66"
+
+PYPI_PACKAGE = "pandas"
+inherit pypi
+
+DEPENDS += " \
+    ${PYTHON_PN}-numpy-native \
+"
+
+RDEPENDS_${PN} += " \
+    ${PYTHON_PN}-numpy \
+    ${PYTHON_PN}-dateutil \
+    ${PYTHON_PN}-pytz \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pandas_0.20.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pandas_0.20.3.bb
new file mode 100644
index 0000000..20973c8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pandas_0.20.3.bb
@@ -0,0 +1,7 @@
+inherit setuptools
+require python-pandas.inc
+
+RDEPENDS_${PN} += " \
+    ${PYTHON_PN}-json \
+    ${PYTHON_PN}-importlib \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse-type_0.3.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse-type_0.3.4.bb
deleted file mode 100644
index 9dc37cf..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse-type_0.3.4.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-SUMMARY = "Simplifies building parse types based on the parse module"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=be38402eb4b6c224e4914fd82e0e1436"
-PYPI_PACKAGE = "parse_type"
-
-SRC_URI[md5sum] = "00ba70bc5ca67624207b0dfced01dc8a"
-SRC_URI[sha256sum] = "3dd0b323bafcb8c25e000ce5589042a1c99cba9c3bec77b9f591e46bc9606147"
-
-RDEPENDS_${PN} += "python-parse"
-
-inherit pypi setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse-type_0.4.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse-type_0.4.2.bb
new file mode 100644
index 0000000..b516c59
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse-type_0.4.2.bb
@@ -0,0 +1,11 @@
+SUMMARY = "Simplifies building parse types based on the parse module"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d07323820cca0f1d192cbbf8a0516f95"
+PYPI_PACKAGE = "parse_type"
+
+SRC_URI[md5sum] = "b5fa59e45965d1b2896023742df2e707"
+SRC_URI[sha256sum] = "f596bdc75d3dd93036fbfe3d04127da9f6df0c26c36e01e76da85adef4336b3c"
+
+RDEPENDS_${PN} += "python-parse"
+
+inherit pypi setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse_1.8.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse_1.8.0.bb
deleted file mode 100644
index 0fd905b..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse_1.8.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-SUMMARY = "Parse strings using a specification based on the Python format() syntax"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://parse.py;md5=083d8ef8f98a3035dbf890a808498fde;startline=1189;endline=1208"
-
-SRC_URI[md5sum] = "6ea7e32cb35810113137f6073fb30639"
-SRC_URI[sha256sum] = "8b4f28bbe7c0f24981669ea92b2ba704ee63b5346027e82be30118bb5788ff10"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += "\
-    ${PYTHON_PN}-datetime \
-    ${PYTHON_PN}-logging \
-    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse_1.8.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse_1.8.2.bb
new file mode 100644
index 0000000..037221a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-parse_1.8.2.bb
@@ -0,0 +1,13 @@
+SUMMARY = "Parse strings using a specification based on the Python format() syntax"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://parse.py;md5=a84b494563bba466a2f02b05f2e6ad4a;startline=1191;endline=1210"
+
+SRC_URI[md5sum] = "42002338551bdfa0f01bbe4e679a17dd"
+SRC_URI[sha256sum] = "8048dde3f5ca07ad7ac7350460952d83b63eaacecdac1b37f45fd74870d849d2"
+
+inherit pypi setuptools
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-datetime \
+    ${PYTHON_PN}-logging \
+    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_2.0.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_3.1.1.bb
similarity index 75%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_2.0.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_3.1.1.bb
index a044a9e..bdff867 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_2.0.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_3.1.1.bb
@@ -4,8 +4,8 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2"
 
-SRC_URI[md5sum] = "dfc1c3788eff06acfaade6f1655fa490"
-SRC_URI[sha256sum] = "0ccd2db529afd070df815b1521f01401d43de03941170f8a800e7531faba265d"
+SRC_URI[md5sum] = "4e82c2e07af544c56a5b71c801525b00"
+SRC_URI[sha256sum] = "05f61c71aaefc02d8e37c0a3eeb9815ff526ea28b3b76324769e6158d7f95be1"
 
 inherit pypi setuptools
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pexpect.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pexpect.inc
new file mode 100644
index 0000000..47d0979
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pexpect.inc
@@ -0,0 +1,25 @@
+SUMMARY = "A Pure Python Expect like Module for Python"
+HOMEPAGE = "http://pexpect.readthedocs.org/"
+SECTION = "devel/python"
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1c7a725251880af8c6a148181665385b"
+
+SRCNAME = "pexpect"
+
+SRC_URI[md5sum] = "3694410001a99dff83f0b500a1ca1c95"
+SRC_URI[sha256sum] = "3d132465a75b57aa818341c6521392a06cc660feb3988d7f1074f39bd23c9a92"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/pexpect"
+
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-core \
+    ${PYTHON_PN}-io \
+    ${PYTHON_PN}-terminal \
+    ${PYTHON_PN}-resource \
+    ${PYTHON_PN}-fcntl \
+    ${PYTHON_PN}-ptyprocess \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pexpect_4.2.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pexpect_4.2.1.bb
new file mode 100644
index 0000000..1c46b47
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pexpect_4.2.1.bb
@@ -0,0 +1,2 @@
+require python-pexpect.inc
+inherit pypi setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pip_9.0.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pip_9.0.1.bb
index 2851761..5ddd8d5 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pip_9.0.1.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pip_9.0.1.bb
@@ -1,4 +1,5 @@
 SUMMARY = "PIP is a tool for installing and managing Python packages"
+HOMEPAGE = "https://pip.pypa.io/"
 LICENSE = "MIT & LGPL-2.1"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=25fba45109565f87de20bae85bc39452"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pretend.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pretend.inc
index 2d21cc4..78b6717 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pretend.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pretend.inc
@@ -1,4 +1,5 @@
 SUMMARY = "A library for stubbing in Python"
+HOMEPAGE = "https://github.com/alex/pretend"
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=411780c0b7fa756753e94affeee5bc99"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress.inc
index 80d0a58..297c0d3 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress.inc
@@ -3,7 +3,12 @@
 LICENSE = "ISC"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=aef5566ac4fede9815eccf124c281317"
 
-SRC_URI[md5sum] = "c1dbf49a41e80408d3874d976ba894cc"
-SRC_URI[sha256sum] = "5b6a50f9ac76820f619d7789b5354881c8c10060a64047e415868d8f503cc2eb"
+SRC_URI[md5sum] = "f65ccfcc2339d522b2dd5801aaa40dc7"
+SRC_URI[sha256sum] = "c88d89ee3bd06716a0b8b5504d9c3bcb3c1c0ab98f96dc7f1dc5f56812a4f60a"
+
+RDEPENDS_${PN}_class-target += " \
+    ${PYTHON_PN}-datetime \
+    ${PYTHON_PN}-math \
+"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress_1.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-progress_1.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit.inc
index 30c2c81..f5ed349 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit.inc
@@ -2,8 +2,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b2cde7da89f0c1f3e49bf968d00d554f"
 
-SRC_URI[md5sum] = "427b496d2c147bd3819bc3a7f6e0d493"
-SRC_URI[sha256sum] = "33d68ca09f76cd73287fde7df5748ffacf26a8238dd61ee81ac50860ea7c6776"
+SRC_URI[md5sum] = "8fe70295006dbc8afedd43e5eba99032"
+SRC_URI[sha256sum] = "858588f1983ca497f1cf4ffde01d978a3ea02b01c8a26a8bbc5cd2e66d816917"
 
 PYPI_PACKAGE = "prompt_toolkit"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit_1.0.13.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit_1.0.15.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit_1.0.13.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-prompt-toolkit_1.0.15.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc
new file mode 100644
index 0000000..2f59ef9
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc
@@ -0,0 +1,16 @@
+DESCRIPTION = "Protocol Buffers"
+HOMEPAGE = "https://developers.google.com/protocol-buffers/"
+SECTION = "devel/python"
+
+RDEPENDS_${PN} = "python-six"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
+
+inherit pypi
+
+SRC_URI[md5sum] = "bfc0c61c156a995e909521697e755780"
+SRC_URI[sha256sum] = "ef02609ef445987976a3a26bff77119c518e0915c96661c3a3b17856d0ef6374"
+
+# For usage in other recipies when compiling protobuf files (e.g. by grpcio-tools)
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.4.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.4.0.bb
new file mode 100644
index 0000000..f04fc48
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.4.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-protobuf.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc
index 6d3ebf8..c9a7f6d 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc
@@ -2,8 +2,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=0f02e99f7f3c9a7fe8ecfc5d44c2be62"
 
-SRC_URI[md5sum] = "c9aa2599dcd9e5b59d71b6660d396062"
-SRC_URI[sha256sum] = "2fc91d068faa5613c093335f0e758673ef8c722ad4bfa4aded64c13ae69089eb"
+SRC_URI[md5sum] = "529244aea5d32fb0c2ea46d80ce54abc"
+SRC_URI[sha256sum] = "12dd9c8abbad15f055e9579130035b38617020ce176f4a498b7870e6321ffa67"
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-shell \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.3.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.2.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.3.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ptyprocess.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ptyprocess.inc
new file mode 100644
index 0000000..43f2d09
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ptyprocess.inc
@@ -0,0 +1,20 @@
+SUMMARY = "Run a subprocess in a pseudo terminal"
+HOMEPAGE = "http://ptyprocess.readthedocs.io/en/latest/"
+SECTION = "devel/python"
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=cfdcd51fa7d5808da4e74346ee394490"
+
+SRCNAME = "ptyprocess"
+
+SRC_URI[md5sum] = "d3b8febae1b8c53b054bd818d0bb8665"
+SRC_URI[sha256sum] = "e64193f0047ad603b71f202332ab5527c5e52aa7c8b609704fc28c0dc20c4365"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/ptyprocess"
+
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-core \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ptyprocess_0.5.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ptyprocess_0.5.2.bb
new file mode 100644
index 0000000..7ca4587
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ptyprocess_0.5.2.bb
@@ -0,0 +1,2 @@
+require python-ptyprocess.inc
+inherit pypi setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc
index 4ac502e..1aef0e7 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc
@@ -1,8 +1,9 @@
 SUMMARY = "Library with cross-python path, ini-parsing, io, code, log facilities"
+HOMEPAGE = "http://py.readthedocs.io/"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=a6bb0320b04a0a503f12f69fea479de9"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b506f3df287708b2f99588b5cc351091"
 
-SRC_URI[md5sum] = "68ee0b5867282595d0b410a7f3c03ab3"
-SRC_URI[sha256sum] = "c4b89fd1ff1162375115608d01f77c38cca1d0f28f37fd718005e19b28be41a7"
+SRC_URI[md5sum] = "d9c3d8f734b0819ff48e355d77bf1730"
+SRC_URI[sha256sum] = "0f2d585d22050e90c7d293b6451c83db097df77871974d90efd5a30dc12fcde3"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py_1.4.32.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py_1.4.34.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py_1.4.32.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-py_1.4.34.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
index 4eb2d9b..dedb191 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
@@ -3,8 +3,8 @@
 LICENSE = "BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=280606d9c18f200e03e0c247ac61475a"
 
-SRC_URI[md5sum] = "79f98135071c8dd5c37b6c923c51be45"
-SRC_URI[sha256sum] = "738c4ebd88a718e700ee35c8d129acce2286542daa80a82823a7073644f706ad"
+SRC_URI[md5sum] = "a2d01c561d4996055641bbbb74eda58f"
+SRC_URI[sha256sum] = "f0380ea97db0ede095a0dd87ce3003d46c197191f924206e43f776fc77e51f09"
 
 RDEPENDS_${PN}_class-target += " \
     ${PYTHON_PN}-codecs \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.2.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.3.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.2.3.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.3.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11.inc
index 6d36d87..e273a8d 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11.inc
@@ -1,8 +1,7 @@
 SUMMARY = "Seamless operability between C++11 and Python"
 HOMEPAGE = "https://github.com/wjakob/pybind11"
 LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=485d9f8aa1ab513bec0de2f55cd69672"
-PR = "r0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=9b27fac7e937323e3de9ca3a7db38e37"
 
-SRC_URI[md5sum] = "c96103168e9abceaa6d46f6074dcaf38"
-SRC_URI[sha256sum] = "1b1a4824aad88b1073fe8dbd21683e1e5228f3ed3b29c2785fbf5dea6bf1063c"
+SRC_URI[md5sum] = "f454d8991f47befe56d4126df861fc96"
+SRC_URI[sha256sum] = "a96a924fae6e2721efbf24f47561284fd1ea0b655619a8621c4423036183b824"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11_2.0.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11_2.2.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11_2.0.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybind11_2.2.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybluez_0.22.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybluez_0.22.bb
new file mode 100644
index 0000000..eab9c54
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pybluez_0.22.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Bluetooth Python extension module"
+HOMEPAGE = "http://karulis.github.io/pybluez/"
+SECTION = "devel/python"
+
+RDEPENDS_${PN} = "bluez5"
+DEPENDS = "bluez5"
+
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8a71d0475d08eee76d8b6d0c6dbec543"
+
+inherit pypi setuptools
+
+SRC_URI = "https://pypi.python.org/packages/c1/98/3149481d508bee174335be6725880f00d297afebe75c15e917af8f6fe169/PyBluez-0.22.zip"
+SRC_URI[md5sum] = "49dab9d5a8f0b798c8125c7f649be3cd"
+SRC_URI[sha256sum] = "4ce006716a54d9d18e8186a3f1c8b12a8e6befecffe8fd5828a291fb694ce49d"
+
+S = "${WORKDIR}/PyBluez-${PV}"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser.inc
index 4913f42..6b05482 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser.inc
@@ -1,9 +1,10 @@
 SUMMARY = "Parser of the C language, written in pure Python"
+HOMEPAGE = "https://github.com/eliben/pycparser"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d0cfca7bbc0610f849707d9e4fd82eac"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=86f1cedb4e6410a88ce8e30b91079169"
 
-SRC_URI[md5sum] = "ca98dcb50bc1276f230118f6af5a40c7"
-SRC_URI[sha256sum] = "0aac31e917c24cb3357f5a4d5566f2cc91a19ca41862f6c3c22dc60a629673b6"
+SRC_URI[md5sum] = "72370da54358202a60130e223d488136"
+SRC_URI[sha256sum] = "99a8ca03e29851d96616ad0404b4aad7d9ee16f25c9f9708a11faf2810f7b226"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser_2.17.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser_2.18.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser_2.17.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pycparser_2.18.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyfirmata.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyfirmata.inc
new file mode 100644
index 0000000..2365379
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyfirmata.inc
@@ -0,0 +1,13 @@
+SUMMARY = "A Python interface for the Firmata protocol"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=84ddcef430b7c44caa22b2ff4b37a3df"
+PYPI_PACKAGE = "pyFirmata"
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-pyserial \
+"
+
+SRC_URI[md5sum] = "ee4c23ca5c35d3091d550a63540811a3"
+SRC_URI[sha256sum] = "b54d49d66a9d93c1ef9c72ca01264414cb2de177baac116c12d5cce0c380160c"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyfirmata_1.0.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyfirmata_1.0.3.bb
new file mode 100644
index 0000000..d77e0f3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyfirmata_1.0.3.bb
@@ -0,0 +1,3 @@
+inherit setuptools
+require python-pyfirmata.inc
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint.inc
new file mode 100644
index 0000000..c55bce6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint.inc
@@ -0,0 +1,32 @@
+SUMMARY="Pylint is a Python source code analyzer"
+HOMEPAGE= "http://www.pylint.org/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
+
+SRC_URI[md5sum] = "98a1ee985a3ebc876a20eb7577dbab68"
+SRC_URI[sha256sum] = "1f65b3815c3bf7524b845711d54c4242e4057dd93826586620239ecdfe591fb1"
+
+inherit pypi
+
+DEPENDS += "${PYTHON_PN}-pytest-runner-native"
+
+RDEPENDS_${PN} += "${PYTHON_PN}-astroid \
+                   ${PYTHON_PN}-isort \
+                   ${PYTHON_PN}-numbers \
+                   ${PYTHON_PN}-shell \
+                   ${PYTHON_PN}-json \
+                   ${PYTHON_PN}-pkgutil \
+                   ${PYTHON_PN}-difflib \
+                   ${PYTHON_PN}-netserver \
+                  "
+
+do_install_append(){
+    rm ${D}${bindir}/pylint
+    cat >> ${D}${bindir}/pylint <<EOF
+#!/usr/bin/env ${PYTHON_PN}
+from pylint import run_pylint
+run_pylint()
+EOF
+    chmod 755 ${D}${bindir}/pylint
+    sed -i -e 's:^#!/usr/bin/python:#!/usr/bin/env\ ${PYTHON_PN}:g' ${D}/${PYTHON_SITEPACKAGES_DIR}/pylint/test/data/ascript
+}
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint_1.6.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint_1.6.5.bb
deleted file mode 100644
index f5b4ad0..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint_1.6.5.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-SUMMARY="Pylint is a Python source code analyzer"
-HOMEPAGE= "http://www.pylint.org/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
-
-SRC_URI[md5sum] = "31da2185bf59142479e4fa16d8a9e347"
-SRC_URI[sha256sum] = "a673984a8dd78e4a8b8cfdee5359a1309d833cf38405008f4a249994a8456719"
-
-RDEPENDS_${PN} += "python-codecs \
-                   python-contextlib \
-                   python-core \
-                   python-distutils \
-                   python-io \
-                   python-lang \
-                   python-multiprocessing \
-                   python-netserver \
-                   python-numbers \
-                   python-pickle \
-                   python-re \
-                   python-shell \
-                   python-six \
-                   python-stringold \
-                   python-subprocess \
-                   python-textutils \
-                   python-unittest \
-                   python-backports-functools-lru-cache \
-                   python-setuptools \
-                   python-astroid \
-                   python-wrapt \
-                   python-isort \
-                   python-lazy-object-proxy \
-                   "
-
-inherit pypi setuptools
-
-do_install_append(){
-    rm ${D}${bindir}/pylint
-    cat >> ${D}${bindir}/pylint <<EOF
-#!/usr/bin/env python
-from pylint import run_pylint
-run_pylint()
-EOF
-    chmod 755 ${D}${bindir}/pylint
-}
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint_1.7.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint_1.7.4.bb
new file mode 100644
index 0000000..7b51d3f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pylint_1.7.4.bb
@@ -0,0 +1,4 @@
+inherit setuptools python-dir
+require python-pylint.inc
+
+RDEPENDS_${PN} += "${PYTHON_PN}-backports-functools-lru-cache"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp.inc
index fe25b50..21ba7bb 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp.inc
@@ -1,9 +1,9 @@
 DESCRIPTION = "Python API for MISP"
 HOMEPAGE = "https://github.com/MISP/PyMISP"
 LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=2e1efdc433498cebd33ec277ad8741e5"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a3639cf5780f71b125d3e9d1dc127c20"
 
-SRC_URI[md5sum] = "5320f41bf96cf22d13af7eb31e1d321f"
-SRC_URI[sha256sum] = "6c7bd97f0ea9c7eb1935902f1bc6fc1ec27eba86056c5b938234a7229891d5a2"
+SRC_URI[md5sum] = "2024babd97ab57ca0360394edc37f2b6"
+SRC_URI[sha256sum] = "7480acada8cba9472a85070c57baad89ae9deed826a7515a4c149ac48920c273"
 
 RDEPENDS_${PN} += " ${PYTHON_PN}-requests ${PYTHON_PN}-json ${PYTHON_PN}-jsonschema"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp_2.4.67.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp_2.4.80.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp_2.4.67.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymisp_2.4.80.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc
index e709a36..7f199b4 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc
@@ -8,12 +8,20 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=2a944942e1496af1886903d274dedb13"
 
-SRC_URI[md5sum] = "aa77f88e51e281c9f328cea701bb6f3e"
-SRC_URI[sha256sum] = "d359349c6c9ff9f482805f89e66e476846317dc7b1eea979d7da9c0857ee2721"
+SRC_URI[md5sum] = "35ae53073a25603591e085b18bc5a0ec"
+SRC_URI[sha256sum] = "e820d93414f3bec1fa456c84afbd4af1b43ff41366321619db74e6bc065d6924"
+
+PACKAGES =+ "${PYTHON_PN}-bson"
+
+FILES_${PYTHON_PN}-bson = "${PYTHON_SITEPACKAGES_DIR}/bson/*"
+
+RDEPENDS_${PYTHON_PN}-bson += " \
+     ${PYTHON_PN}-datetime \
+     ${PYTHON_PN}-netclient \
+     ${PYTHON_PN}-numbers \
+     ${PYTHON_PN}-threading \
+"
 
 RDEPENDS_${PN} += " \
-    ${PYTHON_PN}-datetime \
-    ${PYTHON_PN}-netclient \
-    ${PYTHON_PN}-numbers \
-    ${PYTHON_PN}-threading \
+    ${PYTHON_PN}-bson \
 "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.4.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.5.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.4.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.5.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc
index 579ca60..1bf8324 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc
@@ -1,11 +1,12 @@
 SUMMARY = "Simple Python wrapper around the OpenSSL library"
+HOMEPAGE = "https://pyopenssl.org/"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
 
 DEPENDS += "openssl ${PYTHON_PN}-cryptography"
 
-SRC_URI[md5sum] = "6635503758c65ea6f70d18d1b18e46d5"
-SRC_URI[sha256sum] = "7779a3bbb74e79db234af6a08775568c6769b5821faecf6e2f4143edb227516e"
+SRC_URI[md5sum] = "09dcd307b8d2068f9dd5aaa3a3a88992"
+SRC_URI[sha256sum] = "29630b9064a82e04d8242ea01d7c93d70ec320f5e3ed48e95fcabc6b1d0f6c76"
 
 PYPI_PACKAGE = "pyOpenSSL"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_16.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_17.3.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_16.2.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_17.3.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc
index 033e0db..19f6d55 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc
@@ -17,3 +17,5 @@
     ${PYTHON_PN}-stringold \
     ${PYTHON_PN}-threading \
 "
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2.inc
new file mode 100644
index 0000000..da1d4cd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2.inc
@@ -0,0 +1,26 @@
+SUMMARY = "A pure Python netlink and Linux network configuration library"
+LICENSE = "GPLv2 & Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.GPL.v2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+                    file://LICENSE.Apache.v2;md5=3b83ef96387f14655fc854ddc3c6bd57"
+
+SRC_URI[md5sum] = "733adb362b6603c7269c0b3df3045a55"
+SRC_URI[sha256sum] = "5cdf44656cf623369f0cbf183d9d14a1a50ebdffbd50d4e30ffda62c0a05d7b3"
+
+SRC_URI += "file://import-simplejson-as-json.patch"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/python-pyroute2:"
+
+inherit pypi
+
+RDEPENDS_${PN} += "\
+  ${PYTHON_PN}-distutils \
+  ${PYTHON_PN}-simplejson \
+  ${PYTHON_PN}-multiprocessing \
+  ${PYTHON_PN}-io ${PYTHON_PN}-pprint \
+  ${PYTHON_PN}-pickle \
+  ${PYTHON_PN}-logging \
+  ${PYTHON_PN}-threading \
+  ${PYTHON_PN}-textutils \
+  ${PYTHON_PN}-subprocess \
+  ${PYTHON_PN}-netclient \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2_0.3.22.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2_0.3.22.bb
index 79d3bdd..7b9c8e0 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2_0.3.22.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyroute2_0.3.22.bb
@@ -1,24 +1,2 @@
-SUMMARY = "A pure Python netlink and Linux network configuration library"
-LICENSE = "GPLv2 & Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE.GPL.v2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://LICENSE.Apache.v2;md5=3b83ef96387f14655fc854ddc3c6bd57"
-
-SRC_URI[md5sum] = "733adb362b6603c7269c0b3df3045a55"
-SRC_URI[sha256sum] = "5cdf44656cf623369f0cbf183d9d14a1a50ebdffbd50d4e30ffda62c0a05d7b3"
-
-SRC_URI += "file://import-simplejson-as-json.patch"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += "\
-  python-distutils \
-  python-simplejson \
-  python-multiprocessing \
-  python-io python-pprint \
-  python-pickle \
-  python-logging \
-  python-threading \
-  python-textutils \
-  python-subprocess \
-  python-netclient \
-"
+require python-pyroute2.inc
+inherit setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial.inc
index 2508e76..99c6fc4 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial.inc
@@ -13,8 +13,8 @@
     ${PYTHON_PN}-threading \
 "
 
-RSRC_URI[md5sum] = "6afe4c2e47bcec6eb7051b8c1ce19d52"
-SRC_URI[sha256sum] = "2949cddffc2b05683065a3cd2345114b1a49b08df8cb843d69ba99dc3e19edc2"
+SRC_URI[md5sum] = "ed6183b15519a0ae96675e9c3330c69b"
+SRC_URI[sha256sum] = "6e2d401fdee0eab996cf734e67773a0143b932772ca8b42451440cfed942c627"
 
 inherit pypi
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial_3.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial_3.4.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial_3.3.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyserial_3.4.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks.inc
index 5aec6fc..cf9509a 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks.inc
@@ -3,8 +3,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1d457bcffb9661b45f799d4efee72f16"
 
-SRC_URI[md5sum] = "571f4c23982fa86bf0e7a441f1b6c881"
-SRC_URI[sha256sum] = "02419a225ff5dcfc3c9695ef8fc9b4d8cc99658e650c6d4718d4c8f451e63f41"
+SRC_URI[md5sum] = "07007ec7ed46292dab06013f2e3af365"
+SRC_URI[sha256sum] = "d00329f27efa157db7efe3ca26fcd69033cd61f83822461ee3f8a353b48e33cf"
 
 PYPI_PACKAGE = "PySocks"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks_1.6.6.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks_1.6.7.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks_1.6.6.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pysocks_1.6.7.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc
index 85a8de1..c173a18 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc
@@ -2,9 +2,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=e38b971c2b4c33b978d1b9c9ece9ae63"
 
-SRC_URI[md5sum] = "bdb73eb18eca2727944a2dcf963c5a81"
-SRC_URI[sha256sum] = "983a31eab45e375240e250161a556163bc8d250edaba97960909338c273a89b3"
-
+SRC_URI[md5sum] = "a8dd57c80cde37a587dd8c37740c1ab1"
+SRC_URI[sha256sum] = "5c9093e7a18780409d9a389f20366f2fd39acfb1db61545fdb2e90cdbd0bcae4"
 
 inherit pypi
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_2.11.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_2.12.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_2.11.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_2.12.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest.inc
index c9c9bbf..6140250 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest.inc
@@ -1,9 +1,13 @@
 SUMMARY = "Simple powerful teting with python"
+HOMEPAGE = "http://pytest.org"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d8a5609608d9a5a180705b0fa298ae01"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c39b24965f4aef64222cb35de9d47cc4"
 
-SRC_URI[md5sum] = "6639592fa430567d024189f097fcdbd7"
-SRC_URI[sha256sum] = "643434a9f1a188271da35e20064cb8b6c5440976c5bb541dc7b5b0e3cf75d940"
+SRC_URI[md5sum] = "401c005bd57f71e63ba015ab086fe67d"
+SRC_URI[sha256sum] = "f46e49e0340a532764991c498244a60e3a37d7424a532b3ff1a6a7653f1a403a"
+
+SRC_URI_append = " file://0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch \
+                   file://pytest_version_fix.patch "
 
 RDEPENDS_${PN}_class-target += " \
     ${PYTHON_PN}-argparse \
@@ -13,4 +17,6 @@
     ${PYTHON_PN}-setuptools \
 "
 
+FILESEXTRAPATHS_prepend := "${THISDIR}/python-pytest:"
+
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest/0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest/0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch
new file mode 100644
index 0000000..e283b17
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest/0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch
@@ -0,0 +1,29 @@
+From e2d81009c790b4ebeced8408b6bae78060cabcaf Mon Sep 17 00:00:00 2001
+From: Derek Straka <derek@asterius.io>
+Date: Wed, 5 Jul 2017 09:35:51 -0400
+Subject: [PATCH 1/1] setup.py: remove the setup_requires for setuptools-scm
+
+The setup_requires argument forces the download of the egg file for setuptools-scm
+during the do_compile phase.  This download is incompatible with the typical fetch
+and mirror structure.  The only usage of scm is the generation of the _version.py
+file and in the release tarball it is already correctly created
+
+Signed-off-by: Derek Straka <derek@asterius.io>
+---
+ setup.py | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 751868c..ef6ebf1 100644
+--- a/setup.py
++++ b/setup.py
+@@ -71,7 +71,6 @@ def main():
+         keywords="test unittest",
+         cmdclass={'test': PyTest},
+         # the following should be enabled for release
+-        setup_requires=['setuptools-scm'],
+         install_requires=install_requires,
+         extras_require=extras_require,
+         packages=['_pytest', '_pytest.assertion', '_pytest._code', '_pytest.vendored_packages'],
+-- 
+2.7.4
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest/pytest_version_fix.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest/pytest_version_fix.patch
new file mode 100644
index 0000000..908f862
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest/pytest_version_fix.patch
@@ -0,0 +1,51 @@
+Upstream-Status: Inappropriate (OE specific) 
+
+python-pytest: remove fetch during do_compile phase
+commit: c974fbf9ebf185552ab65301e07af44f36517abf 
+
+introduced an issue by making the version 0.0.0
+this fixes that
+
+Signed-off-by: Armin Kuster <akuster@mvista.com>
+
+Index: pytest-3.2.2/setup.py
+===================================================================
+--- pytest-3.2.2.orig/setup.py
++++ pytest-3.2.2/setup.py
+@@ -1,5 +1,6 @@
+ import os
+ import sys
++import re
+ import setuptools
+ import pkg_resources
+ from setuptools import setup, Command
+@@ -22,6 +23,18 @@ classifiers = [
+ with open('README.rst') as fd:
+     long_description = fd.read()
+ 
++def read(*names, **kwargs):
++    with open(os.path.join( *names), 'r') as fp:
++        return fp.read()
++
++def find_version(*file_paths):
++    version_file = read(*file_paths)
++    version_match = re.search(r"^version = ['\']([^'\"]*)['\']",
++                              version_file, re.M)
++
++    if version_match:
++        return version_match.group(1)
++    raise RuntimeError("Unable to find version string.")
+ 
+ def has_environment_marker_support():
+     """
+@@ -59,9 +72,7 @@ def main():
+         name='pytest',
+         description='pytest: simple powerful testing with Python',
+         long_description=long_description,
+-        use_scm_version={
+-            'write_to': '_pytest/_version.py',
+-        },
++	version=find_version("_pytest", "_version.py"),
+         url='http://pytest.org',
+         license='MIT license',
+         platforms=['unix', 'linux', 'osx', 'cygwin', 'win32'],
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest_3.0.6.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest_3.2.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest_3.0.6.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pytest_3.2.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev.inc
new file mode 100644
index 0000000..ab4c5fd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev.inc
@@ -0,0 +1,19 @@
+SUMMARY = "A libudev binding"
+LICENSE = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
+
+SRC_URI[md5sum] = "cf4d9db7d772622144ca1be6b5d9353b"
+SRC_URI[sha256sum] = "094b7a100150114748aaa3b70663485dd360457a709bfaaafe5a977371033f2b"
+
+do_configure_prepend() {
+    sed -i "/import pyudev/d" ${S}/setup.py
+    sed -i "s/str(pyudev.__version__)/'${PV}'/g" ${S}/setup.py
+}
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-ctypes \
+    ${PYTHON_PN}-misc \
+    ${PYTHON_PN}-six \
+    ${PYTHON_PN}-subprocess \
+    ${PYTHON_PN}-threading \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev_0.21.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev_0.21.0.bb
index b0a1acb..32573b7 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev_0.21.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyudev_0.21.0.bb
@@ -1,22 +1,8 @@
-SUMMARY = "A libudev binding"
-LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
-
-SRC_URI[md5sum] = "cf4d9db7d772622144ca1be6b5d9353b"
-SRC_URI[sha256sum] = "094b7a100150114748aaa3b70663485dd360457a709bfaaafe5a977371033f2b"
-
-inherit pypi setuptools
-
-do_configure_prepend() {
-    sed -i "/import pyudev/d" ${S}/setup.py
-    sed -i "s/str(pyudev.__version__)/'${PV}'/g" ${S}/setup.py
-}
+require python-pyudev.inc
 
 RDEPENDS_${PN} = "\
     ${PYTHON_PN}-contextlib \
-    ${PYTHON_PN}-ctypes \
-    ${PYTHON_PN}-misc \
-    ${PYTHON_PN}-six \
-    ${PYTHON_PN}-subprocess \
-    ${PYTHON_PN}-threading \
 "
+
+inherit pypi setuptools
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb.inc
new file mode 100644
index 0000000..af20109
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb.inc
@@ -0,0 +1,10 @@
+SUMMARY = "PyUSB provides USB access on the Python language"
+HOMEPAGE = "http://pyusb.sourceforge.net/"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=50d46bda6248a0b4a46a6d59a66ee08e"
+DEPENDS += "libusb1"
+
+SRC_URI[md5sum] = "bc12e83ff3ef1045d4306d13a9955fc1"
+SRC_URI[sha256sum] = "14ec66077bdcd6f1aa9e892a0a35a54bb3c1ec56aa740ead64349c18f0186d19"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb_1.0.0b2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb_1.0.0b2.bb
index d279abc..bb73d9f 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb_1.0.0b2.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-pyusb_1.0.0b2.bb
@@ -1,10 +1,2 @@
-SUMMARY = "PyUSB provides USB access on the Python language"
-HOMEPAGE = "http://pyusb.sourceforge.net/"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=50d46bda6248a0b4a46a6d59a66ee08e"
-DEPENDS = "libusb1"
-
-SRC_URI[md5sum] = "bc12e83ff3ef1045d4306d13a9955fc1"
-SRC_URI[sha256sum] = "14ec66077bdcd6f1aa9e892a0a35a54bb3c1ec56aa740ead64349c18f0186d19"
-
-inherit pypi distutils
+inherit distutils
+require python-pyusb.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis.inc
index 17ff231..571bb08 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis.inc
@@ -4,5 +4,5 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=51d9ad56299ab60ba7be65a621004f27"
 
-SRC_URI[md5sum] = "3b26c2b9703b4b56b30a1ad508e31083"
-SRC_URI[sha256sum] = "5dfbae6acfc54edf0a7a415b99e0b21c0a3c27a7f787b292eea727b1facc5533"
+SRC_URI[md5sum] = "048348d8cfe0b5d0bba2f4d835005c3b"
+SRC_URI[sha256sum] = "a22ca993cea2962dbb588f9f30d0015ac4afcc45bee27d3978c0dbe9e97c6c0f"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis_2.10.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis_2.10.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis_2.10.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-redis_2.10.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc
index b66f66e..5d6dca5 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc
@@ -1,10 +1,12 @@
 DESCRIPTION = "Python HTTP for Humans."
 HOMEPAGE = "http://python-requests.org"
 LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d9bb3515869c0f426cb8441c899ae7f5"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=979d6a23b143e13ea0e5e3aa81248820"
 
-SRC_URI[md5sum] = "921ec6b48f2ddafc8bb6160957baf444"
-SRC_URI[sha256sum] = "5722cd09762faa01276230270ff16af7acf7c5c45d623868d9ba116f15791ce8"
+SRC_URI[md5sum] = "081412b2ef79bdc48229891af13f4d82"
+SRC_URI[sha256sum] = "9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"
+
+inherit pypi
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-email \
@@ -15,6 +17,8 @@
     ${PYTHON_PN}-pyopenssl \
     ${PYTHON_PN}-pysocks \
     ${PYTHON_PN}-urllib3 \
+    ${PYTHON_PN}-chardet \
+    ${PYTHON_PN}-idna \
 "
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests_2.13.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests_2.18.4.bb
similarity index 73%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests_2.13.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests_2.18.4.bb
index 627bc95..0d7a29f 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests_2.13.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-requests_2.18.4.bb
@@ -1,4 +1,4 @@
-inherit pypi setuptools
+inherit setuptools
 require python-requests.inc
 
 RDEPENDS_${PN} += "${PYTHON_PN}-zlib"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sdnotify.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sdnotify.inc
new file mode 100644
index 0000000..ea0e575
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sdnotify.inc
@@ -0,0 +1,16 @@
+HOMEPAGE = "https://github.com/bb4242/sdnotify"
+SUMMARY = "A pure Python implementation of systemd's service notification protocol (sd_notify)"
+
+DESCRIPTION = "\
+  sdnotify is a pure Python implementation of the systemd sd_notify protocol. \
+  This protocol can be used to inform systemd about service start-up completion, \
+  watchdog events, and other service status changes. \
+  Thus, this package can be used to write system services in Python that play nicely with systemd. \
+  "
+
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cc572ccc4b18a4b7d13be5d01bc8213e"
+
+SRC_URI[md5sum] = "749ddca1c70be1697fecc443fb1fdb16"
+SRC_URI[sha256sum] = "73977fc746b36cc41184dd43c3fe81323e7b8b06c2bb0826c4f59a20c56bb9f1"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sdnotify_0.3.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sdnotify_0.3.2.bb
new file mode 100644
index 0000000..39ae3fb
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sdnotify_0.3.2.bb
@@ -0,0 +1,2 @@
+inherit setuptools pypi
+require python-sdnotify.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-selectors34_1.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-selectors34_1.1.bb
deleted file mode 100644
index 1982418..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-selectors34_1.1.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-SUMMARY = "Backport of the selectors module from Python 3.4"
-LICENSE = "PSF"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=1cfbbf590d8d5b7fe937516217b778b3"
-
-SRC_URI[md5sum] = "403194b10f35a5258e0642712fdd3753"
-SRC_URI[sha256sum] = "84b3743b9046461aebbcd13c15e79ab91e79acfb6e030b54a0ec6360ae0bbc52"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += "\
-    ${PYTHON_PN}-six \
-    "    
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-selectors34_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-selectors34_1.2.bb
new file mode 100644
index 0000000..69545eb
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-selectors34_1.2.bb
@@ -0,0 +1,12 @@
+SUMMARY = "Backport of the selectors module from Python 3.4"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://PKG-INFO;md5=2fae0222c31d6c10488d4ab93a863af7"
+
+SRC_URI[md5sum] = "bc855a1c8839a811476c019dc07d92dd"
+SRC_URI[sha256sum] = "09f5066337f8a76fb5233f267873f89a27a17c10bf79575954894bb71686451c"
+
+inherit pypi setuptools
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-six \
+    "    
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent.inc
index 0b1aa91..6454ee0 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent.inc
@@ -1,9 +1,9 @@
 SUMMARY = "Serialization based on ast.literal_eval"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=3773e39c491bb1f9ccc98389d57169d7"
+LIC_FILES_CHKSUM = "file://PKG-INFO;md5=9f611d4c9e2816d387bab64c40d93294"
 
-SRC_URI[md5sum] = "cdef596f727cb6b4176c89769d2d41ee"
-SRC_URI[sha256sum] = "946b2c837f889971df3575af9dadd8f09bfe48549ebc1b9f6434263b653707ce"
+SRC_URI[md5sum] = "d9d6afa51f2560cf5933dcdfd947011d"
+SRC_URI[sha256sum] = "8480ce3d8864b8974d9fe396998c6a7dae96edb68edf905bfd32ea9a11853ba5"
 
 inherit pypi
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent_1.19.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent_1.23.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent_1.19.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-serpent_1.23.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm.inc
index 3249870..81bbf33 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm.inc
@@ -2,8 +2,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=838c366f69b72c5df05c96dff79b35f2"
 
-SRC_URI[md5sum] = "b6916c78ed6253d6602444fad4279c5b"
-SRC_URI[sha256sum] = "daf12d05aa2155a46aa357453757ffdc47d87f839e62114f042bceac6a619e2f"
+SRC_URI[md5sum] = "f17493d53f0d842bb0152f214775640b"
+SRC_URI[sha256sum] = "49ab4685589986a42da85706b3311a2f74f1af567d39fee6cb1e088d7a75fb5f"
 
 PYPI_PACKAGE = "setuptools_scm"
 inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm_1.15.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm_1.15.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm_1.15.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-setuptools-scm_1.15.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson.inc
index 2eed199..13c0456 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson.inc
@@ -4,8 +4,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c6338d7abd321c0b50a2a547e441c52e"
 
-SRC_URI[md5sum] = "426a9631d22851a7a970b1a677368b15"
-SRC_URI[sha256sum] = "953be622e88323c6f43fad61ffd05bebe73b9fd9863a46d68b052d2aa7d71ce2"
+SRC_URI[md5sum] = "6e2f1bd5fb0a926facf5d89d217a7183"
+SRC_URI[sha256sum] = "01a22d49ddd9a168b136f26cac87d9a335660ce07aa5c630b8e3607d6f4325e7"
 
 inherit pypi
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson_3.10.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson_3.11.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson_3.10.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-simplejson_3.11.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-six.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-six.inc
new file mode 100644
index 0000000..a5915c1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-six.inc
@@ -0,0 +1,19 @@
+SUMMARY = "Python 2 and 3 compatibility library"
+HOMEPAGE = "http://pypi.python.org/pypi/six/"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=35cec5bf04dd0820d0a18533ea7c774a"
+
+SRC_URI[md5sum] = "d12789f9baf7e9fb2524c0c64f1773f8"
+SRC_URI[sha256sum] = "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"
+
+do_compile_append() {
+    ${PYTHON} setup.py -q bdist_egg --dist-dir ./
+}
+do_install_append() {
+    install -m 0644 ${S}/*.egg ${D}/${PYTHON_SITEPACKAGES_DIR}/
+}
+
+RDEPENDS_${PN} += "${PYTHON_PN}-io"
+
+BBCLASSEXTEND = "native nativesdk"
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-six_1.11.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-six_1.11.0.bb
new file mode 100644
index 0000000..9075745
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-six_1.11.0.bb
@@ -0,0 +1,2 @@
+inherit pypi setuptools
+require python-six.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy.inc
index 07e70d7..cc8e82f 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy.inc
@@ -7,8 +7,8 @@
 PYPI_PACKAGE = "SQLAlchemy"
 inherit pypi
 
-SRC_URI[md5sum] = "938b1e5ca2372c3ec9a586996a3b5653"
-SRC_URI[sha256sum] = "b65cdc73cd348448ef0164f6c77d45a9f27ca575d3c5d71ccc33adf684bc6ef0"
+SRC_URI[md5sum] = "b32669d53e903b3512065026552f3bff"
+SRC_URI[sha256sum] = "f1191e29e35b6fe1aef7175a09b1707ebb7bd08d0b17cb0feada76c49e5a2d1e"
 
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-json \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy_1.1.9.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy_1.1.14.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy_1.1.9.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-sqlalchemy_1.1.14.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-subprocess32_3.2.7.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-subprocess32_3.2.7.bb
new file mode 100644
index 0000000..f437069
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-subprocess32_3.2.7.bb
@@ -0,0 +1,15 @@
+SUMMARY = "A backport of the subprocess module from Python 3.2 for use on 2.x"
+DESCRIPTION = "This is a backport of the subprocess standard library module \
+from Python 3.2 - 3.5 for use on Python 2. It includes bugfixes and some new \
+features.  On POSIX systems it is guaranteed to be reliable when used in \
+threaded applications. It includes timeout support from Python 3.3 and the \
+run() API from 3.5 but otherwise matches 3.2's API."
+LICENSE = "Python-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d3e62baa8fb96b11a59d3f2cd335d5c0"
+
+SRC_URI[md5sum] = "824c801e479d3e916879aae3e9c15e16"
+SRC_URI[sha256sum] = "1e450a4a4c53bf197ad6402c564b9f7a53539385918ef8f12bdf430a61036590"
+
+inherit pypi setuptools
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado.inc
index 9b1cf41..2c58655 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado.inc
@@ -6,8 +6,8 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://setup.py;startline=2;endline=15;md5=5ab7571a79ad62d0ca7aea308bac7560"
 
-SRC_URI[md5sum] = "b4816ea209118667ffc52ce9ff06ac85"
-SRC_URI[sha256sum] = "2898f992f898cd41eeb8d53b6df75495f2f423b6672890aadaf196ea1448edcc"
+SRC_URI[md5sum] = "ab41f6765d58089f30ba51e8ec084a7b"
+SRC_URI[sha256sum] = "1fb8e494cd46c674d86fac5885a3ff87b0e283937a47d74eb3c02a48c9e89ad0"
 
 RDEPENDS_${PN} += "${PYTHON_PN}-compression ${PYTHON_PN}-numbers ${PYTHON_PN}-email ${PYTHON_PN}-subprocess \
                    ${PYTHON_PN}-pkgutil ${PYTHON_PN}-html ${PYTHON_PN}-json ${PYTHON_PN}-certifi ${PYTHON_PN}-threading"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado_4.4.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado_4.5.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado_4.4.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-tornado_4.5.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_13.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc
similarity index 91%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_13.2.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc
index 071106e..0dd584f 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_13.2.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc
@@ -5,14 +5,13 @@
 
 #twisted/topfiles/NEWS:655: - Relicensed: Now under the MIT license, rather than LGPL.
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=5602d7228daf59a16f0f1b2640c46bca"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8a9c2fbfcba7d70504e3ba545e1820ed"
 
-SRC_URI[md5sum] = "83fe6c0c911cc1602dbffb036be0ba79"
-SRC_URI[sha256sum] = "095175638c019ac7c0604f4c291724a16ff1acd062e181b01293bf4dcbc62cf3"
+SRC_URI[md5sum] = "6dbedb918f0c7288a4c670f59393ecf8"
+SRC_URI[sha256sum] = "0da1a7e35d5fcae37bc9c7978970b5feb3bc82822155b8654ec63925c05af75c"
 
 PYPI_PACKAGE = "Twisted"
 PYPI_PACKAGE_EXT = "tar.bz2"
-inherit pypi setuptools
 
 do_install_append() {
     # remove some useless files before packaging
@@ -24,7 +23,6 @@
     ${PN}-test \
     ${PN}-protocols \
     ${PN}-conch \
-    ${PN}-lore \
     ${PN}-mail \
     ${PN}-names \
     ${PN}-news \
@@ -43,20 +41,18 @@
 
 RDEPENDS_${PN} = "\
     ${PN}-bin \
+    ${PN}-core \
     ${PN}-conch \
-    ${PN}-lore \
     ${PN}-mail \
     ${PN}-names \
-    ${PN}-news \
     ${PN}-runner \
     ${PN}-web \
     ${PN}-words \
 "
 
-RDEPENDS_${PN}-core = "python-core python-zopeinterface python-contextlib"
+RDEPENDS_${PN}-core = "${PYTHON_PN}-core ${PYTHON_PN}-zopeinterface ${PYTHON_PN}-incremental ${PYTHON_PN}-constantly ${PYTHON_PN}-hyperlink ${PYTHON_PN}-automat"
 RDEPENDS_${PN}-test = "${PN}"
 RDEPENDS_${PN}-conch = "${PN}-core ${PN}-protocols"
-RDEPENDS_${PN}-lore = "${PN}-core"
 RDEPENDS_${PN}-mail = "${PN}-core ${PN}-protocols"
 RDEPENDS_${PN}-names = "${PN}-core"
 RDEPENDS_${PN}-news = "${PN}-core ${PN}-protocols"
@@ -73,12 +69,14 @@
 FILES_${PN}-test = " \
     ${libdir}/${PYTHON_DIR}/site-packages/twisted/test \
     ${libdir}/${PYTHON_DIR}/site-packages/twisted/*/test \
+    ${libdir}/${PYTHON_DIR}/site-packages/twisted/protocols/haproxy/test/ \
 "
 
 FILES_${PN}-protocols = " \
     ${libdir}/${PYTHON_DIR}/site-packages/twisted/protocols/*.py* \
     ${libdir}/${PYTHON_DIR}/site-packages/twisted/protocols/gps/ \
     ${libdir}/${PYTHON_DIR}/site-packages/twisted/protocols/mice/ \
+    ${libdir}/${PYTHON_DIR}/site-packages/twisted/protocols/haproxy \
 "
 
 FILES_${PN}-zsh = " \
@@ -181,13 +179,9 @@
 ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/*.py* \
 ${libdir}/${PYTHON_DIR}/site-packages/twisted/topfiles \
 ${libdir}/${PYTHON_DIR}/site-packages/Twisted*egg-info \
-"
-
-FILES_${PN}-lore = " \
-${bindir}/bookify \
-${bindir}/lore \
-${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/twisted_lore.py* \
-${libdir}/${PYTHON_DIR}/site-packages/twisted/lore \
+${libdir}/${PYTHON_DIR}/site-packages/twisted/logger/ \
+${libdir}/${PYTHON_DIR}/site-packages/twisted/_threads/ \
+${libdir}/${PYTHON_DIR}/site-packages/twisted/positioning/ \
 "
 
 FILES_${PN}-mail = " \
@@ -237,6 +231,10 @@
 ${libdir}/${PYTHON_DIR}/site-packages/twisted/*/*/.debug \
 "
 
+FILES_${PN}-doc += " \
+    ${libdir}/${PYTHON_DIR}/site-packages/twisted/python/_pydoctortemplates/ \
+"
+
 RDEPENDS_{PN}-src = "${PN}"
 FILES_${PN}-src = " \
     ${libdir}/${PYTHON_DIR}/site-packages/twisted/*.py \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_17.9.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_17.9.0.bb
new file mode 100644
index 0000000..7fc8c65
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_17.9.0.bb
@@ -0,0 +1,10 @@
+inherit pypi setuptools
+require python-twisted.inc
+
+RDEPENDS_${PN}-core += "${PYTHON_PN}-contextlib"
+
+# Not yet ported to py3 yet available in py2
+# See src/twisted/python/_setup.py -- notPortedModules
+RDEPENDS_${PN} += "\
+    ${PN}-news \
+    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc
index 49da4fe..46be47c 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc
@@ -3,7 +3,7 @@
 LICENSE = "PSF"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=64fc2b30b67d0a8423c250e0386ed72f"
 
-SRC_URI[md5sum] = "3996a747158e5591abf689c1c5f8f9db"
-SRC_URI[sha256sum] = "ca2daac7e393e8ee86e9140cd0cf0172ff6bb50ebdf0b06281770f98f31bff21"
+SRC_URI[md5sum] = "143af0bf3afd1887622771f2f1ffe8e1"
+SRC_URI[sha256sum] = "d514bd84b284dd3e844f0305ac07511f097e325171f6cc4a20878d11ad771849"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.5.3.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.6.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.5.3.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.6.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson.inc
new file mode 100644
index 0000000..9654d5a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson.inc
@@ -0,0 +1,15 @@
+SUMMARY  = "Ultra fast JSON encoder and decoder for Python"
+DESCRIPTION = "UltraJSON is an ultra fast JSON encoder and decoder written in pure C with bindings for Python 2.5+ and 3."
+
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://PKG-INFO;startline=8;endline=9;md5=4f369b3c3c290b4aede8796a4065e5ab"
+
+SRC_URI[md5sum] = "42f77b0cce686dfa4da2e68480b1dd24"
+SRC_URI[sha256sum] = "f66073e5506e91d204ab0c614a148d5aa938bdbf104751be66f8ad7a222f5f86"
+
+inherit pypi
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-datetime \
+    ${PYTHON_PN}-numbers \
+    "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson_1.35.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson_1.35.bb
index 238dc92..b3c6ae6 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson_1.35.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-ujson_1.35.bb
@@ -1,15 +1,2 @@
-SUMMARY  = "Ultra fast JSON encoder and decoder for Python"
-DESCRIPTION = "UltraJSON is an ultra fast JSON encoder and decoder written in pure C with bindings for Python 2.5+ and 3."
-
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://PKG-INFO;startline=8;endline=9;md5=4f369b3c3c290b4aede8796a4065e5ab"
-
-SRC_URI[md5sum] = "42f77b0cce686dfa4da2e68480b1dd24"
-SRC_URI[sha256sum] = "f66073e5506e91d204ab0c614a148d5aa938bdbf104751be66f8ad7a222f5f86"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += "\
-    ${PYTHON_PN}-datetime \
-    ${PYTHON_PN}-numbers \
-    "
+inherit setuptools
+require python-ujson.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff.inc
new file mode 100644
index 0000000..0402550
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff.inc
@@ -0,0 +1,9 @@
+SUMMARY = "Unified diff parsing/metadata extraction library"
+HOMEPAGE = "http://github.com/matiasb/python-unidiff"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4c434b08ef42fea235bb019b5e5a97b3"
+
+SRC_URI[md5sum] = "c8099edf89d2e3bac16123766625a38b"
+SRC_URI[sha256sum] = "a7baf71846a68c5305a7d6005dfb5eca8798f13861176355a285cbda3206824d"
+
+inherit pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff_0.5.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff_0.5.3.bb
deleted file mode 100644
index 6d40cca..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff_0.5.3.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "Unified diff parsing/metadata extraction library"
-HOMEPAGE = "http://github.com/matiasb/python-unidiff"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=4c434b08ef42fea235bb019b5e5a97b3"
-
-SRC_URI[md5sum] = "31a61729e64ee409135a2ccec80c7104"
-SRC_URI[sha256sum] = "79b4be3e5479dfc6d77747d23ec98200559ca6a842fad1f92c2a7eb56b99195b"
-
-inherit  pypi setuptools
-
-U = "${D}${LIBDIR}${PYTHON_SITEPACKAGES_DIR}"
-
-do_install_append (){
-    mv ${U}/tests ${U}/unidiff/
-}
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff_0.5.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff_0.5.4.bb
new file mode 100644
index 0000000..bdb3d27
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-unidiff_0.5.4.bb
@@ -0,0 +1,2 @@
+require python-unidiff.inc
+inherit setuptools
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc
index 485f57f..cf79926 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc
@@ -1,10 +1,10 @@
 SUMMARY = "Python HTTP library with thread-safe connection pooling, file post support, sanity friendly, and more"
 HOMEPAGE = "https://github.com/shazow/urllib3"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=06dfcbb88fb0787a2039e26af11276f5"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ea114851ad9a8c311aac8728a681a067"
 
-SRC_URI[md5sum] = "e62d42006807308fea9556c17af8e250"
-SRC_URI[sha256sum] = "cc49b66adcb45e19c6944cff35eedb60ee2228f0afba51f4da29c47e7a398f15"
+SRC_URI[md5sum] = "0da7bed3fe94bf7dc59ae37885cc72f7"
+SRC_URI[sha256sum] = "cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"
 
 RDEPENDS_${PN} += "\
     ${PYTHON_PN}-certifi \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3_1.22.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3_1.22.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-vobject_0.9.4.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-vobject_0.9.5.bb
similarity index 70%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-vobject_0.9.4.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-vobject_0.9.5.bb
index fc95193..d2f343e 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-vobject_0.9.4.1.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-vobject_0.9.5.bb
@@ -4,8 +4,8 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
 
-SRC_URI[md5sum] = "73432a3e6e9a4788f73a9acc4d7b1fa8"
-SRC_URI[sha256sum] = "faea7d4fb3e2bc8ef6367e7f9b4ad0841aa1980fd5dd96d05c7a90e39880811c"
+SRC_URI[md5sum] = "aa629d6ae95db5edfd5b2402eb1073cb"
+SRC_URI[sha256sum] = "0f56cae196303d875682b9648b4bb43ffc769d2f0f800958e0a506af867b1243"
 
 inherit pypi setuptools
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings.inc
new file mode 100644
index 0000000..ed57c52
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings.inc
@@ -0,0 +1,10 @@
+SUMMARY = "Character encoding aliases for legacy web content"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://PKG-INFO;startline=8;endline=9;md5=af5c81bfe98855a56d36b6ba5de2906f"
+
+SRC_URI[md5sum] = "32f6e261d52e57bf7e1c4d41546d15b8"
+SRC_URI[sha256sum] = "b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"
+
+inherit pypi
+
+RDEPENDS_${PN} += "${PYTHON_PN}-codecs"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings_0.5.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings_0.5.1.bb
new file mode 100644
index 0000000..5de2ed1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings_0.5.1.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-webencodings.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings_0.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings_0.5.bb
deleted file mode 100644
index fbe6285..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-webencodings_0.5.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-SUMMARY = "Character encoding aliases for legacy web content"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://PKG-INFO;startline=8;endline=9;md5=2fc6c99a19e6dbde9f7a2239143c9d13"
-
-SRC_URI[md5sum] = "878714d45241f7970dffd8991d61fff9"
-SRC_URI[sha256sum] = "a5c55ee93b24e740fe951c37b5c228dccc1f171450e188555a775261cce1b904"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += "${PYTHON_PN}-codecs"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug.inc
index e55f56d..b2949a3 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug.inc
@@ -10,8 +10,8 @@
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a68f5361a2b2ca9fdf26b38aaecb6faa"
 
-SRC_URI[md5sum] = "cb4010478dd33905f95920e4880204a2"
-SRC_URI[sha256sum] = "455d7798ac263266dbd38d4841f7534dd35ca9c3da4a8df303f8488f38f3bcc0"
+SRC_URI[md5sum] = "e385b2c5a7193cff24c689b31e1124dc"
+SRC_URI[sha256sum] = "903a7b87b74635244548b30d30db4c8947fe64c5198f58899ddcd3a13c23bb26"
 
 PYPI_PACKAGE = "Werkzeug"
 
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug_0.11.15.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug_0.12.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug_0.11.15.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-werkzeug_0.12.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt.inc
new file mode 100644
index 0000000..c85548f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt.inc
@@ -0,0 +1,15 @@
+SUMMARY = "A Python module for decorators, wrappers and monkey patching."
+HOMEPAGE = "http://wrapt.readthedocs.org/"
+LICENSE = "BSD"
+SECTION = "devel/python"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=61c27930012e86b3dc7e36f92e83c4d8"
+
+SRC_URI[md5sum] = "e1346f31782d50401f81c2345b037076"
+SRC_URI[sha256sum] = "d4d560d479f2c21e1b5443bbd15fe7ec4b37fe7e53d335d3b9b0a7b1226fe3c6"
+
+inherit pypi
+
+RDEPENDS_${PN}_class-target += "\
+    ${PYTHON_PN}-stringold \
+    ${PYTHON_PN}-threading \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt_1.10.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt_1.10.11.bb
new file mode 100644
index 0000000..bb42476
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt_1.10.11.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-wrapt.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt_1.10.8.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt_1.10.8.bb
deleted file mode 100644
index 58aa1bd..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-wrapt_1.10.8.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "A Python module for decorators, wrappers and monkey patching."
-HOMEPAGE = "http://wrapt.readthedocs.org/"
-LICENSE = "BSD"
-SECTION = "devel/python"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=82704725592991ea88b042d150a66303"
-
-SRC_URI[md5sum] = "7c2a7e6262acc396ef6528b3d66bd047"
-SRC_URI[sha256sum] = "4ea17e814e39883c6cf1bb9b0835d316b2f69f0f0882ffe7dad1ede66ba82c73"
-
-inherit setuptools pypi
-
-RDEPENDS_${PN}_class-target += "\
-    ${PYTHON_PN}-stringold \
-    ${PYTHON_PN}-threading \
-"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd.inc b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd.inc
index a8fe8c7..d1ab05d 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd.inc
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd.inc
@@ -4,9 +4,9 @@
 Strong support for Excel dates. Unicode-aware."
 HOMEPAGE = "http://www.python-excel.org/"
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://xlrd/licences.py;md5=b59dace5cc1db604c4219100b0422811"
+LIC_FILES_CHKSUM = "file://PKG-INFO;md5=08bd814936237b6e1355e6370b24b2c1"
 
-SRC_URI[md5sum] = "9a91b688cd4945477ac28187a54f9a3b"
-SRC_URI[sha256sum] = "0ff87dd5d50425084f7219cb6f86bb3eb5aa29063f53d50bf270ed007e941069"
+SRC_URI[md5sum] = "b85c9916ac755cad489a9005f5a0d390"
+SRC_URI[sha256sum] = "8a21885513e6d915fe33a8ee5fdfa675433b61405ba13e2a69e62ee36828d7e2"
 
 RDEPENDS_${PN} += "${PYTHON_PN}-compression ${PYTHON_PN}-io ${PYTHON_PN}-pprint ${PYTHON_PN}-shell"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd_1.0.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd_1.1.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd_1.0.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-xlrd_1.1.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.3.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc
similarity index 74%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.3.3.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc
index 7596394..4b38aea 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.3.3.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc
@@ -2,17 +2,19 @@
 LICENSE = "ZPL-2.1"
 LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=e54fd776274c1b7423ec128974bd9d46"
 
-SRC_URI[md5sum] = "ba3f32eacaea66094b7e2ae2788cec89"
-SRC_URI[sha256sum] = "8780ef68ca8c3fe1abb30c058a59015129d6e04a6b02c2e56b9c7de6078dfa88"
+SRC_URI[md5sum] = "8700a4f527c1203b34b10c2b4e7a6912"
+SRC_URI[sha256sum] = "d6d26d5dfbfd60c65152938fcb82f949e8dada37c041f72916fef6621ba5c5ce"
 
 PYPI_PACKAGE = "zope.interface"
-inherit pypi setuptools
+
+PACKAGES =. "${PN}-test "
 
 RPROVIDES_${PN} += "zope-interfaces"
+
 FILES_${PN}-dbg += "${PYTHON_SITEPACKAGES_DIR}/*.egg/*/*/.debug"
 FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/zope/interface/*.c"
 FILES_${PN}-doc += "${PYTHON_SITEPACKAGES_DIR}/zope/interface/*.txt"
-FILES_${PN}-tests = " \
+FILES_${PN}-test += " \
         ${PYTHON_SITEPACKAGES_DIR}/zope/interface/tests \
         ${PYTHON_SITEPACKAGES_DIR}/zope/interface/common/tests \
 "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.4.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.4.3.bb
new file mode 100644
index 0000000..1bdfd4d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.4.3.bb
@@ -0,0 +1,4 @@
+inherit pypi setuptools
+require python-zopeinterface.inc
+
+RDEPENDS_${PN}-test += "python-unittest python-doctest"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-appdirs_1.4.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-appdirs_1.4.3.bb
new file mode 100644
index 0000000..d24e1d8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-appdirs_1.4.3.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-appdirs.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_1.5.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_1.5.3.bb
new file mode 100644
index 0000000..6e32c28
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_1.5.3.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-astroid.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-aws-iot-device-sdk-python_1.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-aws-iot-device-sdk-python_1.2.0.bb
new file mode 100644
index 0000000..c43649d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-aws-iot-device-sdk-python_1.2.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-aws-iot-device-sdk-python.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-babel_2.3.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-babel_2.5.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-babel_2.3.4.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-babel_2.5.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-bcrypt_3.1.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-bcrypt_3.1.3.bb
new file mode 100644
index 0000000..d2ec9e3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-bcrypt_3.1.3.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-bcrypt.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.6.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.6.0.bb
new file mode 100644
index 0000000..d98df11
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.6.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-beautifulsoup4.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_0.8.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_0.8.1.bb
new file mode 100644
index 0000000..7ee444d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_0.8.1.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-bitarray.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-can_1.5.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-can_2.0.0b1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-can_1.5.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-can_2.0.0b1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.8.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.11.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.8.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cassandra-driver_3.11.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2017.1.23.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2017.7.27.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2017.1.23.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2017.7.27.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.9.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.11.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.9.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.11.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-chardet_3.0.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-chardet_3.0.4.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-chardet_3.0.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-chardet_3.0.4.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_4.4.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_4.4.1.bb
new file mode 100644
index 0000000..6aa5c59
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-coverage_4.4.1.bb
@@ -0,0 +1,10 @@
+SUMMARY = "Code coverage measurement for Python"
+HOMEPAGE = "https://coverage.readthedocs.io"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ee41112a44fe7014dce33e26468ba93"
+
+SRC_URI[md5sum] = "4c4d997cb32be4703f1fde54e6cd1b1c"
+SRC_URI[sha256sum] = "7a9c44400ee0f3b4546066e0710e1250fd75831adc02ab99dda176ad8726f424"
+
+inherit pypi setuptools3
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography-vectors_1.7.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography-vectors_2.0.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography-vectors_1.7.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography-vectors_2.0.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography_1.7.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography_2.0.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography_1.7.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cryptography_2.0.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.25.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.27.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.25.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.27.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.6.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.6.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.6.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.6.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.0.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.1.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.0.11.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.1.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-django-south_1.0.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-django-south_1.0.2.bb
new file mode 100644
index 0000000..1051911
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-django-south_1.0.2.bb
@@ -0,0 +1,2 @@
+require python-django-south.inc
+inherit setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-django_1.11.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-django_1.11.5.bb
new file mode 100644
index 0000000..e1e38c3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-django_1.11.5.bb
@@ -0,0 +1,2 @@
+require python-django.inc
+inherit setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-pymongo_0.4.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-pymongo_0.5.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-pymongo_0.4.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-pymongo_0.5.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_0.12.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_0.12.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_0.12.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_0.12.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-gevent_1.2.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-gevent_1.2.2.bb
new file mode 100644
index 0000000..1f172e5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-gevent_1.2.2.bb
@@ -0,0 +1,3 @@
+require python-gevent.inc
+inherit setuptools3
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-greenlet_0.4.12.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-greenlet_0.4.12.bb
new file mode 100644
index 0000000..1aedf7f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-greenlet_0.4.12.bb
@@ -0,0 +1,2 @@
+inherit distutils3
+require python-greenlet.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-html5lib_0.999999999.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-html5lib_0.999999999.bb
new file mode 100644
index 0000000..6bd8b49
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-html5lib_0.999999999.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-html5lib.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-idna_2.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-idna_2.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-idna_2.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-idna_2.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-iso8601_0.1.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-iso8601_0.1.12.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-iso8601_0.1.11.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-iso8601_0.1.12.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_4.2.15.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_4.2.15.bb
new file mode 100644
index 0000000..755b3e2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-isort_4.2.15.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-isort.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.9.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.9.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.9.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.9.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonschema_2.6.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonschema_2.6.0.bb
index 53b8839..5aaee68 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonschema_2.6.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonschema_2.6.0.bb
@@ -1,8 +1,6 @@
 inherit pypi setuptools3
 require python-jsonschema.inc
 
-DEPENDS += "python3-vcversioner"
-
 RDEPENDS_${PN} += " \
     ${PYTHON_PN}-misc \
 "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.37.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.37.bb
new file mode 100644
index 0000000..362ca1a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.37.bb
@@ -0,0 +1,22 @@
+DESCRIPTION = "langtable is used to guess reasonable defaults for locale,\
+keyboard, territory"
+HOMEPAGE = "https://github.com/mike-fabian/langtable/"
+LICENSE = "GPLv3+"
+SECTION = "devel/python"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+S = "${WORKDIR}/git"
+B = "${S}"
+
+SRCREV = "3f001eef027ba69ef2fdb35c670b7da26b79b5e2"
+PV = "0.0.37+git${SRCPV}"
+SRC_URI = "git://github.com/mike-fabian/langtable.git;branch=master \
+"
+
+inherit setuptools3 python3native
+
+DISTUTILS_INSTALL_ARGS = "--prefix=${D}/${prefix} \
+    --install-data=${D}/${datadir}/langtable"
+
+FILES_${PN} += "${datadir}/*"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.3.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.3.1.bb
new file mode 100644
index 0000000..150e12f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lazy-object-proxy_1.3.1.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-lazy-object-proxy.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml/0001-lxml.etree-Add-empty-variadic-argument.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml/0001-lxml.etree-Add-empty-variadic-argument.patch
deleted file mode 100644
index bb012dc..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml/0001-lxml.etree-Add-empty-variadic-argument.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 36e64cf2f0676ee422c1fd41456967f3015b2fa3 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Apr 2017 17:10:45 -0700
-Subject: [PATCH] lxml.etree: Add empty variadic argument
-
-format checker says that argument 4 is a printf formatted argument
-but there is no more arguments to follow
-
-Fixes libxslt format warnings
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/lxml/lxml.etree.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/lxml/lxml.etree.c b/src/lxml/lxml.etree.c
-index d482091..faab06c 100644
---- a/src/lxml/lxml.etree.c
-+++ b/src/lxml/lxml.etree.c
-@@ -186086,7 +186086,7 @@ static void __pyx_f_4lxml_5etree__callExtensionElement(xsltTransformContext *__p
-  *         except:
-  */
-             __pyx_t_26 = __Pyx_PyObject_AsString(__pyx_v_message); if (unlikely((!__pyx_t_26) && PyErr_Occurred())) __PYX_ERR(19, 228, __pyx_L18_except_error)
--            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26);
-+            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26, "");
- 
-             /* "src/lxml/xsltext.pxi":229
-  *                 c_inst_node.name, _cstr(e))
-@@ -186136,7 +186136,7 @@ static void __pyx_f_4lxml_5etree__callExtensionElement(xsltTransformContext *__p
-  *     except:
-  */
-             __pyx_t_26 = __Pyx_PyObject_AsString(__pyx_v_message); if (unlikely((!__pyx_t_26) && PyErr_Occurred())) __PYX_ERR(19, 234, __pyx_L18_except_error)
--            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26);
-+            xsltTransformError(__pyx_v_c_ctxt, NULL, __pyx_v_c_inst_node, __pyx_t_26, "");
- 
-             /* "src/lxml/xsltext.pxi":235
-  *                 "Error executing extension element '%s'", c_inst_node.name)
--- 
-2.12.2
-
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_3.7.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_3.7.3.bb
deleted file mode 100644
index 8b13d2d..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_3.7.3.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-inherit setuptools3
-require python-lxml.inc
-
-SRC_URI = "${PYPI_SRC_URI} \
-           file://0001-lxml.etree-Add-empty-variadic-argument.patch \
-           "
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.1.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.1.0.bb
new file mode 100644
index 0000000..ff4bc7f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.1.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-lxml.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_0.23.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_1.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_0.23.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_1.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.4.8.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.4.8.bb
new file mode 100644
index 0000000..096d7dd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.4.8.bb
@@ -0,0 +1,2 @@
+require python-msgpack.inc
+inherit setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict/0001-Allow-calling-make-clean-without-sphinx-build.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict/0001-Allow-calling-make-clean-without-sphinx-build.patch
deleted file mode 100644
index d1d7ef5..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict/0001-Allow-calling-make-clean-without-sphinx-build.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 39e13b4e3f7a1d1dd748e80cee241d511865d4e8 Mon Sep 17 00:00:00 2001
-From: Pascal Bach <pascal.bach@nextrem.ch>
-Date: Mon, 16 Jan 2017 21:29:12 +0100
-Subject: [PATCH] Allow calling make clean without sphinx-build
-
-Currently make clean fails without sphinx-build installed
-However sphinx-build is not really necessary to do a clean.
-This trick makes the docs/Makefile use the false binary instead of
-sphinx-build for the check when a clean is done.
-
-Upstream-Status: Submitted https://github.com/aio-libs/multidict/pull/41
-
----
- Makefile | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 8f525f3..6d601e5 100644
---- a/Makefile
-+++ b/Makefile
-@@ -51,8 +51,8 @@ clean:
- 	rm -rf coverage
- 	rm -rf build
- 	rm -rf cover
--	make -C docs clean
--	python setup.py clean
-+	make -C docs clean SPHINXBUILD=false
-+	python3 setup.py clean
- 	rm -f multidict/_multidict.html
- 	rm -f multidict/_multidict.c
- 	rm -f multidict/_multidict.*.so
--- 
-2.7.4
-
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_2.1.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_2.1.4.bb
deleted file mode 100644
index 62895d2..0000000
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_2.1.4.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-SUMMARY = "Multidicts are useful for working with HTTP headers, URL query args etc."
-HOMEPAGE = "https://github.com/aio-libs/multidict/"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
-
-inherit pypi setuptools3
-
-SRC_URI += "file://0001-Allow-calling-make-clean-without-sphinx-build.patch"
-
-SRC_URI[md5sum] = "051d92edec87fd98e43ea83f3ce6072d"
-SRC_URI[sha256sum] = "a77aa8c9f68846c3b5db43ff8ed2a7a884dbe845d01f55113a3fba78518c4cd7"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_3.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_3.2.0.bb
new file mode 100644
index 0000000..c6556b3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_3.2.0.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Multidicts are useful for working with HTTP headers, URL query args etc."
+HOMEPAGE = "https://github.com/aio-libs/multidict/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e74c98abe0de8f798ca609137f9cef4a"
+
+inherit pypi setuptools3
+
+SRC_URI[md5sum] = "a01da31ca1855557a1b2e053c933af2f"
+SRC_URI[sha256sum] = "e27a7a95317371c15ecda7206f6e8c144f10a337bb2c3e61b5176deafbb88cb2"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ndg-httpsclient_0.4.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ndg-httpsclient_0.4.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ndg-httpsclient_0.4.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ndg-httpsclient_0.4.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-netaddr_0.7.19.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-netaddr_0.7.19.bb
new file mode 100644
index 0000000..30416a4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-netaddr_0.7.19.bb
@@ -0,0 +1,2 @@
+require python-netaddr.inc
+inherit setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ntplib_0.3.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ntplib_0.3.3.bb
new file mode 100644
index 0000000..35440bc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ntplib_0.3.3.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "This module offers a simple interface to query NTP servers from Python."
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://ntplib.py;beginline=1;endline=23;md5=afa07338a9595257e94c205c3e72224d"
+
+SRCNAME = "ntplib"
+SRC_URI[md5sum] = "c7cc8e9b09f40c84819859d70b7784ca"
+SRC_URI[sha256sum] = "c4621b64d50be9461d9bd9a71ba0b4af06fbbf818bbd483752d95c1a4e273ede"
+
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+inherit setuptools3 python3native pypi
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ordered-set_2.0.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ordered-set_2.0.2.bb
new file mode 100644
index 0000000..be6d4e1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ordered-set_2.0.2.bb
@@ -0,0 +1,10 @@
+SUMMARY = "A MutableSet that remembers its order, so that every entry has an index."
+HOMEPAGE = "http://github.com/LuminosoInsight/ordered-set"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://MIT-LICENSE;md5=0feb0c85b722f488b87844fb5f81d2dc"
+
+SRC_URI[md5sum] = "7b8d73dc64fd3c783ecb48e050bfcc0d"
+SRC_URI[sha256sum] = "942cad5d7d5b0760d5cbe93dfb385ac2ed402ca1d48c9f4e102d7d5cce3a90eb"
+
+inherit pypi setuptools3
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-paho-mqtt_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-paho-mqtt_1.3.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-paho-mqtt_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-paho-mqtt_1.3.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_0.20.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_0.20.3.bb
new file mode 100644
index 0000000..b5dd5e0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pandas_0.20.3.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-pandas.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pexpect_4.2.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pexpect_4.2.1.bb
new file mode 100644
index 0000000..cf39233
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pexpect_4.2.1.bb
@@ -0,0 +1,2 @@
+require python-pexpect.inc
+inherit pypi setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pid/0001-remove-requirement-of-nose.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pid/0001-remove-requirement-of-nose.patch
new file mode 100644
index 0000000..3beef07
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pid/0001-remove-requirement-of-nose.patch
@@ -0,0 +1,29 @@
+From 04d04a8fa1ef3d8dbdaebbaac9ae936e1c8234c1 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Wed, 28 Jun 2017 21:17:43 -0400
+Subject: [PATCH] remove requirement of nose
+
+The nose extends unittest to make testing easier.
+Do not need the test suite, so remove requirement of nose.
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ setup.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 3f7c7cb..c42a546 100644
+--- a/setup.py
++++ b/setup.py
+@@ -53,6 +53,4 @@ setup(
+     keywords='pid pidfile context manager decorator',
+     packages=["pid"],
+     install_requires=[],
+-    test_suite='nose.collector',
+-    setup_requires=['nose>=1.0'],
+ )
+-- 
+2.8.1
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pid_2.1.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pid_2.1.1.bb
new file mode 100644
index 0000000..c88d9a0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pid_2.1.1.bb
@@ -0,0 +1,14 @@
+SUMMARY = "Pidfile featuring stale detection and file-locking, can also \
+be used as context-manager or decorator"
+HOMEPAGE = "https://github.com/trbs/pid/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=83d53cbd3105063f20305bc313464e29"
+
+SRC_URI[md5sum] = "9634b1e3d545544a9d496e25e4530d14"
+SRC_URI[sha256sum] = "b443169d3dc21397695b4a82016fadb4cfdb0ed8b2ddb4aaa428e1701bb34e1f"
+
+inherit pypi setuptools3
+
+SRC_URI += " \
+    file://0001-remove-requirement-of-nose.patch \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prctl/0001-support-cross-complication.patch b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prctl/0001-support-cross-complication.patch
new file mode 100644
index 0000000..775ae1b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prctl/0001-support-cross-complication.patch
@@ -0,0 +1,61 @@
+From 9a16800738547d117284354bbcad7dd77d9d0344 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Thu, 21 Apr 2016 03:05:57 -0400
+Subject: [PATCH] support cross-complication
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ setup.py | 35 -----------------------------------
+ 1 file changed, 35 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 658d1a5..e8be7eb 100755
+--- a/setup.py
++++ b/setup.py
+@@ -13,41 +13,6 @@ import sys
+ # - Need gcc
+ # - Need C headers
+ # - Need libcap headers
+-if not sys.platform.startswith('linux'):
+-    sys.stderr.write("This module only works on linux\n")
+-    sys.exit(1)
+-
+-kvers = os.uname()[2]
+-if kvers < '2.6.18' and not os.environ.get("PRCTL_SKIP_KERNEL_CHECK",False):
+-    sys.stderr.write("This module requires linux 2.6.18 or newer\n")
+-    sys.exit(1)
+-
+-if sys.version_info[:2] < (2,4):
+-    sys.stderr.write("This module requires python 2.4 or newer\n")
+-    sys.exit(1)
+-
+-exit = False
+-try:
+-    subprocess.call(['gcc','-v'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+-except:
+-    sys.stderr.write("You need to install gcc to build this module\n")
+-    sys.exit(1)
+-
+-sp = subprocess.Popen(['cpp'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+-sp.communicate('#include <sys/prctl.h>\n'.encode())
+-if sp.returncode:
+-    sys.stderr.write("You need to install libc development headers to build this module\n")
+-    exit = True
+-
+-sp = subprocess.Popen(['cpp'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+-sp.communicate('#include <sys/capability.h>\n'.encode())
+-if sp.returncode:
+-    sys.stderr.write("You need to install libcap development headers to build this module\n")
+-    exit = True
+-
+-if exit:
+-    sys.exit(1)
+-
+ _prctl = Extension("_prctl",
+                    sources = ['_prctlmodule.c'],
+                    depends = ['securebits.h'],
+-- 
+2.8.1
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prctl_1.6.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prctl_1.6.1.bb
new file mode 100644
index 0000000..5de83ce
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prctl_1.6.1.bb
@@ -0,0 +1,22 @@
+SUMMARY  = "Control process attributes through prctl"
+DESCRIPTION = "The linux prctl function allows you to control specific characteristics of a \
+process' behaviour. Usage of the function is fairly messy though, due to \
+limitations in C and linux. This module provides a nice non-messy python(ic) \
+interface."
+SECTION = "devel/python"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5eb2f4bcd60326f83e5deb542372d52f"
+
+S = "${WORKDIR}/git"
+B = "${S}"
+
+SRCREV = "1107d0be7bec4b28c85c62c454882d16844c930a"
+PV = "1.6.1+git${SRCPV}"
+
+SRC_URI = "git://github.com/seveas/python-prctl;branch=master \
+           file://0001-support-cross-complication.patch \
+"
+inherit setuptools3 python3native
+
+DEPENDS += "libcap"
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-progress_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-progress_1.3.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-progress_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-progress_1.3.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_1.0.13.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_1.0.15.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_1.0.13.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-prompt-toolkit_1.0.15.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.4.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.4.0.bb
new file mode 100644
index 0000000..781d1dc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.4.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-protobuf.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.3.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.2.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.3.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ptyprocess_0.5.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ptyprocess_0.5.2.bb
new file mode 100644
index 0000000..bdcd0e2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ptyprocess_0.5.2.bb
@@ -0,0 +1,2 @@
+require python-ptyprocess.inc
+inherit pypi setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.4.32.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.4.34.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.4.32.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.4.34.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.2.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.3.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.2.3.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.3.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pybind11_2.0.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pybind11_2.2.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pybind11_2.0.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pybind11_2.2.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pycparser_2.17.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pycparser_2.18.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pycparser_2.17.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pycparser_2.18.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfirmata_1.0.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfirmata_1.0.3.bb
new file mode 100644
index 0000000..25af1b5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfirmata_1.0.3.bb
@@ -0,0 +1,3 @@
+inherit setuptools3
+require python-pyfirmata.inc
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_1.7.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_1.7.4.bb
new file mode 100644
index 0000000..563e831
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_1.7.4.bb
@@ -0,0 +1,2 @@
+inherit setuptools3 python3-dir
+require python-pylint.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.67.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.80.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.67.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymisp_2.4.80.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.4.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.5.1.bb
similarity index 85%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.4.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.5.1.bb
index 3b250a1..9f02cab 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.4.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.5.1.bb
@@ -2,7 +2,7 @@
 require python-pymongo.inc
 
 # Requires _pydecimal which is in misc
-RDEPENDS_${PN} += " \
+RDEPENDS_${PYTHON_PN}-bson += " \
     ${PYTHON_PN}-enum \
     ${PYTHON_PN}-misc \
     ${PYTHON_PN}-selectors \
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_16.2.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_17.3.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_16.2.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_17.3.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.3.22.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.3.22.bb
new file mode 100644
index 0000000..a23e72c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyroute2_0.3.22.bb
@@ -0,0 +1,2 @@
+require python-pyroute2.inc
+inherit setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyserial_3.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyserial_3.4.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyserial_3.3.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyserial_3.4.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pysocks_1.6.6.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pysocks_1.6.7.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pysocks_1.6.6.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pysocks_1.6.7.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_2.11.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_2.12.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_2.11.1.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_2.12.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest_3.0.6.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest_3.2.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest_3.0.6.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest_3.2.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyudev_0.21.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyudev_0.21.0.bb
new file mode 100644
index 0000000..0292555
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyudev_0.21.0.bb
@@ -0,0 +1,8 @@
+require python-pyudev.inc
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-lang \
+"
+
+inherit pypi setuptools3
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyusb_1.0.0b2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyusb_1.0.0b2.bb
new file mode 100644
index 0000000..813e6f0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-pyusb_1.0.0b2.bb
@@ -0,0 +1,2 @@
+inherit distutils3
+require python-pyusb.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-redis_2.10.5.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-redis_2.10.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-redis_2.10.5.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-redis_2.10.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests-file_1.4.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests-file_1.4.2.bb
new file mode 100644
index 0000000..8652876
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests-file_1.4.2.bb
@@ -0,0 +1,14 @@
+SUMMARY = "File transport adapter for Requests"
+HOMEPAGE = "http://github.com/dashea/requests-file"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=9cc728d6087e43796227b0a31422de6b"
+
+SRC_URI[md5sum] = "a907efb75faf0ccbb1857432bf9d8c0f"
+SRC_URI[sha256sum] = "f518e7cfe048e053fd1019dfb891b4c55b871c56c5a31693d733240c80b8f191"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += " \
+    python3-requests \
+"
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests-ftp_0.3.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests-ftp_0.3.1.bb
new file mode 100644
index 0000000..3f99ed6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests-ftp_0.3.1.bb
@@ -0,0 +1,14 @@
+SUMMARY = "FTP Transport Adapter for Requests"
+HOMEPAGE = "http://github.com/Lukasa/requests-ftp"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=6683a23c9968b97709441dc884d46df6"
+
+SRC_URI[md5sum] = "1a52ad1219e696b5abd5449d1ccc0294"
+SRC_URI[sha256sum] = "7504ceb5cba8a5c0135ed738596820a78c5f2be92d79b29f96ba99b183d8057a"
+
+inherit pypi setuptools3
+
+RDEPENDS_${PN} += " \
+    python3-requests \
+"
+
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.13.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.18.4.bb
similarity index 81%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.13.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.18.4.bb
index 5e869b7..d91d993 100644
--- a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.13.0.bb
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-requests_2.18.4.bb
@@ -1,4 +1,4 @@
-inherit pypi setuptools3
+inherit setuptools3
 require python-requests.inc
 
 # Add the runtime depends for selectors.py
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sdnotify_0.3.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sdnotify_0.3.2.bb
new file mode 100644
index 0000000..377af12
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sdnotify_0.3.2.bb
@@ -0,0 +1,2 @@
+inherit setuptools3 pypi
+require python-sdnotify.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-serpent_1.19.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-serpent_1.23.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-serpent_1.19.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-serpent_1.23.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-setuptools-scm_1.15.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-setuptools-scm_1.15.6.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-setuptools-scm_1.15.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-setuptools-scm_1.15.6.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-simplejson_3.10.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-simplejson_3.11.1.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-simplejson_3.10.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-simplejson_3.11.1.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.1.9.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.1.14.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.1.9.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-sqlalchemy_1.1.14.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-tornado_4.4.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-tornado_4.5.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-tornado_4.4.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-tornado_4.5.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_17.9.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_17.9.0.bb
new file mode 100644
index 0000000..d7533d8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_17.9.0.bb
@@ -0,0 +1,67 @@
+inherit pypi setuptools3
+require python-twisted.inc
+
+RDEPENDS_${PN}-core += "python3-lang"
+
+FILES_${PN}-core_append += " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/__pycache__ \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/python/__pycache__/*pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/__init__*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/notestplugin*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/testplugin*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_ftp*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_inet*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_manhole*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_portforward*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_socks*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_telnet*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_trial*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_core*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_qtstub*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_reactors*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/cred*.pyc \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/dropin*.cache \
+"
+
+FILES_${PN}-names_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_names*.pyc \
+"
+
+FILES_${PN}-news_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_news*.pyc \
+"
+
+FILES_${PN}-protocols_append += " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/protocols/__pycache__/*pyc \
+"
+
+FILES_${PN}-conch_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_conch*.pyc \
+"
+
+FILES_${PN}-lore_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_lore*.pyc \
+"
+FILES_${PN}-mail_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_mail*.pyc \
+"
+
+FILES_${PN}-web_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_web*.pyc \
+"
+
+FILES_${PN}-words_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_words*.pyc \
+"
+
+FILES_${PN}-flow_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_flow*.pyc \
+"
+
+FILES_${PN}-pair_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_pair*.pyc \
+"
+
+FILES_${PN}-runner_append = " \
+  ${libdir}/${PYTHON_DIR}/site-packages/twisted/plugins/__pycache__/twisted_runner*.pyc \
+"
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ujson_1.35.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ujson_1.35.bb
new file mode 100644
index 0000000..ae4cc0a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-ujson_1.35.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-ujson.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-unidiff_0.5.4.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-unidiff_0.5.4.bb
new file mode 100644
index 0000000..0ddc7e2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-unidiff_0.5.4.bb
@@ -0,0 +1,2 @@
+require python-unidiff.inc
+inherit setuptools3
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.2.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.22.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.2.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-urllib3_1.22.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-webencodings_0.5.1.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-webencodings_0.5.1.bb
new file mode 100644
index 0000000..71fe741
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-webencodings_0.5.1.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-webencodings.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_0.11.15.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_0.12.2.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_0.11.15.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-werkzeug_0.12.2.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-wrapt_1.10.11.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-wrapt_1.10.11.bb
new file mode 100644
index 0000000..85f446e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-wrapt_1.10.11.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-wrapt.inc
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-xlrd_1.0.0.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-xlrd_1.1.0.bb
similarity index 100%
rename from import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-xlrd_1.0.0.bb
rename to import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-xlrd_1.1.0.bb
diff --git a/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.4.3.bb b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.4.3.bb
new file mode 100644
index 0000000..be11858
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.4.3.bb
@@ -0,0 +1,4 @@
+inherit pypi setuptools3
+require python-zopeinterface.inc
+
+RDEPENDS_${PN}-test += "python3-unittest python3-doctest"