diff options
author | Brad Bishop <bradleyb@us.ibm.com> | 2015-11-09 14:43:12 -0500 |
---|---|---|
committer | Brad Bishop <bradleyb@us.ibm.com> | 2015-11-09 15:53:53 -0500 |
commit | 8af1e9a63ba647881f7415c77f7feb7d8eebe616 (patch) | |
tree | 0de2e49bc5e7625cfeba5471db2656b447e1b31b /meta-phosphor/common/recipes-devtools/python | |
parent | 8f29b920a42ede3d2be0fa4a4753837523bf8ed3 (diff) | |
download | talos-openbmc-8af1e9a63ba647881f7415c77f7feb7d8eebe616.tar.gz talos-openbmc-8af1e9a63ba647881f7415c77f7feb7d8eebe616.zip |
Add Bottle recipe
Bottle is a python wsgi micro-framework for developing web
applications.
Diffstat (limited to 'meta-phosphor/common/recipes-devtools/python')
4 files changed, 72 insertions, 0 deletions
diff --git a/meta-phosphor/common/recipes-devtools/python/bottle.inc b/meta-phosphor/common/recipes-devtools/python/bottle.inc new file mode 100644 index 000000000..bfd5a48bd --- /dev/null +++ b/meta-phosphor/common/recipes-devtools/python/bottle.inc @@ -0,0 +1,18 @@ +SUMMARY = "Fast and simple WSGI-framework for small web-applications." +DESCRIPTION = "Bottle is a fast and simple micro-framework for small web \ +applications. It offers request dispatching (Routes) with url parameter \ +support, templates, a built-in HTTP Server and adapters for many third \ +party WSGI/HTTP-server and template engines - all in a single file and \ +with no dependencies other than the Python Standard Library." +HOMEPAGE = "http://bottlepy.org/" +SECTION = "devel/python" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=94b9b2cc7e46ccea87e00af8970826b5" + +inherit allarch +inherit setuptools + +# bottle doesn't send email...it uses a utility in here to parse rfc1123 and rfc850 timestamps. +RDEPENDS_${PN} += "python-email" + +BBCLASSEXTEND = "nativesdk" diff --git a/meta-phosphor/common/recipes-devtools/python/bottle/LICENSE b/meta-phosphor/common/recipes-devtools/python/bottle/LICENSE new file mode 100644 index 000000000..5f3e8de3a --- /dev/null +++ b/meta-phosphor/common/recipes-devtools/python/bottle/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2014, Marcel Hellkamp. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/meta-phosphor/common/recipes-devtools/python/bottle/json-format.patch b/meta-phosphor/common/recipes-devtools/python/bottle/json-format.patch new file mode 100644 index 000000000..9e754a996 --- /dev/null +++ b/meta-phosphor/common/recipes-devtools/python/bottle/json-format.patch @@ -0,0 +1,31 @@ +Index: bottle-0.12.9/bottle.py +=================================================================== +--- bottle-0.12.9.orig/bottle.py ++++ bottle-0.12.9/bottle.py +@@ -1721,8 +1721,10 @@ class JSONPlugin(object): + name = 'json' + api = 2 + +- def __init__(self, json_dumps=json_dumps): ++ def __init__(self, json_dumps=json_dumps, **kw): + self.json_dumps = json_dumps ++ self.json_kw = { x:y for x,y in kw.iteritems() \ ++ if x in ['indent','sort_keys'] } + + def apply(self, callback, route): + dumps = self.json_dumps +@@ -1735,12 +1737,12 @@ class JSONPlugin(object): + + if isinstance(rv, dict): + #Attempt to serialize, raises exception on failure +- json_response = dumps(rv) ++ json_response = dumps(rv, **self.json_kw) + #Set content type only if serialization succesful + response.content_type = 'application/json' + return json_response + elif isinstance(rv, HTTPResponse) and isinstance(rv.body, dict): +- rv.body = dumps(rv.body) ++ rv.body = dumps(rv.body, **self.json_kw) + rv.content_type = 'application/json' + return rv + diff --git a/meta-phosphor/common/recipes-devtools/python/bottle_0.12.9.bb b/meta-phosphor/common/recipes-devtools/python/bottle_0.12.9.bb new file mode 100644 index 000000000..72925e792 --- /dev/null +++ b/meta-phosphor/common/recipes-devtools/python/bottle_0.12.9.bb @@ -0,0 +1,4 @@ +require bottle.inc +SRC_URI = "https://pypi.python.org/packages/source/b/${BPN}/${BP}.tar.gz;name=tarball file://LICENSE file://json-format.patch" +SRC_URI[tarball.sha256sum] = "fe0a24b59385596d02df7ae7845fe7d7135eea73799d03348aeb9f3771500051" +SRC_URI[tarball.md5sum] = "f5850258a86224a791171e8ecbb66d99" |