From owner-svn-ports-head@freebsd.org Tue Mar 15 15:19:36 2016 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 834B2AD2DDF; Tue, 15 Mar 2016 15:19:36 +0000 (UTC) (envelope-from ohauer@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 45C88DD9; Tue, 15 Mar 2016 15:19:36 +0000 (UTC) (envelope-from ohauer@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u2FE2A3O044003; Tue, 15 Mar 2016 14:02:10 GMT (envelope-from ohauer@FreeBSD.org) Received: (from ohauer@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u2FE296d043997; Tue, 15 Mar 2016 14:02:09 GMT (envelope-from ohauer@FreeBSD.org) Message-Id: <201603151402.u2FE296d043997@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ohauer set sender to ohauer@FreeBSD.org using -f From: Olli Hauer Date: Tue, 15 Mar 2016 14:02:09 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r411163 - in head/www/mod_python35: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Mar 2016 15:19:36 -0000 Author: ohauer Date: Tue Mar 15 14:02:09 2016 New Revision: 411163 URL: https://svnweb.freebsd.org/changeset/ports/411163 Log: - update patch to reflect latest commit on github (there is no new release sinc 2013 ...) - do not alter httpd.conf, install a dedicated module file PR: 204793 Submitted by: SBB Added: head/www/mod_python35/files/270_mod_python.conf.sample.in (contents, props changed) head/www/mod_python35/files/patch-test_test.py (contents, props changed) head/www/mod_python35/files/pkg-message.in - copied, changed from r411157, head/www/mod_python35/pkg-message Deleted: head/www/mod_python35/pkg-message Modified: head/www/mod_python35/Makefile head/www/mod_python35/files/patch-mod_python35 head/www/mod_python35/pkg-plist Modified: head/www/mod_python35/Makefile ============================================================================== --- head/www/mod_python35/Makefile Tue Mar 15 13:48:00 2016 (r411162) +++ head/www/mod_python35/Makefile Tue Mar 15 14:02:09 2016 (r411163) @@ -3,7 +3,7 @@ PORTNAME= mod_python PORTVERSION= 3.5.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www python MASTER_SITES= http://dist.modpython.org/dist/ \ LOCAL/ohauer @@ -21,6 +21,7 @@ CONFLICTS_INSTALL= ap2[24]-mod_python3[^ USE_APACHE= 22+ USES= cpe python tar:tgz CPE_VENDOR= apache +SUB_FILES= pkg-message 270_mod_python.conf.sample GNU_CONFIGURE= yes CONFIGURE_ARGS+= --with-apxs="${APXS}" \ @@ -33,8 +34,13 @@ MAKE_ENV= EXPR_COMPAT=yes PLIST_SUB+= PORTVERSION=${PORTVERSION} \ PYTHON_VER=${PYTHON_VER} +post-install: + @${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEETCDIR}/modules.d + ${INSTALL_DATA} ${WRKDIR}/270_mod_python.conf.sample ${STAGEDIR}${PREFIX}/${APACHEETCDIR}/modules.d + # You need to install apache & mod_python before you run this regression-test: build + ${REINPLACE_CMD} -e 's|%%APACHEMODDIR%%|${APACHEMODDIR}|' ${WRKSRC}/test/test.py -@${MAKE} test -C ${WRKSRC} .include Added: head/www/mod_python35/files/270_mod_python.conf.sample.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/mod_python35/files/270_mod_python.conf.sample.in Tue Mar 15 14:02:09 2016 (r411163) @@ -0,0 +1,11 @@ +## $FreeBSD$ +## vim: set filetype=apache: +## +## module file for mod_python 3.5.x +## +## PROVIDE: mod_python +## REQUIRE: + +## make sure the following module is activated (httpd.conf or here) +#LoadModule python_module %%APACHEMODDIR%%/mod_python.so + Modified: head/www/mod_python35/files/patch-mod_python35 ============================================================================== --- head/www/mod_python35/files/patch-mod_python35 Tue Mar 15 13:48:00 2016 (r411162) +++ head/www/mod_python35/files/patch-mod_python35 Tue Mar 15 14:02:09 2016 (r411163) @@ -1,7 +1,6 @@ -diff -nru ./Doc/Makefile.in ./Doc/Makefile.in ---- ./Doc/Makefile.in 2013-11-12 04:21:34.000000000 +0100 -+++ ./Doc/Makefile.in 2014-04-15 17:27:39.000000000 +0200 -@@ -16,7 +16,7 @@ +--- Doc/Makefile.in.orig 2013-11-12 03:21:34 UTC ++++ Doc/Makefile.in +@@ -16,7 +16,7 @@ ALLSPHINXOPTS = -b $(BUILDER) -d build/d $(SPHINXOPTS) . build/$(BUILDER) $(SOURCES) .PHONY: help checkout update build html htmlhelp latex text changes linkcheck \ @@ -10,7 +9,7 @@ diff -nru ./Doc/Makefile.in ./Doc/Makefi autobuild-dev autobuild-stable help: -@@ -102,8 +102,6 @@ +@@ -102,8 +102,6 @@ coverage: build htmlview: html $(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')" @@ -19,9 +18,18 @@ diff -nru ./Doc/Makefile.in ./Doc/Makefi clean: -rm -rf build/* -rm -rf tools/sphinx -diff -nru ./Doc/changes.rst ./Doc/changes.rst ---- ./Doc/changes.rst 2013-11-12 04:21:34.000000000 +0100 -+++ ./Doc/changes.rst 2014-04-15 17:27:39.000000000 +0200 +@@ -111,6 +109,9 @@ clean: + -rm -rf tools/jinja2 + -rm -rf tools/docutils + ++distclean: clean ++ rm -f Makefile ++ + dist: + rm -rf dist + mkdir -p dist +--- Doc/changes.rst.orig 2013-11-12 03:21:34 UTC ++++ Doc/changes.rst @@ -5,22 +5,6 @@ Changes ******* @@ -45,19 +53,17 @@ diff -nru ./Doc/changes.rst ./Doc/change .. _changes_from_3_3_1: Changes from version 3.3.1 -diff -nru ./NEWS ./NEWS ---- ./NEWS 2013-11-12 04:21:34.000000000 +0100 -+++ ./NEWS 2014-04-15 17:27:39.000000000 +0200 +--- NEWS.orig 2013-11-12 03:21:34 UTC ++++ NEWS @@ -1,3 +1,5 @@ +Nov 13 2013 - 3.5.0 released + Oct 22 2013 - 3.4.1 released Jan 29 2007 - 3.3.1 is being tagged -diff -nru ./configure ./configure ---- ./configure 2013-11-12 04:21:34.000000000 +0100 -+++ ./configure 2014-04-15 17:27:39.000000000 +0200 -@@ -3340,11 +3340,7 @@ +--- configure.orig 2013-11-12 03:21:34 UTC ++++ configure +@@ -3340,11 +3340,7 @@ PyMAJVERSION=`$PYTHON_BIN -c 'import sys PyMINVERSION=`$PYTHON_BIN -c 'import sys; print(sys.version.split(".")[1])'` { $as_echo "$as_me:$LINENO: result: $PyVERSION" >&5 $as_echo "$PyVERSION" >&6; } @@ -70,7 +76,7 @@ diff -nru ./configure ./configure # make sure Python version is >= 2.6 for 2 and >= 3.3 for 3 if test "$PyMAJVERSION" -lt "2"; then { { $as_echo "$as_me:$LINENO: error: This version of mod_python only works with Python major version 2 or higher. The one you have seems to be $PyVERSION." >&5 -@@ -3395,8 +3391,7 @@ +@@ -3395,8 +3391,7 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-fr LDFLAGS="${LDFLAGS1} ${LDFLAGS2}" if test "$PyMAJVERSION" -eq "3"; then @@ -80,10 +86,9 @@ diff -nru ./configure ./configure else LDLIBS1="-lpython${PyVERSION}" fi -diff -nru ./configure.in ./configure.in ---- ./configure.in 2013-11-12 04:21:34.000000000 +0100 -+++ ./configure.in 2014-04-15 17:27:39.000000000 +0200 -@@ -171,9 +171,7 @@ +--- configure.in.orig 2013-11-12 03:21:34 UTC ++++ configure.in +@@ -171,9 +171,7 @@ PyVERSION=`$PYTHON_BIN -c ['import sys; PyMAJVERSION=`$PYTHON_BIN -c ['import sys; print(sys.version[:1])'`] PyMINVERSION=`$PYTHON_BIN -c ['import sys; print(sys.version.split(".")[1])'`] AC_MSG_RESULT($PyVERSION) @@ -94,7 +99,7 @@ diff -nru ./configure.in ./configure.in # make sure Python version is >= 2.6 for 2 and >= 3.3 for 3 if test "$PyMAJVERSION" -lt "2"; then AC_MSG_ERROR([This version of mod_python only works with Python major version 2 or higher. The one you have seems to be $PyVERSION.]) -@@ -218,8 +216,7 @@ +@@ -218,8 +216,7 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-fr LDFLAGS="${LDFLAGS1} ${LDFLAGS2}" if test "$PyMAJVERSION" -eq "3"; then @@ -104,7 +109,7 @@ diff -nru ./configure.in ./configure.in else LDLIBS1="-lpython${PyVERSION}" fi -@@ -326,9 +323,9 @@ +@@ -326,9 +323,9 @@ if test "$LEX" && test -x "$LEX"; then AC_MSG_CHECKING(flex version) FlexVERSION=`$LEX --version | sed 's/version//g' | awk '/flex/ {print $2}'` @@ -117,10 +122,9 @@ diff -nru ./configure.in ./configure.in if test "$Flex_MAJOR" -eq "2" && test "$Flex_MINOR" -eq "5" && test "$Flex_PATCH" -ge "31"; then AC_MSG_RESULT([$FlexVERSION. Good]) -diff -nru ./dist/version.sh ./dist/version.sh ---- ./dist/version.sh 2013-11-12 04:21:34.000000000 +0100 -+++ ./dist/version.sh 2014-04-15 17:27:39.000000000 +0200 -@@ -5,6 +5,17 @@ +--- dist/version.sh.orig 2013-11-12 03:21:34 UTC ++++ dist/version.sh +@@ -5,6 +5,17 @@ MPV_PATH="`dirname $0`/../src/include/mp MAJ=`awk '/MP_VERSION_MAJOR/ {print $3}' $MPV_PATH` MIN=`awk '/MP_VERSION_MINOR/ {print $3}' $MPV_PATH` PCH=`awk '/MP_VERSION_PATCH/ {print $3}' $MPV_PATH` @@ -140,11 +144,9 @@ diff -nru ./dist/version.sh ./dist/versi +fi + +echo $MAJ.$MIN.$PCH$GIT -Only in ./: doc-html -diff -nru ./lib/python/mod_python/Cookie.py ./lib/python/mod_python/Cookie.py ---- ./lib/python/mod_python/Cookie.py 2013-11-12 04:21:34.000000000 +0100 -+++ ./lib/python/mod_python/Cookie.py 2014-04-15 17:27:39.000000000 +0200 -@@ -59,7 +59,7 @@ +--- lib/python/mod_python/Cookie.py.orig 2013-11-12 03:21:34 UTC ++++ lib/python/mod_python/Cookie.py +@@ -59,7 +59,7 @@ class metaCookie(type): _valid_attr = ( "version", "path", "domain", "secure", @@ -153,9 +155,36 @@ diff -nru ./lib/python/mod_python/Cookie # RFC 2965 "commentURL", "discard", "port", # Microsoft Extension -diff -nru ./scripts/mod_python.in ./scripts/mod_python.in ---- ./scripts/mod_python.in 2013-11-12 04:21:34.000000000 +0100 -+++ ./scripts/mod_python.in 2014-04-15 17:27:39.000000000 +0200 +--- lib/python/mod_python/util.py.orig 2013-11-12 03:21:34 UTC ++++ lib/python/mod_python/util.py +@@ -156,7 +156,7 @@ else: + disp_options = None + + def __new__(self, value): +- return bytes.__new__(self, value) ++ return bytes.__new__(self, value, "utf8") + + def __init__(self, value): + self.value = value +--- scripts/Makefile.in.orig 2013-11-12 03:21:34 UTC ++++ scripts/Makefile.in +@@ -17,7 +17,7 @@ + # + + INSTALL=@INSTALL@ +-BINDIR=@prefix@/bin ++BINDIR=`dirname @PYTHON_BIN@` + + clean: + rm -rf *~ +@@ -26,4 +26,5 @@ distclean: clean + rm -f Makefile + + install: ++ $(INSTALL) -m 0755 -d $(DESTDIR)$(BINDIR) + $(INSTALL) -m 0755 mod_python $(DESTDIR)$(BINDIR)/mod_python +--- scripts/mod_python.in.orig 2013-11-12 03:21:34 UTC ++++ scripts/mod_python.in @@ -26,7 +26,7 @@ import sys import os @@ -165,7 +194,7 @@ diff -nru ./scripts/mod_python.in ./scri import mod_python from mod_python import httpdconf -@@ -64,7 +64,7 @@ +@@ -64,7 +64,7 @@ def cmd_genconfig(): if len(args) != 1: parser.error("Must specify ") @@ -174,19 +203,9 @@ diff -nru ./scripts/mod_python.in ./scri def cmd_create(): -@@ -105,7 +105,7 @@ - - version = "\n" - version += "mod_python: %s\n" % mod_python.mp_version -- version += " %s\n\n" % repr(os.path.join(mod_python.version.LIBEXECDIR, "mod_python.so")) -+ version += " %s\n\n" % repr(s.path.join(mod_python.version.LIBEXECDIR, "mod_python.so")) - version += "python: %s\n" % ''.join(sys.version.splitlines()) - version += " %s\n\n" % repr(mod_python.version.PYTHON_BIN) - version += "httpd: %s\n" % mod_python.version.HTTPD_VERSION -diff -nru ./src/Makefile.in ./src/Makefile.in ---- ./src/Makefile.in 2013-11-12 04:21:34.000000000 +0100 -+++ ./src/Makefile.in 2014-04-15 17:27:39.000000000 +0200 -@@ -50,7 +50,7 @@ +--- src/Makefile.in.orig 2013-11-12 03:21:34 UTC ++++ src/Makefile.in +@@ -50,11 +50,11 @@ psp_parser.c: psp_parser.l dso: mod_python.so @@ -195,7 +214,12 @@ diff -nru ./src/Makefile.in ./src/Makefi @echo @echo 'Building mod_python.so.' @echo -@@ -64,21 +64,17 @@ +- $(APXS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) -c $(SRCS) $(LDFLAGS) $(LDLIBS) @SOLARIS_HACKS@ ++ $(APXS) $(INCLUDES) $(CPPFLAGS) $(APXSFLAGS) $(CFLAGS) -c $(SRCS) $(LDFLAGS) $(LDLIBS) @SOLARIS_HACKS@ + @rm -f mod_python.so + @ln -s .libs/mod_python.so mod_python.so + clean: +@@ -64,21 +64,17 @@ distclean: clean rm -f Makefile .depend version.c: @@ -221,10 +245,36 @@ diff -nru ./src/Makefile.in ./src/Makefi # SOLARIS_HACKS above _eprintf.o: ar -x `gcc -print-libgcc-file-name` _eprintf.o -diff -nru ./src/include/mod_python.h ./src/include/mod_python.h ---- ./src/include/mod_python.h 2013-11-12 04:21:34.000000000 +0100 -+++ ./src/include/mod_python.h 2014-04-15 17:27:39.000000000 +0200 -@@ -156,7 +156,6 @@ +--- src/_apachemodule.c.orig 2013-11-12 03:21:34 UTC ++++ src/_apachemodule.c +@@ -213,9 +213,11 @@ static PyObject *parse_qs(PyObject *self + cval = PyBytes_AS_STRING(val); + + if (unicode) { ++ // The query string is supposed to be a valid UTF8 string ++ // https://url.spec.whatwg.org/#percent-encoded-bytes + PyObject *list, *ukey, *uval; +- ukey = PyUnicode_DecodeLatin1(ckey, strlen(ckey), NULL); +- uval = PyUnicode_DecodeLatin1(ckey, strlen(cval), NULL); ++ ukey = PyUnicode_DecodeUTF8(ckey, strlen(ckey), NULL); ++ uval = PyUnicode_DecodeUTF8(ckey, strlen(cval), NULL); + list = PyDict_GetItem(dict, ukey); + if (list) { + PyList_Append(list, uval); +@@ -371,8 +373,8 @@ static PyObject *parse_qsl(PyObject *sel + PyObject *listitem = NULL; + if (unicode) { + PyObject *ukey, *uval; +- ukey = PyUnicode_DecodeLatin1(ckey, strlen(ckey), NULL); +- uval = PyUnicode_DecodeLatin1(cval, strlen(cval), NULL); ++ ukey = PyUnicode_DecodeUTF8(ckey, strlen(ckey), NULL); ++ uval = PyUnicode_DecodeUTF8(cval, strlen(cval), NULL); + listitem = Py_BuildValue("(O,O)", ukey, uval); + Py_DECREF(ukey); + Py_DECREF(uval); +--- src/include/mod_python.h.orig 2013-11-12 03:21:34 UTC ++++ src/include/mod_python.h +@@ -156,7 +156,6 @@ extern module AP_MODULE_DECLARE_DATA pyt #define MUTEX_DIR "/tmp" /* version stuff */ @@ -232,7 +282,7 @@ diff -nru ./src/include/mod_python.h ./s extern const int mp_version_major; extern const int mp_version_minor; extern const int mp_version_patch; -@@ -267,7 +266,7 @@ +@@ -267,7 +266,7 @@ APR_DECLARE_OPTIONAL_FN(PyObject *, mp_g if (PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 && \ PyUnicode_KIND(obj) == PyUnicode_1BYTE_KIND) { \ if (obj_is_borrowed) Py_INCREF(obj); /* so DECREF ok */ \ @@ -241,7 +291,7 @@ diff -nru ./src/include/mod_python.h ./s } else { \ PyObject *latin = PyUnicode_AsLatin1String(obj); \ if (latin) { \ -@@ -292,11 +291,11 @@ +@@ -292,11 +291,11 @@ static inline PyObject *MpObject_ReprAsB PyObject *result; PyObject *ucode = PyObject_Repr(o); /* we can do this because repr() should never have non-ascii characters XXX (really?) */ @@ -256,10 +306,9 @@ diff -nru ./src/include/mod_python.h ./s Py_DECREF(ucode); return result; } -diff -nru ./src/include/mod_python.h.in ./src/include/mod_python.h.in ---- ./src/include/mod_python.h.in 2013-11-12 04:21:34.000000000 +0100 -+++ ./src/include/mod_python.h.in 2014-04-15 17:27:39.000000000 +0200 -@@ -156,7 +156,6 @@ +--- src/include/mod_python.h.in.orig 2013-11-12 03:21:34 UTC ++++ src/include/mod_python.h.in +@@ -156,7 +156,6 @@ extern module AP_MODULE_DECLARE_DATA pyt #define MUTEX_DIR "@MUTEX_DIR@" /* version stuff */ @@ -267,7 +316,7 @@ diff -nru ./src/include/mod_python.h.in extern const int mp_version_major; extern const int mp_version_minor; extern const int mp_version_patch; -@@ -267,7 +266,7 @@ +@@ -267,7 +266,7 @@ APR_DECLARE_OPTIONAL_FN(PyObject *, mp_g if (PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 && \ PyUnicode_KIND(obj) == PyUnicode_1BYTE_KIND) { \ if (obj_is_borrowed) Py_INCREF(obj); /* so DECREF ok */ \ @@ -276,7 +325,7 @@ diff -nru ./src/include/mod_python.h.in } else { \ PyObject *latin = PyUnicode_AsLatin1String(obj); \ if (latin) { \ -@@ -292,11 +291,11 @@ +@@ -292,11 +291,11 @@ static inline PyObject *MpObject_ReprAsB PyObject *result; PyObject *ucode = PyObject_Repr(o); /* we can do this because repr() should never have non-ascii characters XXX (really?) */ @@ -291,19 +340,17 @@ diff -nru ./src/include/mod_python.h.in Py_DECREF(ucode); return result; } -diff -nru ./src/include/mp_version.h ./src/include/mp_version.h ---- ./src/include/mp_version.h 2013-11-12 04:21:34.000000000 +0100 -+++ ./src/include/mp_version.h 2014-04-15 17:27:39.000000000 +0200 +--- src/include/mp_version.h.orig 2013-11-12 03:21:34 UTC ++++ src/include/mp_version.h @@ -10,5 +10,3 @@ #define MP_VERSION_MINOR 5 #define MP_VERSION_PATCH 0 -#define STR(x) #x -#define MP_VERSION_STRING(maj, min, p) STR(maj) "." STR(min) "." STR(p) -diff -nru ./src/mod_python.c ./src/mod_python.c ---- ./src/mod_python.c 2013-11-12 04:21:34.000000000 +0100 -+++ ./src/mod_python.c 2014-04-15 17:27:39.000000000 +0200 -@@ -748,10 +748,10 @@ +--- src/mod_python.c.orig 2013-11-12 03:21:34 UTC ++++ src/mod_python.c +@@ -748,10 +748,10 @@ static int python_init(apr_pool_t *p, ap py_compile_version, py_dynamic_version); ap_log_error(APLOG_MARK, APLOG_ERR, 0, s, "python_init: Python executable found '%s'.", @@ -316,7 +363,27 @@ diff -nru ./src/mod_python.c ./src/mod_p } /* Python version */ -@@ -1795,7 +1795,7 @@ +@@ -772,8 +772,18 @@ static int python_init(apr_pool_t *p, ap + { + initialized = 1; + +- /* initialze the interpreter */ ++ /* disable user site directories */ ++ Py_NoUserSiteDirectory = 1; ++ ++ /* Initialze the main interpreter. We do not want site.py to ++ * be imported because as of Python 2.7.9 it would cause a ++ * circular dependency related to _locale which breaks ++ * graceful restart so we set Py_NoSiteFlag to 1 just for this ++ * one time. (https://github.com/grisha/mod_python/issues/46) ++ */ ++ Py_NoSiteFlag = 1; + Py_Initialize(); ++ Py_NoSiteFlag = 0; + + #ifdef WITH_THREAD + /* create and acquire the interpreter lock */ +@@ -1795,7 +1805,7 @@ static apr_status_t python_filter(int is } /* are we in transparent mode? transparent mode is on after an error, @@ -325,10 +392,18 @@ diff -nru ./src/mod_python.c ./src/mod_p if (ctx->transparent) { if (is_input) return ap_get_brigade(f->next, bb, mode, block, readbytes); -diff -nru ./src/requestobject.c ./src/requestobject.c ---- ./src/requestobject.c 2013-11-12 04:21:34.000000000 +0100 -+++ ./src/requestobject.c 2014-04-15 17:27:39.000000000 +0200 -@@ -1967,6 +1967,10 @@ +@@ -2646,7 +2656,7 @@ static void PythonChildInitHandler(apr_p + * problems as well. Thus disable cleanup of Python when + * child processes are being shutdown. (MODPYTHON-109) + * +- apr_pool_cleanup_register(p, NULL, python_finalize, apr_pool_cleanup_null); ++ * apr_pool_cleanup_register(p, NULL, python_finalize, apr_pool_cleanup_null); + */ + + /* +--- src/requestobject.c.orig 2013-11-12 03:21:34 UTC ++++ src/requestobject.c +@@ -1967,6 +1967,10 @@ static int setreq_recmbr(requestobject * return 0; } else if (strcmp(name, "args") == 0) { Added: head/www/mod_python35/files/patch-test_test.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/mod_python35/files/patch-test_test.py Tue Mar 15 14:02:09 2016 (r411163) @@ -0,0 +1,15 @@ +--- test/test.py.orig 2013-11-12 03:21:34 UTC ++++ test/test.py +@@ -310,6 +310,12 @@ class HttpdCtrl: + modpath = LIBEXECDIR + + s = Container( ++ IfModule("!prefork.c", ++ IfModule("!worker.c", ++ IfModule("!perchild.c", ++ IfModule("!mpm_winnt.c", ++ LoadModule("mpm_prefork_module %%APACHEMODDIR%%/mod_mpm_prefork.so"), ++ )))), + IfModule("prefork.c", + StartServers("3"), + MaxSpareServers("1")), Copied and modified: head/www/mod_python35/files/pkg-message.in (from r411157, head/www/mod_python35/pkg-message) ============================================================================== --- head/www/mod_python35/pkg-message Tue Mar 15 12:37:33 2016 (r411157, copy source) +++ head/www/mod_python35/files/pkg-message.in Tue Mar 15 14:02:09 2016 (r411163) @@ -1,5 +1,8 @@ ================================================================================ +The mod_python module is no longer activated in httpd.conf! +There is now a dedicated modules file in %%APACHEETCDIR%%/modules.d + Also remember to add to your Apache configuration in the appropriate context: PythonPath "['/path/to/foo', '/path/to/bar']" Modified: head/www/mod_python35/pkg-plist ============================================================================== --- head/www/mod_python35/pkg-plist Tue Mar 15 13:48:00 2016 (r411162) +++ head/www/mod_python35/pkg-plist Tue Mar 15 14:02:09 2016 (r411163) @@ -1,4 +1,5 @@ bin/mod_python +@sample %%APACHEETCDIR%%/modules.d/270_mod_python.conf.sample %%PYTHON_SITELIBDIR%%/mod_python-%%PORTVERSION%%-py%%PYTHON_VER%%.egg-info %%PYTHON_SITELIBDIR%%/mod_python/Cookie.py %%PYTHON_SITELIBDIR%%/mod_python/Cookie.pyc @@ -43,7 +44,4 @@ bin/mod_python %%PYTHON_SITELIBDIR%%/mod_python/wsgi.py %%PYTHON_SITELIBDIR%%/mod_python/wsgi.pyc %%PYTHON_SITELIBDIR%%/mod_python/wsgi.pyo -@unexec /usr/bin/sed -i '' '/LoadModule %%AP_NAME%%_module/d' %D/%%APACHEETCDIR%%/httpd.conf %%APACHEMODDIR%%/%%AP_MODULE%% -@exec %D/sbin/apxs -e %%AP_MOD_EN%% -n %%AP_NAME%% %D/%F -@unexec echo "Don't forget to remove all mod_%%AP_NAME%%-related directives in your httpd.conf"