diff options
| author | Rene Ladan <rene@FreeBSD.org> | 2020-09-19 13:01:00 +0000 |
|---|---|---|
| committer | Rene Ladan <rene@FreeBSD.org> | 2020-09-19 13:01:00 +0000 |
| commit | b2e5755eb8260645c1601d3b2f26c3298ff0e858 (patch) | |
| tree | 28d1874e1dbd4cb62d6fbf7efe56d0063931b0ab /www/mod_python35/files/patch-mod_python35 | |
| parent | devel/chromium-gn: extend life to 2020-12-31 as it is a slave port of www/chr... (diff) | |
Remove expired ports:
2020-09-15 audio/abraca: Uses deprecated version of python
2020-09-15 audio/ardour5: Uses deprecated version of python
2020-09-15 audio/cplay: Uses deprecated version of python
2020-09-15 audio/cpp-xmms2: Uses deprecated version of python
2020-09-15 audio/p5-xmms2: Uses deprecated version of python
2020-09-15 biology/haplohseq: Uses deprecated version of python
2020-09-15 biology/tophat: Uses deprecated version of python
2020-09-15 chinese/ibus-array: Uses deprecated version of python
2020-09-15 comms/congruity: Uses deprecated version of python
2020-09-15 comms/libbtbb: Uses deprecated version of python
2020-09-15 comms/quisk: Uses deprecated version of python
2020-09-15 databases/mtools-mongodb: Uses deprecated version of python
2020-09-15 databases/mydbf2mysql: Uses deprecated version of python
2020-09-15 databases/ntdb: Uses deprecated version of python
2020-09-15 databases/pgloader: Uses deprecated version of python
2020-09-15 databases/pgtune: Uses deprecated version of python
2020-09-15 databases/postgresql-libpqxx3: Uses deprecated version of python
2020-09-15 databases/postgresql-libpqxx4: Uses deprecated version of python
2020-09-15 databases/py-sqlite3dbm: Uses deprecated version of python
2020-09-15 databases/pydbx: Uses deprecated version of python
2020-09-15 databases/pyspatialite: Uses deprecated version of python
2020-09-15 deskutils/ljcharm: Uses deprecated version of python
2020-09-15 deskutils/mat: Uses deprecated version of python
2020-09-15 devel/aap: Uses deprecated version of python
2020-09-15 devel/apr2: Uses deprecated version of python
2020-09-15 devel/bbfreeze-loader: Uses deprecated version of python
2020-09-15 devel/bicyclerepair: Uses deprecated version of python
2020-09-15 devel/bzrtools: Uses deprecated version of python
2020-09-15 devel/codeville: Uses deprecated version of python
2020-09-15 devel/cvs2svn: Uses deprecated version of python
2020-09-15 devel/cx_Freeze: Uses deprecated version of python
2020-09-15 devel/euca2ools: Uses deprecated version of python
2020-09-15 devel/evolution-gconf-tools: Uses deprecated version of python
2020-09-15 devel/git-bzr-ng: Uses deprecated version of python
2020-09-15 devel/git-cvs: Uses deprecated version of python
2020-09-15 devel/git-remote-hg: Uses deprecated version of python
2020-09-15 devel/grumpy: Uses deprecated version of python
2020-09-15 devel/hg-git: Uses deprecated version of python
2020-09-15 devel/libnxt: Uses deprecated version of python
2020-09-15 devel/libredblack: Uses deprecated version of python
2020-09-15 devel/llvm-cheri: Uses deprecated version of python
2020-09-15 devel/phpsh: Uses deprecated version of python
2020-09-15 devel/py-backports.shutil_which: Uses deprecated version of python
2020-09-15 devel/py-notify: Uses deprecated version of python
2020-09-15 devel/py-pybloomfiltermmap: Uses deprecated version of python
2020-09-15 devel/py-qserve: Uses deprecated version of python
2020-09-15 devel/py-subvertpy: Uses deprecated version of python
2020-09-15 devel/py_static_check: Uses deprecated version of python
2020-09-15 devel/pyst: Uses deprecated version of python
2020-09-15 devel/runsnakerun: Uses deprecated version of python
2020-09-15 devel/tailor: Uses deprecated version of python
2020-09-15 devel/uatraits: Uses deprecated version of python
2020-09-15 dns/nsec3walker: Uses deprecated version of python
2020-09-15 dns/sshfp: Uses deprecated version of python
2020-09-15 editors/medit: Uses deprecated version of python
2020-09-15 emulators/dynagen: Uses deprecated version of python
2020-09-15 emulators/wxmupen64plus: Uses deprecated version of python
2020-09-15 games/diameter: Uses deprecated version of python
2020-09-15 games/kiki: Uses deprecated version of python
2020-09-15 games/lightyears: Uses deprecated version of python
2020-09-15 games/outerspace: Uses deprecated version of python
2020-09-15 games/pachi-game-engine: Uses deprecated version of python
2020-09-15 graphics/caffe: Uses deprecated version of python
2020-09-15 graphics/cloudcompare: Uses deprecated version of python
2020-09-15 graphics/kudu: Uses deprecated version of python
2020-09-15 graphics/pecomato: Uses deprecated version of python
2020-09-15 graphics/py-editobj: Uses deprecated version of python
2020-09-15 graphics/py-mayavi: Uses deprecated version of python
2020-09-15 graphics/pymorph: Uses deprecated version of python
2020-09-15 graphics/tilecache: Uses deprecated version of python
2020-09-15 graphics/uniconvertor: Uses deprecated version of python
2020-09-15 japanese/mailman: Uses deprecated version of python
2020-09-15 java/eclipse-pydev: Uses deprecated version of python
2020-09-15 lang/cdent: Uses deprecated version of python
2020-09-15 lang/julia06: Uses deprecated version of python
2020-09-15 lang/julia07: Uses deprecated version of python
2020-09-15 lang/julia11: Uses deprecated version of python
2020-09-15 lang/tinypy: Uses deprecated version of python
2020-09-15 mail/cleanup-maildir: Uses deprecated version of python
2020-09-15 mail/courier-pythonfilter: Uses deprecated version of python
2020-09-15 mail/getmail: Uses deprecated version of python
2020-09-15 mail/muttils: Uses deprecated version of python
2020-09-15 mail/nohtml: Uses deprecated version of python
2020-09-15 mail/offlineimap: Uses deprecated version of python
2020-09-15 mail/openemm2015: Uses deprecated version of python
2020-09-15 math/blitz++: Uses deprecated version of python
2020-09-15 math/openfst: Uses deprecated version of python
2020-09-15 math/py-fpconst: Uses deprecated version of python
2020-09-15 misc/hb: Uses deprecated version of python
2020-09-15 misc/mtail: Uses deprecated version of python
2020-09-15 misc/wotsap: Uses deprecated version of python
2020-09-15 multimedia/freevo: Uses deprecated version of python
2020-09-15 multimedia/quodlibet: Uses deprecated version of python
2020-09-15 multimedia/tovid: Uses deprecated version of python
2020-09-15 net/ceph13: Uses deprecated version of python
2020-09-15 net/cloud-init-azure: Uses deprecated version of python
2020-09-15 net/exabgp: Uses deprecated version of python
2020-09-15 net/exaddos: Uses deprecated version of python
2020-09-15 net/fb: Uses deprecated version of python
2020-09-15 net/flent: Uses deprecated version of python
2020-09-15 net/flowgrep: Uses deprecated version of python
2020-09-15 net/googlecl: Uses deprecated version of python
2020-09-15 net/mininet: Uses deprecated version of python
2020-09-15 net/nfs-ganesha: Uses deprecated version of python
2020-09-15 net/opensips: Uses deprecated version of python
2020-09-15 net/py-python-ntlm: Uses deprecated version of python
2020-09-15 net/splatd: Uses deprecated version of python
2020-09-15 net-im/centerim-devel: Uses deprecated version of python
2020-09-15 net-im/fugu: Uses deprecated version of python
2020-09-15 net-im/proxy65: Uses deprecated version of python
2020-09-15 net-mgmt/crmsh: Uses deprecated version of python
2020-09-15 net-mgmt/librenms-agent: Uses deprecated version of python
2020-09-15 net-p2p/couchpotato: Uses deprecated version of python
2020-09-15 news/rawdog: Uses deprecated version of python
2020-09-15 ports-mgmt/portell: Uses deprecated version of python
2020-09-15 print/biblio-py: Uses deprecated version of python
2020-09-15 science/brian: Uses deprecated version of python
2020-09-15 science/paraview: Uses deprecated version of python
2020-09-15 security/arm: Uses deprecated version of python
2020-09-15 security/ismtp: Uses deprecated version of python
2020-09-15 security/py-halberd: Uses deprecated version of python
2020-09-15 security/switzerland: Uses deprecated version of python
2020-09-15 security/tsshbatch: Uses deprecated version of python
2020-09-15 shells/lshell: Uses deprecated version of python
2020-09-15 sysutils/abck: Uses deprecated version of python
2020-09-15 sysutils/condor: Uses deprecated version of python
2020-09-15 sysutils/farbot: Uses deprecated version of python
2020-09-15 sysutils/fusefs-wikipediafs: Uses deprecated version of python
2020-09-15 sysutils/heartbeat: Uses deprecated version of python
2020-09-15 sysutils/isomd5sum: Uses deprecated version of python
2020-09-15 sysutils/py-stdiff: Uses deprecated version of python
2020-09-15 sysutils/tren: Uses deprecated version of python
2020-09-15 textproc/doclifter: Uses deprecated version of python
2020-09-15 textproc/ibus-el: Uses deprecated version of python
2020-09-15 textproc/p5-WWW-Google-SiteMap: Deprecated upstream, see textproc/p5-Search-Sitemap
2020-09-15 textproc/plover: Uses deprecated version of python
2020-09-15 textproc/py-esmre: Uses deprecated version of python
2020-09-15 textproc/py-libxslt: Uses deprecated version of python
2020-09-15 textproc/py-pdfminer: Uses deprecated version of python
2020-09-15 textproc/translate-toolkit: Uses deprecated version of python
2020-09-15 www/bluefish: Uses deprecated version of python
2020-09-15 www/calendarserver: Uses deprecated version of python
2020-09-15 www/geeknote: Uses deprecated version of python
2020-09-15 www/go-appengine-sdk: Uses deprecated version of python
2020-09-15 www/google-appengine: Uses deprecated version of python
2020-09-15 www/libhpack: Uses deprecated version of python
2020-09-15 www/mkapachepw: Uses deprecated version of python
2020-09-15 www/mod_pagespeed: Uses deprecated version of python
2020-09-15 www/mod_python35: Uses deprecated version of python
2020-09-15 www/py-qp: Uses deprecated version of python
2020-09-15 www/py-url: Uses deprecated version of python
2020-09-15 www/pyblosxom: Uses deprecated version of python
2020-09-15 www/pyjamas: Uses deprecated version of python
2020-09-15 www/roundup: Uses deprecated version of python
2020-09-15 www/varnish-libvmod-awsrest: Uses deprecated version of python
2020-09-15 www/waccess: Uses deprecated version of python
2020-09-15 www/wadcomblog: Uses deprecated version of python
2020-09-15 www/webcheck: Uses deprecated version of python
2020-09-15 www/woof: Uses deprecated version of python
2020-09-15 x11-drivers/xf86-video-qxl: uses deprecated version of python
2020-09-15 x11-fm/twander: Uses deprecated version of python
2020-09-15 x11-wm/compizconfig-python: Uses deprecated version of python
2020-09-15 x11-wm/fvwm-crystal: Uses deprecated version of python
Notes
Notes:
svn path=/head/; revision=548980
Diffstat (limited to 'www/mod_python35/files/patch-mod_python35')
| -rw-r--r-- | www/mod_python35/files/patch-mod_python35 | 416 |
1 files changed, 0 insertions, 416 deletions
diff --git a/www/mod_python35/files/patch-mod_python35 b/www/mod_python35/files/patch-mod_python35 deleted file mode 100644 index afa3a6f61158..000000000000 --- a/www/mod_python35/files/patch-mod_python35 +++ /dev/null @@ -1,416 +0,0 @@ ---- 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 \ -- suspicious coverage htmlview distclean clean dist check serve \ -+ suspicious coverage htmlview clean dist check serve \ - autobuild-dev autobuild-stable - - help: -@@ -102,8 +102,6 @@ coverage: build - htmlview: html - $(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')" - --distclean: clean -- - clean: - -rm -rf build/* - -rm -rf tools/sphinx -@@ -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 - ******* - --.. _changes_from_3_4_1: -- --Changes from version 3.4.1 --========================== -- --New Features -------------- -- --* Support for Python 3.3 -- --Improvements -------------- -- --* Simpler, faster and up-to-date with latest Python code for creating/maintaining interpreter and thread state. --* A much faster WSGI implementation (start_response now implemented in C) -- - .. _changes_from_3_3_1: - - Changes from version 3.3.1 ---- 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 ---- 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; } --if test -z "$PyMAJVERSION"; then -- { { $as_echo "$as_me:$LINENO: error: Unable to get Python version - is your Python working?" >&5 --$as_echo "$as_me: error: Unable to get Python version - is your Python working?" >&2;} -- { (exit 1); exit 1; }; } --fi -+ - # 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 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-fr - LDFLAGS="${LDFLAGS1} ${LDFLAGS2}" - - if test "$PyMAJVERSION" -eq "3"; then -- PyLDVERSION=`$PYTHON_BIN -c 'from distutils import sysconfig; print(sysconfig.get_config_var("LDVERSION"))'` -- LDLIBS1="-lpython${PyLDVERSION}" -+ LDLIBS1="-lpython${PyMAJVERSION}" - else - LDLIBS1="-lpython${PyVERSION}" - fi ---- 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) --if test -z "$PyMAJVERSION"; then -- AC_MSG_ERROR([Unable to get Python version - is your Python working?]) --fi -+ - # 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 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-fr - LDFLAGS="${LDFLAGS1} ${LDFLAGS2}" - - if test "$PyMAJVERSION" -eq "3"; then -- PyLDVERSION=`$PYTHON_BIN -c ['from distutils import sysconfig; print(sysconfig.get_config_var("LDVERSION"))'`] -- LDLIBS1="-lpython${PyLDVERSION}" -+ LDLIBS1="-lpython${PyMAJVERSION}" - else - LDLIBS1="-lpython${PyVERSION}" - fi -@@ -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}'` -- Flex_MAJOR=`echo $FlexVERSION| awk -F . '{print $1}'` -- Flex_MINOR=`echo $FlexVERSION| awk -F . '{print $2}'` -- Flex_PATCH=`echo $FlexVERSION| awk -F . '{print $3}'` -+ Flex_MAJOR=`echo $FlexVERSION| awk -F. '{print $1}'` -+ Flex_MINOR=`echo $FlexVERSION| awk -F. '{print $2}'` -+ Flex_PATCH=`echo $FlexVERSION| awk -F. '{print $3}'` - - if test "$Flex_MAJOR" -eq "2" && test "$Flex_MINOR" -eq "5" && test "$Flex_PATCH" -ge "31"; then - AC_MSG_RESULT([$FlexVERSION. Good]) ---- 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` --GIT=`git describe --always` - --echo $MAJ.$MIN.$PCH-$GIT -+# if git exists in path -+if type git >/dev/null 2>&1; then -+ # and we are in a checkout -+ if git rev-parse 2>/dev/null; then -+ # but not on a tag (which means this is a release) -+ if test -z "`git log 'HEAD^!' --format=%d 2>/dev/null | grep 'tag: '`"; then -+ # append git revision hash to version -+ GIT="-`git describe --always`" -+ fi -+ fi -+fi -+ -+echo $MAJ.$MIN.$PCH$GIT ---- 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", -- "comment", "max_age", -+ "comment", "expires", "max_age", - # RFC 2965 - "commentURL", "discard", "port", - # Microsoft Extension ---- 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 - import platform --import io -+import StringIO - import mod_python - from mod_python import httpdconf - -@@ -64,7 +64,7 @@ def cmd_genconfig(): - if len(args) != 1: - parser.error("Must specify <src>") - -- exec(compile(open(args[0]).read(), args[0], 'exec')) -+ execfile(args[0]) - - def cmd_create(): - ---- 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 - --mod_python.so: $(SRCS) @SOLARIS_HACKS@ -+mod_python.so: $(SRCS) @SOLARIS_HACKS@ - @echo - @echo 'Building mod_python.so.' - @echo -- $(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: -- @MP_GIT_SHA=$$(git describe --always); \ -- echo > version.c ; \ -+ @echo > version.c ; \ - echo "/* THIS FILE IS AUTO-GENERATED BY Makefile */" >> version.c ; \ - echo "#include \"mp_version.h\"" >> version.c ; \ -- echo "const char * const mp_git_sha = \"$${MP_GIT_SHA}\";" >> version.c ; \ - echo "const int mp_version_major = MP_VERSION_MAJOR;" >> version.c ; \ - echo "const int mp_version_minor = MP_VERSION_MINOR;" >> version.c ; \ - echo "const int mp_version_patch = MP_VERSION_PATCH;" >> version.c ; \ -- echo "const char * const mp_version_string = MP_VERSION_STRING(MP_VERSION_MAJOR,MP_VERSION_MINOR,MP_VERSION_PATCH) \"-$${MP_GIT_SHA}\";" >> version.c ; \ -- echo "const char * const mp_version_component = \"mod_python/\" MP_VERSION_STRING(MP_VERSION_MAJOR,MP_VERSION_MINOR,MP_VERSION_PATCH) \"-$${MP_GIT_SHA}\";" >> version.c -- --# echo "const char * const mp_version_component = \"mod_python/\" #MP_VERSION_MAJOR \".\" #MP_VERSION_MINOR \".\" #MP_VERSION_PATCH \"-$${MP_GIT_SHA}\";" >> version.c -+ echo "const char * const mp_version_string = \"`../dist/version.sh`\";" >> version.c ; \ -+ echo "const char * const mp_version_component = \"mod_python/\" \"`../dist/version.sh`\";" >> version.c - - # this is a hack to help avoid a gcc/solaris problem --# python uses assert() which needs _eprintf(). See -+# python uses assert() which needs _eprintf(). See - # SOLARIS_HACKS above - _eprintf.o: - ar -x `gcc -print-libgcc-file-name` _eprintf.o ---- 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 */ --extern const char * const mp_git_sha; - extern const int mp_version_major; - extern const int mp_version_minor; - extern const int mp_version_patch; -@@ -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 */ \ -- str = (char *)PyUnicode_1BYTE_DATA(obj); \ -+ str = PyUnicode_1BYTE_DATA(obj); \ - } else { \ - PyObject *latin = PyUnicode_AsLatin1String(obj); \ - if (latin) { \ -@@ -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?) */ -- char *c = (char *)PyUnicode_1BYTE_DATA(ucode); -+ char *c = PyUnicode_1BYTE_DATA(ucode); - if (c[0] == 'b') -- result = PyBytes_FromStringAndSize((char *)PyUnicode_1BYTE_DATA(ucode)+1, PyUnicode_GET_LENGTH(ucode)-1); -+ result = PyBytes_FromStringAndSize(PyUnicode_1BYTE_DATA(ucode)+1, PyUnicode_GET_LENGTH(ucode)-1); - else -- result = PyBytes_FromStringAndSize((char *)PyUnicode_1BYTE_DATA(ucode), PyUnicode_GET_LENGTH(ucode)); -+ result = PyBytes_FromStringAndSize(PyUnicode_1BYTE_DATA(ucode), PyUnicode_GET_LENGTH(ucode)); - Py_DECREF(ucode); - return result; - } ---- 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 */ --extern const char * const mp_git_sha; - extern const int mp_version_major; - extern const int mp_version_minor; - extern const int mp_version_patch; -@@ -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 */ \ -- str = (char *)PyUnicode_1BYTE_DATA(obj); \ -+ str = PyUnicode_1BYTE_DATA(obj); \ - } else { \ - PyObject *latin = PyUnicode_AsLatin1String(obj); \ - if (latin) { \ -@@ -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?) */ -- char *c = (char *)PyUnicode_1BYTE_DATA(ucode); -+ char *c = PyUnicode_1BYTE_DATA(ucode); - if (c[0] == 'b') -- result = PyBytes_FromStringAndSize((char *)PyUnicode_1BYTE_DATA(ucode)+1, PyUnicode_GET_LENGTH(ucode)-1); -+ result = PyBytes_FromStringAndSize(PyUnicode_1BYTE_DATA(ucode)+1, PyUnicode_GET_LENGTH(ucode)-1); - else -- result = PyBytes_FromStringAndSize((char *)PyUnicode_1BYTE_DATA(ucode), PyUnicode_GET_LENGTH(ucode)); -+ result = PyBytes_FromStringAndSize(PyUnicode_1BYTE_DATA(ucode), PyUnicode_GET_LENGTH(ucode)); - Py_DECREF(ucode); - return result; - } ---- 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) ---- 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'.", -- (char *)Py_GetProgramFullPath()); -+ Py_GetProgramFullPath()); - ap_log_error(APLOG_MARK, APLOG_ERR, 0, s, - "python_init: Python path being used '%s'.", -- (char *)Py_GetPath()); -+ Py_GetPath()); - } - - /* Python version */ -@@ -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, -- so a fitler can spit out an error without causing infinite loop */ -+ so a filter can spit out an error without causing infinite loop */ - if (ctx->transparent) { - if (is_input) - return ap_get_brigade(f->next, bb, mode, block, readbytes); -@@ -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) { -+ if (val == Py_None) { -+ self->request_rec->args = 0; -+ return 0; -+ } - MP_ANYSTR_AS_STR(v, val, 1); - if (!v) { - Py_DECREF(val); /* MP_ANYSTR_AS_STR */ |
