From 69126bf68de2f064762d175f1e1372178f3cdc5d Mon Sep 17 00:00:00 2001 From: Rene Ladan Date: Wed, 12 Feb 2020 19:50:50 +0000 Subject: [PATCH] Remove expired port: 2020-01-27 net/py-xmlrpc: Unmaintained, uses EOLed python27 --- MOVED | 1 + net/Makefile | 1 - net/py-xmlrpc/Makefile | 36 --- net/py-xmlrpc/distinfo | 2 - net/py-xmlrpc/files/patch-extra | 333 -------------------- net/py-xmlrpc/files/patch-src_rpcBase64.c | 11 - net/py-xmlrpc/files/patch-src_rpcClient.c | 11 - net/py-xmlrpc/files/patch-src_rpcDate.c | 11 - net/py-xmlrpc/files/patch-src_rpcDispatch.c | 11 - net/py-xmlrpc/files/patch-src_rpcSource.c | 11 - net/py-xmlrpc/files/patch-src_rpcUtils.c | 11 - net/py-xmlrpc/pkg-descr | 7 - 12 files changed, 1 insertion(+), 445 deletions(-) delete mode 100644 net/py-xmlrpc/Makefile delete mode 100644 net/py-xmlrpc/distinfo delete mode 100644 net/py-xmlrpc/files/patch-extra delete mode 100644 net/py-xmlrpc/files/patch-src_rpcBase64.c delete mode 100644 net/py-xmlrpc/files/patch-src_rpcClient.c delete mode 100644 net/py-xmlrpc/files/patch-src_rpcDate.c delete mode 100644 net/py-xmlrpc/files/patch-src_rpcDispatch.c delete mode 100644 net/py-xmlrpc/files/patch-src_rpcSource.c delete mode 100644 net/py-xmlrpc/files/patch-src_rpcUtils.c delete mode 100644 net/py-xmlrpc/pkg-descr diff --git a/MOVED b/MOVED index 2261c605b2ba..66fb9debc7a2 100644 --- a/MOVED +++ b/MOVED @@ -14249,3 +14249,4 @@ sysutils/hachoir-metadata||2020-02-11|Has expired: Outdated, uses EOLed python27 sysutils/hachoir-subfile||2020-02-11|Has expired: Outdated, uses EOLed python27 sysutils/hachoir-urwid||2020-02-11|Has expired: Outdated, uses EOLed python27 sysutils/hachoir-wx||2020-02-11|Has expired: Outdated, uses EOLed python27 +net/py-xmlrpc||2020-02-12|Has expired: Unmaintained, uses EOLed python27 diff --git a/net/Makefile b/net/Makefile index 13a1bcbb92ba..05a1bbc610d9 100644 --- a/net/Makefile +++ b/net/Makefile @@ -1136,7 +1136,6 @@ SUBDIR += py-wmi-query SUBDIR += py-wolframalpha SUBDIR += py-wsproto - SUBDIR += py-xmlrpc SUBDIR += py-zeep SUBDIR += py-zeroconf SUBDIR += py-zope.proxy diff --git a/net/py-xmlrpc/Makefile b/net/py-xmlrpc/Makefile deleted file mode 100644 index 9cfb3935d08b..000000000000 --- a/net/py-xmlrpc/Makefile +++ /dev/null @@ -1,36 +0,0 @@ -# Created by: Hye-Shik Chang -# $FreeBSD$ - -PORTNAME= xmlrpc -PORTVERSION= 0.8.8.3 -PORTREVISION= 3 -CATEGORIES= net python -MASTER_SITES= SF/py-${PORTNAME}/source/py-${PORTNAME}-${PORTVERSION} -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -DISTNAME= py-${PORTNAME}-${PORTVERSION} - -MAINTAINER= ports@FreeBSD.org -COMMENT= Fast implementation of the xmlrpc spec for Python - -DEPRECATED= Unmaintained, uses EOLed python27 -EXPIRATION_DATE= 2020-01-27 - -LICENSE= LGPL21+ -LICENSE_FILE= ${WRKSRC}/COPYING - -USES= python:2.7 -USE_PYTHON= distutils autoplist - -OPTIONS_DEFINE= EXAMPLES - -EXAMPLESDIR= ${PREFIX}/share/examples/py-${PORTNAME} - -PORTEXAMPLES= * - -post-install: - ${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/_xmlrpc.so -post-install-EXAMPLES-on: - @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} - @(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}) - -.include diff --git a/net/py-xmlrpc/distinfo b/net/py-xmlrpc/distinfo deleted file mode 100644 index 34bdeb137fa0..000000000000 --- a/net/py-xmlrpc/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (py-xmlrpc-0.8.8.3.tar.gz) = 12527f130dd695184c44c6197deb619c26c9b5b31ce7699a5dd97e0ad2dd7bd1 -SIZE (py-xmlrpc-0.8.8.3.tar.gz) = 62260 diff --git a/net/py-xmlrpc/files/patch-extra b/net/py-xmlrpc/files/patch-extra deleted file mode 100644 index ce0a44272bee..000000000000 --- a/net/py-xmlrpc/files/patch-extra +++ /dev/null @@ -1,333 +0,0 @@ -Due to unresponsiveness of the development team of the py-xmlrpc, I'm sending -this change request here in hope it can help the developers that use this -port. - -The py-xmlrpc module has a problem with boolean type - it implements boolean -type internally thus creating difficulties on encode/decode path of the -boolean variables. I've changed the source code to use internal Python's -boolean type and this made things straight to the user of this module. - -Another change I've made to the module is support for the element. -Despite the fact this element isn't mentioned in the XML-RPC specification, -many of implementations support it, as this is the very convenient way to -pass null values from the environments with dynamic typing such as -Python, Perl, etc. - - ---- src/rpcBoolean.c.orig 2002-02-21 09:08:11.000000000 +0200 -+++ src/rpcBoolean.c 2008-10-15 10:41:34.000000000 +0300 -@@ -2,142 +2,3 @@ - * Copyright (C) 2001, Shilad Sen, Sourcelight Technologies, Inc. - * See xmlrpc.h or the README for more copyright information. - */ -- -- --#include "xmlrpc.h" --#include "rpcInternal.h" -- -- --static void rpcBoolDealloc(rpcBool *bp); --static int rpcBoolLength(rpcBool *bp); --static int rpcBoolCompare(rpcBool *b1, rpcBool *b2); --static PyObject *rpcBoolRepr(rpcBool *bp); -- -- --/* -- * create a new edb boolean object -- */ --PyObject * --rpcBoolNew(bool value) --{ -- rpcBool *bp; -- -- bp = PyObject_NEW(rpcBool, &rpcBoolType); -- if (bp == NULL) -- return NULL; -- bp->value = value; -- return (PyObject *)bp; --} -- -- --/* -- * get the value (true or false) of a boolean rpc object -- */ --bool --rpcBoolValue(PyObject *obj) --{ -- return ((rpcBool *)obj)->value; --} -- -- --/* -- * free resources associated with a boolean object -- */ --static void --rpcBoolDealloc(rpcBool *bp) --{ -- PyMem_DEL(bp); --} -- -- --/* -- * tell whether a boolean object is true or false -- */ --static int --rpcBoolLength(rpcBool *bp) --{ -- if (bp->value) -- return 1; -- else -- return 0; --} -- -- --/* -- * bool object to dictionary conversion -- */ --static PyMappingMethods rpcBoolAsMapping = { -- (inquiry)rpcBoolLength, /* mapping length */ -- (binaryfunc)NULL, /* mapping subscript */ -- (objobjargproc)NULL, /* mapping associate subscript */ --}; -- -- --/* -- * boolean comparison -- */ --static int --rpcBoolCompare(rpcBool *b1, rpcBool *b2) --{ -- if (not b1->value and not b2->value) -- return 0; -- else if (b1->value and b2->value) -- return 0; -- else -- return 1; --} -- -- --/* -- * represent a boolean xml object -- */ --static PyObject * --rpcBoolStr(rpcBool *bp) --{ -- if (bp->value) -- return PyString_FromString(""); -- else -- return PyString_FromString(""); --} -- -- --/* -- * represent a boolean xml object -- */ --static PyObject * --rpcBoolRepr(rpcBool *bp) --{ -- if (bp->value) -- return PyString_FromString("boolean(1)"); -- else -- return PyString_FromString("boolean(0)"); --} -- -- --/* -- * map characterstics of a boolean -- */ --PyTypeObject rpcBoolType = { -- PyObject_HEAD_INIT(0) -- 0, -- "rpcBoolean", -- sizeof(rpcBool), -- 0, -- (destructor)rpcBoolDealloc, /* tp_dealloc */ -- 0, /* tp_print */ -- 0, /* tp_getattr */ -- 0, /* tp_setattr */ -- (cmpfunc)rpcBoolCompare, /* tp_compare */ -- (reprfunc)rpcBoolRepr, /* tp_repr */ -- 0, /* tp_as_number */ -- 0, /* tp_as_sequence */ -- &rpcBoolAsMapping, /* tp_as_mapping */ -- 0, /* tp_hash */ -- 0, /* tp_call */ -- (reprfunc)rpcBoolStr, /* tp_str */ -- 0, /* tp_getattro */ -- 0, /* tp_setattro */ -- 0, /* tp_as_buffer */ -- 0, /* tp_xxx4 */ -- 0, /* tp_doc */ --}; ---- src/rpcBoolean.h.orig 2008-10-15 10:46:52.000000000 +0300 -+++ src/rpcBoolean.h 2008-10-15 10:46:59.000000000 +0300 -@@ -6,26 +6,3 @@ - * - */ - -- --#ifndef _RPCBOOL_H_ --#define _RPCBOOL_H_ -- -- --#include "rpcInclude.h" --PyTypeObject rpcBoolType; -- -- --/* -- * boolean object -- */ --typedef struct { -- PyObject_HEAD /* python standard */ -- bool value; /* true/false value */ --} rpcBool; -- -- --PyObject *rpcBoolNew(bool value); --bool rpcBoolValue(PyObject *obj); -- -- --#endif /* _RPCBOOL_H_ */ ---- src/rpcUtils.c.orig 2003-04-21 18:39:15.000000000 +0300 -+++ src/rpcUtils.c 2008-10-15 10:45:01.000000000 +0300 -@@ -47,6 +47,7 @@ - - static strBuff *encodeValue(strBuff *sp, PyObject *value, uint tabs); - static strBuff *encodeBool(strBuff *sp, PyObject *value); -+static strBuff *encodeNone(strBuff *sp); - static strBuff *encodeInt(strBuff *sp, PyObject *value); - static strBuff *encodeDouble(strBuff *sp, PyObject *value); - static strBuff *encodeString(strBuff *sp, PyObject *value); -@@ -63,6 +64,7 @@ - static PyObject *decodeString(char **cp, char *ep, ulong *lines); - static PyObject *decodeTaglessString(char **cp, char *ep, ulong *lines); - static PyObject *decodeBool(char **cp, char *ep, ulong *lines); -+static PyObject *decodeNone(char **cp, char *ep, ulong *lines); - static PyObject *decodeBase64(char **cp, char *ep, ulong *lines); - static PyObject *decodeArray(char **cp, char *ep, ulong *lines); - static PyObject *decodeStruct(char **cp, char *ep, ulong *lines); -@@ -205,11 +207,13 @@ - { - if (buffConstant(sp, "") == NULL) - return NULL; -- if (PyInt_Check(value) or PyLong_Check(value)) -+ if (PyInt_CheckExact(value) or PyLong_Check(value)) - sp = encodeInt(sp, value); -+ else if (value == Py_None) -+ sp = encodeNone(sp); - else if (PyFloat_Check(value)) - sp = encodeDouble(sp, value); -- else if (value->ob_type == &rpcBoolType) -+ else if (PyBool_Check(value)) - sp = encodeBool(sp, value); - else if (value->ob_type == &rpcDateType) - sp = encodeDate(sp, value); -@@ -286,12 +290,25 @@ - } - - /* -+ * encode the None as: "" -+ */ -+static strBuff * -+encodeNone(strBuff *sp) -+{ -+ if (buffConstant(sp, "") == NULL) -+ return NULL; -+ -+ return sp; -+} -+ -+/* -+/* - * encode the boolean true (for example) as: "1" - */ - static strBuff * - encodeBool(strBuff *sp, PyObject *value) - { -- if (((rpcBool *)value)->value) -+ if (value == Py_True) - return buffConstant(sp, "1"); - else - return buffConstant(sp, "0"); -@@ -569,6 +586,8 @@ - res = decodeDate(cp, ep, lines); - else if (strncmp(*cp, "", 8) == 0) - res = decodeBase64(cp, ep, lines); -+ else if (strncmp(*cp, "", 6) == 0) -+ res = decodeNone(cp, ep, lines); - else { /* it must be a string */ - *cp = tp; - res = decodeTaglessString(cp, ep, lines); -@@ -619,6 +638,20 @@ - - - static PyObject * -+decodeNone(char **cp, char *ep, ulong *lines) -+{ -+ if (*cp + 6 >= ep) -+ return eosErr(); -+ *cp += 6; -+ if (chompStr(cp, ep, lines) >= ep) -+ return eosErr(); -+ -+ Py_INCREF(Py_None); -+ return Py_None; -+} -+ -+ -+static PyObject * - decodeBool(char **cp, char *ep, ulong *lines) - { - PyObject *res; -@@ -638,7 +671,12 @@ - if (chompStr(cp, ep, lines) >= ep) - return eosErr(); - -- return rpcBoolNew(value); -+ if (value) { -+ Py_INCREF(Py_True); -+ return Py_True; -+ } -+ Py_INCREF(Py_False); -+ return Py_False; - } - - ---- src/xmlrpc.c.orig 2003-04-21 18:39:15.000000000 +0300 -+++ src/xmlrpc.c 2008-10-15 10:47:23.000000000 +0300 -@@ -45,7 +45,6 @@ - rpcLogLevel = 3; - rpcLogger = stderr; - rpcDateFormat = XMLRPC_DATE_FORMAT_US; -- rpcBoolType.ob_type = &PyType_Type; - rpcDateType.ob_type = &PyType_Type; - rpcBase64Type.ob_type = &PyType_Type; - rpcClientType.ob_type = &PyType_Type; ---- src/xmlrpc.h.orig 2003-04-21 18:39:15.000000000 +0300 -+++ src/xmlrpc.h 2008-10-15 10:40:35.000000000 +0300 -@@ -45,7 +45,6 @@ - #define XMLRPC_DATE_FORMAT_EUROPE 2 - - #include "rpcBase64.h" --#include "rpcBoolean.h" - #include "rpcClient.h" - #include "rpcDate.h" - #include "rpcDispatch.h" ---- src/xmlrpcmodule.c.orig 2003-04-21 19:22:54.000000000 +0300 -+++ src/xmlrpcmodule.c 2008-10-15 10:48:42.000000000 +0300 -@@ -197,7 +197,12 @@ - unless (PyArg_ParseTuple(args, "i", &value)) - return NULL; - -- return rpcBoolNew(value); -+ if (value) { -+ Py_INCREF(Py_True); -+ return Py_True; -+ } -+ Py_INCREF(Py_False); -+ return Py_False; - } - - - - diff --git a/net/py-xmlrpc/files/patch-src_rpcBase64.c b/net/py-xmlrpc/files/patch-src_rpcBase64.c deleted file mode 100644 index 631edb05c855..000000000000 --- a/net/py-xmlrpc/files/patch-src_rpcBase64.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/rpcBase64.c -+++ src/rpcBase64.c -@@ -239,7 +239,7 @@ - if (bp->value) { - Py_DECREF(bp->value); - } -- PyMem_DEL(bp); -+ PyObject_DEL(bp); - } - - diff --git a/net/py-xmlrpc/files/patch-src_rpcClient.c b/net/py-xmlrpc/files/patch-src_rpcClient.c deleted file mode 100644 index 5beb7a7c305c..000000000000 --- a/net/py-xmlrpc/files/patch-src_rpcClient.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/rpcClient.c -+++ src/rpcClient.c -@@ -179,7 +179,7 @@ - cp->url = NULL; - Py_DECREF(cp->src); - Py_DECREF(cp->disp); -- PyMem_DEL(cp); -+ PyObject_DEL(cp); - } - - diff --git a/net/py-xmlrpc/files/patch-src_rpcDate.c b/net/py-xmlrpc/files/patch-src_rpcDate.c deleted file mode 100644 index 98752b60dfa4..000000000000 --- a/net/py-xmlrpc/files/patch-src_rpcDate.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/rpcDate.c -+++ src/rpcDate.c -@@ -75,7 +75,7 @@ - if (dp->value) { - Py_DECREF(dp->value); - } -- PyMem_DEL(dp); -+ PyObject_DEL(dp); - } - - diff --git a/net/py-xmlrpc/files/patch-src_rpcDispatch.c b/net/py-xmlrpc/files/patch-src_rpcDispatch.c deleted file mode 100644 index d9826c066347..000000000000 --- a/net/py-xmlrpc/files/patch-src_rpcDispatch.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/rpcDispatch.c -+++ src/rpcDispatch.c -@@ -68,7 +68,7 @@ - rpcDispClear(dp); - free(dp->srcs); - } -- PyMem_DEL(dp); -+ PyObject_DEL(dp); - } - - diff --git a/net/py-xmlrpc/files/patch-src_rpcSource.c b/net/py-xmlrpc/files/patch-src_rpcSource.c deleted file mode 100644 index 936ff2daee23..000000000000 --- a/net/py-xmlrpc/files/patch-src_rpcSource.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/rpcSource.c -+++ src/rpcSource.c -@@ -61,7 +61,7 @@ - if (srcp->onErr and srcp->onErrType == ONERR_TYPE_PY) { - Py_DECREF((PyObject *)srcp->onErr); - } -- PyMem_DEL(srcp); -+ PyObject_DEL(srcp); - } - - diff --git a/net/py-xmlrpc/files/patch-src_rpcUtils.c b/net/py-xmlrpc/files/patch-src_rpcUtils.c deleted file mode 100644 index 3ea0e626f109..000000000000 --- a/net/py-xmlrpc/files/patch-src_rpcUtils.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/rpcUtils.c.orig -+++ src/rpcUtils.c -@@ -276,7 +280,7 @@ - double d; - - d = PyFloat_AS_DOUBLE(value); -- snprintf(buff, 255, "%f", d); -+ snprintf(buff, 255, "%.17f", d); - if ((buffConstant(sp, "") == NULL) - or (buffConcat(sp, buff) == NULL) - or (buffConstant(sp, "") == NULL)) diff --git a/net/py-xmlrpc/pkg-descr b/net/py-xmlrpc/pkg-descr deleted file mode 100644 index c1f8ca907cef..000000000000 --- a/net/py-xmlrpc/pkg-descr +++ /dev/null @@ -1,7 +0,0 @@ -A very fast implementation of the xmlrpc spec -for Python (written in C). It supports both blocking -and non-blocking clients and servers on Windows and -POSIX platforms. Version 0.8.1 is 100% compliant -with the www.xmlrpc.com validator. - -WWW: https://sourceforge.net/projects/py-xmlrpc/