Date: Fri, 2 Mar 2018 05:15:07 +0000 (UTC) From: Kubilay Kocak <koobs@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r463370 - in head/net: . py-flask-xml-rpc py-flask-xml-rpc/files Message-ID: <201803020515.w225F7D3043832@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: koobs Date: Fri Mar 2 05:15:06 2018 New Revision: 463370 URL: https://svnweb.freebsd.org/changeset/ports/463370 Log: [NEW] net/py-flask-xml-rpc: Adds support for creating XML-RPC APIs to Flask Flask-XML-RPC is an extension for Flask that makes it easy to create APIs based on the XML-RPC standard. It features easy registration of methods and namespacing, connects seamlessly to your Flask app, and includes plenty of testing helpers. WWW: https://bitbucket.org/leafstorm/flask-xml-rpc/ PR: 211435 Submitted by: John W. O'Brien <john saltant com> Added: head/net/py-flask-xml-rpc/ head/net/py-flask-xml-rpc/Makefile (contents, props changed) head/net/py-flask-xml-rpc/distinfo (contents, props changed) head/net/py-flask-xml-rpc/files/ head/net/py-flask-xml-rpc/files/patch-flaskext_xmlrpc.py (contents, props changed) head/net/py-flask-xml-rpc/files/patch-tests_test-xmlrpc.py (contents, props changed) head/net/py-flask-xml-rpc/pkg-descr (contents, props changed) Modified: head/net/Makefile Modified: head/net/Makefile ============================================================================== --- head/net/Makefile Fri Mar 2 05:13:39 2018 (r463369) +++ head/net/Makefile Fri Mar 2 05:15:06 2018 (r463370) @@ -999,6 +999,7 @@ SUBDIR += py-dugong SUBDIR += py-ec2-cli-tools SUBDIR += py-eventlet + SUBDIR += py-flask-xml-rpc SUBDIR += py-gntp SUBDIR += py-gspread SUBDIR += py-gspreadsheet Added: head/net/py-flask-xml-rpc/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net/py-flask-xml-rpc/Makefile Fri Mar 2 05:15:06 2018 (r463370) @@ -0,0 +1,26 @@ +# $FreeBSD$ + +PORTNAME= Flask-XML-RPC +PORTVERSION= 0.1.2 +CATEGORIES= net python +MASTER_SITES= CHEESESHOP +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= john@saltant.com +COMMENT= Adds support for creating XML-RPC APIs to Flask + +LICENSE= MIT + +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Flask>0:www/py-flask@${FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>0:devel/py-nose@${FLAVOR} + +NO_ARCH= yes + +# 2.7,3.4+ +USES= python +USE_PYTHON= autoplist distutils + +do-test: + @cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test + +.include <bsd.port.mk> Added: head/net/py-flask-xml-rpc/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net/py-flask-xml-rpc/distinfo Fri Mar 2 05:15:06 2018 (r463370) @@ -0,0 +1,3 @@ +TIMESTAMP = 1487439353 +SHA256 (Flask-XML-RPC-0.1.2.tar.gz) = 4adc7482240a916e8c2205cba38b4bd6e648692d189419686a3116768fa48ab7 +SIZE (Flask-XML-RPC-0.1.2.tar.gz) = 5756 Added: head/net/py-flask-xml-rpc/files/patch-flaskext_xmlrpc.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net/py-flask-xml-rpc/files/patch-flaskext_xmlrpc.py Fri Mar 2 05:15:06 2018 (r463370) @@ -0,0 +1,56 @@ +Obtained-From: https://bitbucket.org/leafstorm/flask-xml-rpc/pull-requests/2/added-python3-support-alongside-python2/commits + +# HG changeset patch +# User Maxime "Pepe_" Buquet <pep+code@bouah.net> +# Date 1425540278 -32400 +# Node ID 9da0e2bcfe5e32a1db95b639f41f67d3e1a43b80 +# Parent 06a6c81e3a98ecb647e729e239f5de11814901d3 +Added Python3 support alongside Python2 + +--- flaskext/xmlrpc.py.orig 2015-03-05 00:00:00 UTC ++++ flaskext/xmlrpc.py +@@ -10,9 +10,16 @@ + """ + + from flask import request, current_app +-from SimpleXMLRPCServer import SimpleXMLRPCDispatcher as Dispatcher + import sys +-import xmlrpclib ++ ++if sys.version_info[0] == 2: ++ from SimpleXMLRPCServer import SimpleXMLRPCDispatcher as Dispatcher ++ import xmlrpclib ++ string_types = basestring ++else: ++ from xmlrpc.server import SimpleXMLRPCDispatcher as Dispatcher ++ import xmlrpc.client as xmlrpclib ++ string_types = str + + Fault = xmlrpclib.Fault + +@@ -97,7 +104,7 @@ + If not given, the function's :obj:`__name__` attribute + will be used. + """ +- if isinstance(function, basestring): ++ if isinstance(function, string_types): + return lambda fn: self.register_function(fn, function) + return Dispatcher.register_function(self, function, name) + +@@ -198,7 +205,7 @@ + If not given, the function's :obj:`__name__` attribute + will be used. + """ +- if isinstance(function, basestring): ++ if isinstance(function, string_types): + return lambda fn: self.register_function(fn, function) + if name is None: + name = function.__name__ +@@ -249,7 +256,8 @@ + """ + try: + return xmlrpclib.loads(response)[0][0] +- except Fault, fault: ++ except Fault: ++ _, fault = sys.exec_info()[:2] + return fault Added: head/net/py-flask-xml-rpc/files/patch-tests_test-xmlrpc.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net/py-flask-xml-rpc/files/patch-tests_test-xmlrpc.py Fri Mar 2 05:15:06 2018 (r463370) @@ -0,0 +1,45 @@ +Obtained-From: https://bitbucket.org/leafstorm/flask-xml-rpc/pull-requests/2/added-python3-support-alongside-python2/commits + +# HG changeset patch +# User Maxime "Pepe_" Buquet <pep+code@bouah.net> +# Date 1425540278 -32400 +# Node ID 9da0e2bcfe5e32a1db95b639f41f67d3e1a43b80 +# Parent 06a6c81e3a98ecb647e729e239f5de11814901d3 +Added Python3 support alongside Python2 + +--- tests/test-xmlrpc.py.orig 2015-03-05 00:00:00 UTC ++++ tests/test-xmlrpc.py +@@ -7,12 +7,19 @@ + :copyright: (c) 2010 by Matthew "LeafStorm" Frazier. + :license: MIT, see LICENSE for more details. + """ +-import xmlrpclib + from flask import Flask + from flaskext.xmlrpc import (XMLRPCHandler, XMLRPCNamespace, Fault, + dump_method_call, load_method_response, + test_xmlrpc_call, XMLRPCTester) + ++import sys ++PY2 = sys.version_info[0] == 2 ++ ++if PY2: ++ import xmlrpclib ++else: ++ import xmlrpc.client as xmlrpclib ++ + + def hello(name='world'): + if not name: +@@ -39,7 +46,11 @@ + handler = XMLRPCHandler('api') + app = Flask(__name__) + handler.connect(app, '/api') +- assert app.view_functions[handler.endpoint_name].im_self is handler ++ if PY2: ++ app_handler = app.view_functions[handler.endpoint_name].im_self ++ else: ++ app_handler = app.view_functions[handler.endpoint_name].__self__ ++ assert app_handler is handler + + def test_register(self): + handler = XMLRPCHandler('api') Added: head/net/py-flask-xml-rpc/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net/py-flask-xml-rpc/pkg-descr Fri Mar 2 05:15:06 2018 (r463370) @@ -0,0 +1,6 @@ +Flask-XML-RPC is an extension for Flask that makes it easy to create APIs +based on the XML-RPC standard. It features easy registration of methods +and namespacing, connects seamlessly to your Flask app, and includes +plenty of testing helpers. + +WWW: https://bitbucket.org/leafstorm/flask-xml-rpc/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803020515.w225F7D3043832>